![]() |
Lysa
0.0
Lysa 3D Engine
|
Base class for a single stage in the renderer frame graph.
Inheritance diagram for Renderpass:Public Member Functions | |
| Renderpass (const RendererConfiguration &config, const std::string &name) | |
| virtual void | resize (const vireo::Extent &extent, const std::shared_ptr< vireo::CommandList > &commandList) |
| virtual void | update (uint32 frameIndex) |
| virtual | ~Renderpass () = default |
| Renderpass (Renderpass &) = delete | |
| Renderpass & | operator= (Renderpass &) = delete |
Static Public Member Functions | |
| static void | destroyShaderModules () |
Protected Member Functions | |
| std::shared_ptr< vireo::ShaderModule > | loadShader (const std::string &shaderName) const |
| void | init (vireo::GraphicPipelineConfiguration &pipelineConfig, vireo::RenderingConfiguration &renderingConfig, const std::shared_ptr< vireo::DescriptorLayout > &descriptorLayout, bool withStencil) |
| void | init (vireo::GraphicPipelineConfiguration &pipelineConfig, vireo::RenderingConfiguration &renderingConfig, bool withStencil) const |
| void | initRendering (vireo::CommandList &commandList, const std::shared_ptr< vireo::Image > &image, const std::shared_ptr< vireo::GraphicPipeline > &pipeline, const std::shared_ptr< vireo::DescriptorSet > &sceneDescriptorSet, const std::shared_ptr< vireo::DescriptorSet > &descriptorSet) |
Protected Attributes | |
| const std::string | name |
| const RendererConfiguration & | config |
Static Protected Attributes | |
| static std::mutex | shaderModulesMutex |
| static std::unordered_map< std::string, std::shared_ptr< vireo::ShaderModule > > | shaderModules |
| Renderpass | ( | const RendererConfiguration & | config, |
| const std::string & | name | ||
| ) |
Constructs a render pass with a shared rendering configuration and name.
| config | Rendering configuration (frame buffering, formats). |
| name | Human-readable name for debugging tools/logs. |
|
virtualdefault |
|
delete |
|
inlinestatic |
|
protected |
|
protected |
|
protected |
|
protected |
Utility to load a shader module by name (backend-agnostic).
|
delete |
|
inlinevirtual |
Recreate pass resources after a resize (default: no-op).
Reimplemented in lysa::PostProcessing::resize(), lysa::DepthPrepass::resize(), lysa::ForwardColorPass::resize(), lysa::GBufferPass::resize(), lysa::LightingPass::resize(), lysa::TAAPass::resize(), lysa::SSAOPass::resize(), lysa::SSRPass::resize(), lysa::SMAAPass::resize(), lysa::TransparencyPass::resize()
|
inlinevirtual |
Update any per-frame state (default: no-op).
Reimplemented in lysa::PostProcessing::update(), lysa::ShadowMapPass::update(), lysa::TAAPass::update(), lysa::BloomPass::update()
|
protected |
Shared rendering configuration.
|
protected |
Debug/name label for the pass.
|
staticprotected |
|
staticprotected |