GeometryPass
GeometryPass is the primary rasterization pass. It iterates all mesh entities, resolves their materials and shaders, and issues draw calls into the scene_color framebuffer. It reads the shadow map produced by ShadowPass to evaluate shadow visibility.
Render Graph Role
| Attribute | Value |
|---|---|
| Group | Geometry |
| Reads | shadow_map |
| Writes | scene_color |
| Cullable | Yes |
What It Draws
GeometryPass collects entities that have all three of:
MeshComponent- model handleResourceComponent- shader handleMaterialComponent- surface parameters
It skips entities with any component missing or with a resource in a non-Ready load state.
Per-Draw Uniforms
For each entity, the pass uploads:
| Uniform | Source |
|---|---|
u_model | TransformComponent world matrix |
u_view | Active camera view matrix |
u_projection | Active camera projection matrix |
u_light_space_matrix | Logical buffer from ShadowPass |
u_shadow_map | shadow_map depth attachment |
| Material uniforms | MaterialComponent properties and texture slots |
Ordering Relative to SkyboxPass
GeometryPass and SkyboxPass both write to scene_color. The render graph infers no dependency between them - their relative order is fixed by declaration order in the render graph builder (geometry before skybox), ensuring the skybox is drawn after opaque geometry and depth-tested correctly.