Forward+ geometry pass; the primary shading stage of the Illumine pipeline.
More...
#include <GeometryPass.h>
Forward+ geometry pass; the primary shading stage of the Illumine pipeline.
Renders all opaque meshes. The HDR colour output is consumed by SkyboxPass and then ToneMapPass.
All shared UBOs are injected via the Dependencies struct at Init time; their lifetimes are guaranteed by SceneRenderer to exceed this pass.
◆ Execute()
Frustum-culls and renders all mesh submissions with PBR shading.
- Parameters
-
| meshes | Static mesh submissions gathered by the scene this frame. |
| settings | Shader knobs to upload before drawing. |
| frustum | Camera frustum used to cull out-of-view meshes. |
◆ GetFramebuffer()
Returns the HDR colour framebuffer written by this pass.
◆ GetPass()
Returns the render pass object (consumed by SkyboxPass as a subpass target).
◆ Init()
Allocates the HDR framebuffer, pipeline, and settings UBOs.
- Parameters
-
| width | Render target width in pixels. |
| height | Render target height in pixels. |
| deps | Shared GPU resource references. |
| settings | Initial shader settings to upload. |
◆ RecreatePass()
| void Raven::GeometryPass::RecreatePass |
( |
u32 | tileX, |
|
|
u32 | tileY, |
|
|
Ref< Image2D > | shadowMap ) |
|
inline |
Updates the tile info UBO and rebinds the shadow map after a resolution change.
Called by SceneRenderer when LightCullPass or ShadowPass signal that dependent resources need to be rebuilt.
- Note
- Post-v0.1 this should be generalised into a full pass recreation path.
- Parameters
-
| tileX | New tile count along X. |
| tileY | New tile count along Y. |
| shadowMap | New shadow depth map to bind. |
◆ Shutdown()
| void Raven::GeometryPass::Shutdown |
( |
| ) |
|
Releases all GPU resources owned by this pass.
◆ UpdateInput()
template<typename... Args>
| void Raven::GeometryPass::UpdateInput |
( |
Args &&... | args | ) |
|
|
inline |
Updates a named input binding and rebakes the render pass descriptor set.
- Template Parameters
-
The documentation for this class was generated from the following files: