![]() |
Lysa
0.0
Lysa 3D Engine
|
Render pass for Ground Truth Ambient Occlusion (GTAO).
Inheritance diagram for GTAOPass:Public Member Functions | |
| GTAOPass (const RendererConfiguration &config, const GBufferPass &gBufferPass) | |
| void | render (const std::shared_ptr< vireo::CommandList > &commandList, const SceneFrameData &scene, const std::shared_ptr< vireo::Image > &depthAttachment, uint32 frameIndex) |
| void | resize (const vireo::Extent &extent, const std::shared_ptr< vireo::CommandList > &commandList) override |
| vireo::ImageFormat | getColorAttachmentFormat () const override |
Public Member Functions inherited from PostProcessingCompute | |
| PostProcessingCompute (const RendererConfiguration &config, vireo::ImageFormat outputFormat, const std::string &compShaderName, void *data=nullptr, uint32 dataSize=0, const std::string &name="") | |
| void | update (uint32 frameIndex) override |
| virtual void | render (const std::shared_ptr< vireo::CommandList > &commandList, const std::shared_ptr< vireo::Image > &colorAttachment, uint32 frameIndex) |
| virtual void | render (const std::shared_ptr< vireo::CommandList > &commandList, const std::shared_ptr< vireo::Image > &colorAttachment, const std::shared_ptr< vireo::Image > &depthAttachment, uint32 frameIndex) |
| std::shared_ptr< vireo::Image > | getColorAttachment (const uint32 frameIndex) const |
| std::shared_ptr< vireo::RenderTarget > | getColorRenderTarget (const uint32 frameIndex) |
| const auto & | getCompShaderName () const |
Public Member Functions inherited from Renderpass | |
| Renderpass (const RendererConfiguration &config, const std::string &name) | |
| virtual | ~Renderpass () = default |
| Renderpass (Renderpass &) = delete | |
| Renderpass & | operator= (Renderpass &) = delete |
Additional Inherited Members | |
Static Public Member Functions inherited from Renderpass | |
| static void | destroyShaderModules () |
Static Public Attributes inherited from PostProcessingCompute | |
| static constexpr vireo::DescriptorIndex | BINDING_PARAMS {0} |
| static constexpr vireo::DescriptorIndex | BINDING_DATA {1} |
| static constexpr vireo::DescriptorIndex | BINDING_OUTPUT {2} |
| static constexpr vireo::DescriptorIndex | BINDING_TEXTURES {3} |
| static constexpr int | INPUT_BUFFER {0} |
| static constexpr int | DEPTH_BUFFER {1} |
| static constexpr int | BLOOM_BUFFER {2} |
| static constexpr int | OPT1_BUFFER {3} |
| static constexpr int | OPT2_BUFFER {4} |
| static constexpr int | TEXTURES_COUNT {OPT2_BUFFER + 1} |
| static constexpr uint32 | TILE_SIZE {16} |
Protected Member Functions inherited from PostProcessingCompute | |
| virtual void | render (const std::shared_ptr< vireo::CommandList > &commandList, const std::shared_ptr< vireo::Image > &colorAttachment, const std::shared_ptr< vireo::Image > &depthAttachment, const std::shared_ptr< vireo::Image > &bloomColorAttachment, uint32 frameIndex) |
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 | initForScene (vireo::GraphicPipelineConfiguration &pipelineConfig, vireo::RenderingConfiguration &renderingConfig, bool withStencil) const |
| void | initRendering (const std::shared_ptr< vireo::CommandList > &commandList, const std::shared_ptr< vireo::GraphicPipeline > &pipeline, const std::shared_ptr< vireo::DescriptorSet > &sceneDescriptorSet, const std::shared_ptr< vireo::DescriptorSet > &descriptorSet) |
| void | initCompute (const std::shared_ptr< vireo::CommandList > &commandList, const std::shared_ptr< vireo::ComputePipeline > &pipeline, const std::shared_ptr< vireo::DescriptorSet > &sceneDescriptorSet, const std::shared_ptr< vireo::DescriptorSet > &descriptorSet) |
Protected Attributes inherited from PostProcessingCompute | |
| const vireo::ImageFormat | outputFormat |
| const std::string | compShaderName |
| uint8 | dummyData {0} |
| void * | data {nullptr} |
| std::vector< FrameData > | framesData |
| std::vector< std::shared_ptr< vireo::Image > > | textures |
| std::shared_ptr< vireo::DescriptorLayout > | descriptorLayout |
| std::shared_ptr< vireo::Pipeline > | pipeline |
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 |
| GTAOPass | ( | const RendererConfiguration & | config, |
| const GBufferPass & | gBufferPass | ||
| ) |
Constructs a GTAOPass.
| config | The renderer configuration. |
| gBufferPass | Reference to the G-buffer pass providing input textures. |
|
inlineoverridevirtual |
Returns the image format of the AO buffer (single R8 channel).
Reimplemented from lysa::PostProcessingCompute::getColorAttachmentFormat()
|
virtual |
Renders the GTAO pass.
| commandList | Command list to record rendering commands into. |
| scene | Scene frame data (camera matrices, etc.). |
| depthAttachment | Depth attachment of the current frame. |
| frameIndex | Index of the current frame. |
Reimplemented from lysa::PostProcessingCompute::render()
|
overridevirtual |
Recreates the output image to match the new extent.
| extent | New viewport dimensions. |
Reimplemented from lysa::PostProcessingCompute::resize()