![]() |
Lysa
0.0
Lysa 3D Engine
|
Render pass for Screen Space Ambient Occlusion (SSAO)
Inheritance diagram for SSAOPass:Public Member Functions | |
| SSAOPass (const RendererConfiguration &config, const GBufferPass &gBufferPass, bool withStencil) | |
| void | render (vireo::CommandList &commandList, const SceneFrameData &scene, const std::shared_ptr< vireo::RenderTarget > &depthAttachment, uint32 frameIndex) |
| void | resize (const vireo::Extent &extent, const std::shared_ptr< vireo::CommandList > &commandList) override |
| auto | getColorAttachment (const uint32 frameIndex) const |
| auto | getColorAttachmentFormat () const |
Public Member Functions inherited from Renderpass | |
| Renderpass (const RendererConfiguration &config, const std::string &name) | |
| virtual void | update (uint32 frameIndex) |
| virtual | ~Renderpass () = default |
| Renderpass (Renderpass &) = delete | |
| Renderpass & | operator= (Renderpass &) = delete |
Additional Inherited Members | |
Static Public Member Functions inherited from Renderpass | |
| static void | destroyShaderModules () |
Protected Member Functions inherited from Renderpass | |
| 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 inherited from Renderpass | |
| const std::string | name |
| const RendererConfiguration & | config |
Static Protected Attributes inherited from Renderpass | |
| static std::mutex | shaderModulesMutex |
| static std::unordered_map< std::string, std::shared_ptr< vireo::ShaderModule > > | shaderModules |
| SSAOPass | ( | const RendererConfiguration & | config, |
| const GBufferPass & | gBufferPass, | ||
| bool | withStencil | ||
| ) |
Constructs an SSAOPass
| config | The renderer configuration |
| gBufferPass | Reference to the G-buffer pass providing input textures |
| withStencil | Whether to enable stencil testing |
|
inline |
Gets the SSAO color buffer for a specific frame
| frameIndex | Index of the current frame |
|
inline |
Gets the image format used for the SSAO buffer
| void render | ( | vireo::CommandList & | commandList, |
| const SceneFrameData & | scene, | ||
| const std::shared_ptr< vireo::RenderTarget > & | depthAttachment, | ||
| uint32 | frameIndex | ||
| ) |
Renders the SSAO pass
| commandList | The command list to record rendering commands into |
| scene | The scene frame data |
| depthAttachment | The target depth attachment |
| frameIndex | Index of the current frame |
|
overridevirtual |
Recreate pass resources after a resize (default: no-op).
Reimplemented from lysa::Renderpass::resize()