I was wondering how the 3D rendering process works in Godot, so I went digging through the engine architecture docs.
-
I was wondering how the 3D rendering process works in Godot, so I went digging through the engine architecture docs. The "core" material shader for Vulkan is ~3000 lines of pretty dense GLSL. There are several other builtin shaders too, and I haven't yet found a description of the pipeline that stitches all these together.
Modern 3D graphics: very cursed
-
In fairness this isn't bloat or anything, it's just a very featureful shader that handles a whole bunch of complicated stuff like realistic lighting and volumetric whatnots and all that. It's just one of those things where I just don't think about how much stuff goes into rendering a frame, and how additive it tends to be: basic stuff I remember from 20 years ago is still there, it's now just step 1 of 73 or something.
-
Skimming these shaders also means you come across really tantalizing "I'm sure this makes sense if I go figure it out, but, wat" things. For instance, "#ifdef USE_17_SAMPLES" raises many questions for me.
-
> frustum-aligned voxel (froxel)
Engine documentation that sounds like shitposts