|
LiteFX 0.5.1.2025
Computer Graphics Engine
|
Represents a ray-tracing Pipeline. More...
#include <rendering.hpp>
Inherits LiteFX::Rendering::IRayTracingPipeline, and LiteFX::Rendering::Pipeline< TPipelineLayout, TShaderProgram >.
Public Types | |
| using | base_type = Pipeline<TPipelineLayout, TShaderProgram> |
| using | descriptor_set_layout_type = base_type::pipeline_layout_type::descriptor_set_layout_type |
| using | descriptor_set_type = descriptor_set_layout_type::descriptor_set_type |
| using | descriptor_layout_type = descriptor_set_layout_type::descriptor_layout_type |
| using | buffer_type = descriptor_set_type::buffer_type |
| using | image_type = descriptor_set_type::image_type |
| using | sampler_type = descriptor_set_type::sampler_type |
| Public Types inherited from LiteFX::Rendering::Pipeline< TPipelineLayout, TShaderProgram > | |
| using | shader_program_type = TShaderProgram |
| using | pipeline_layout_type = TPipelineLayout |
Public Member Functions | |
| ~RayTracingPipeline () noexcept override=default | |
| virtual SharedPtr< buffer_type > | allocateShaderBindingTable (ShaderBindingTableOffsets &offsets, ShaderBindingGroup groups=ShaderBindingGroup::All) const =0 |
| Public Member Functions inherited from LiteFX::Rendering::IRayTracingPipeline | |
| ~IRayTracingPipeline () noexcept override=default | |
| virtual const ShaderRecordCollection & | shaderRecords () const noexcept=0 |
| Returns the shader record collection of the ray tracing pipeline. | |
| virtual UInt32 | maxRecursionDepth () const noexcept=0 |
| Returns the maximum number of ray bounces. | |
| virtual UInt32 | maxPayloadSize () const noexcept=0 |
| Returns the maximum size of a single ray payload. | |
| virtual UInt32 | maxAttributeSize () const noexcept=0 |
| Returns the maximum size of a single ray attribute. | |
| SharedPtr< IBuffer > | allocateShaderBindingTable (ShaderBindingTableOffsets &offsets, ShaderBindingGroup groups=ShaderBindingGroup::All) const |
| Allocates a buffer that contains the shader binding table containing the shader groups specified by the groups parameter. | |
| Public Member Functions inherited from LiteFX::Rendering::IPipeline | |
| ~IPipeline () noexcept override=default | |
| SharedPtr< const IShaderProgram > | program () const noexcept |
| Returns the shader program used by the pipeline. | |
| SharedPtr< const IPipelineLayout > | layout () const noexcept |
| Returns the layout of the render pipeline. | |
| Public Member Functions inherited from LiteFX::Rendering::IStateResource | |
| virtual | ~IStateResource () noexcept=default |
| Releases the state resource instance. | |
| Public Member Functions inherited from LiteFX::Rendering::Pipeline< TPipelineLayout, TShaderProgram > | |
| ~Pipeline () noexcept override=default | |
| virtual SharedPtr< const shader_program_type > | program () const noexcept=0 |
| virtual SharedPtr< const pipeline_layout_type > | layout () const noexcept=0 |
| Public Member Functions inherited from LiteFX::Rendering::StateResource | |
| ~StateResource () noexcept override | |
| Releases the state resource instance. | |
| const String & | name () const noexcept override |
Returns the name of the resource.
| |
Protected Member Functions | |
| RayTracingPipeline () noexcept=default | |
| RayTracingPipeline (RayTracingPipeline &&) noexcept=default | |
| RayTracingPipeline (const RayTracingPipeline &)=default | |
| RayTracingPipeline & | operator= (RayTracingPipeline &&) noexcept=default |
| RayTracingPipeline & | operator= (const RayTracingPipeline &)=default |
| Protected Member Functions inherited from LiteFX::Rendering::IRayTracingPipeline | |
| IRayTracingPipeline () noexcept=default | |
| IRayTracingPipeline (IRayTracingPipeline &&) noexcept=default | |
| IRayTracingPipeline (const IRayTracingPipeline &)=delete | |
| IRayTracingPipeline & | operator= (IRayTracingPipeline &&) noexcept=default |
| IRayTracingPipeline & | operator= (const IRayTracingPipeline &)=delete |
| Protected Member Functions inherited from LiteFX::Rendering::IPipeline | |
| IPipeline () noexcept=default | |
| IPipeline (const IPipeline &)=delete | |
| IPipeline (IPipeline &&) noexcept=default | |
| IPipeline & | operator= (const IPipeline &)=delete |
| IPipeline & | operator= (IPipeline &&) noexcept=default |
| Protected Member Functions inherited from LiteFX::Rendering::IStateResource | |
| IStateResource () noexcept=default | |
| IStateResource (const IStateResource &)=delete | |
| IStateResource (IStateResource &&) noexcept=default | |
| IStateResource & | operator= (const IStateResource &)=delete |
| IStateResource & | operator= (IStateResource &&) noexcept=default |
| Protected Member Functions inherited from LiteFX::Rendering::Pipeline< TPipelineLayout, TShaderProgram > | |
| Pipeline () noexcept=default | |
| Pipeline (const Pipeline &)=default | |
| Pipeline (Pipeline &&) noexcept=default | |
| Pipeline & | operator= (const Pipeline &)=default |
| Pipeline & | operator= (Pipeline &&) noexcept=default |
| Protected Member Functions inherited from LiteFX::Rendering::StateResource | |
| StateResource () | |
| Initializes a new state resource instance with a default name. | |
| StateResource (StringView name) | |
| Initializes a new state resource instance. | |
| StateResource (StateResource &&) noexcept | |
| StateResource & | operator= (StateResource &&) noexcept |
| StateResource (const StateResource &)=delete | |
| StateResource & | operator= (const StateResource &)=delete |
| String & | name () noexcept |
Represents a ray-tracing Pipeline.
| TPipelineLayout | The type of the render pipeline layout. Must implement PipelineLayout. |
| TShaderProgram | The type of the shader program. Must implement ShaderProgram. |
| using LiteFX::Rendering::RayTracingPipeline< TPipelineLayout, TShaderProgram >::base_type = Pipeline<TPipelineLayout, TShaderProgram> |
| using LiteFX::Rendering::RayTracingPipeline< TPipelineLayout, TShaderProgram >::buffer_type = descriptor_set_type::buffer_type |
| using LiteFX::Rendering::RayTracingPipeline< TPipelineLayout, TShaderProgram >::descriptor_layout_type = descriptor_set_layout_type::descriptor_layout_type |
| using LiteFX::Rendering::RayTracingPipeline< TPipelineLayout, TShaderProgram >::descriptor_set_layout_type = base_type::pipeline_layout_type::descriptor_set_layout_type |
| using LiteFX::Rendering::RayTracingPipeline< TPipelineLayout, TShaderProgram >::descriptor_set_type = descriptor_set_layout_type::descriptor_set_type |
| using LiteFX::Rendering::RayTracingPipeline< TPipelineLayout, TShaderProgram >::image_type = descriptor_set_type::image_type |
| using LiteFX::Rendering::RayTracingPipeline< TPipelineLayout, TShaderProgram >::sampler_type = descriptor_set_type::sampler_type |
|
protecteddefaultnoexcept |
|
protecteddefaultnoexcept |
|
protecteddefault |
|
overridedefaultnoexcept |
|
pure virtual |
|
protecteddefault |
|
protecteddefaultnoexcept |