Open 3D Engine Atom Gem API Reference 23.10.0
O3DE is an open-source, fully-featured, high-fidelity, modular 3D engine for building games and simulations, available to every industry.
AZ::RHI::RayTracingPipelineStateDescriptor Class Referencefinal

#include <RayTracingPipelineState.h>

Public Member Functions

const RayTracingConfigurationGetConfiguration () const
 
RayTracingConfigurationGetConfiguration ()
 
const RHI::PipelineStateGetPipelineState () const
 
const RayTracingShaderLibraryVector & GetShaderLibraries () const
 
RayTracingShaderLibraryVector & GetShaderLibraries ()
 
const RayTracingHitGroupVector & GetHitGroups () const
 
RayTracingHitGroupVector & GetHitGroups ()
 
RayTracingPipelineStateDescriptorBuild ()
 
RayTracingPipelineStateDescriptorMaxPayloadSize (uint32_t maxPayloadSize)
 
RayTracingPipelineStateDescriptorMaxAttributeSize (uint32_t maxAttributeSize)
 
RayTracingPipelineStateDescriptorMaxRecursionDepth (uint32_t maxRecursionDepth)
 
RayTracingPipelineStateDescriptorPipelineState (const RHI::PipelineState *pipelineState)
 
RayTracingPipelineStateDescriptorShaderLibrary (RHI::PipelineStateDescriptorForRayTracing &descriptor)
 
RayTracingPipelineStateDescriptorRayGenerationShaderName (const AZ::Name &name)
 
RayTracingPipelineStateDescriptorMissShaderName (const AZ::Name &name)
 
RayTracingPipelineStateDescriptorCallableShaderName (const AZ::Name &callableShaderName)
 
RayTracingPipelineStateDescriptorClosestHitShaderName (const AZ::Name &closestHitShaderName)
 
RayTracingPipelineStateDescriptorAnyHitShaderName (const AZ::Name &anyHitShaderName)
 
RayTracingPipelineStateDescriptorHitGroup (const AZ::Name &name)
 

Detailed Description

RayTracingPipelineStateDescriptor

The Build() operation in the descriptor allows the pipeline state to be initialized using the following pattern:

RHI::RayTracingPipelineStateDescriptor descriptor; descriptor.Build() ->ShaderLibrary(shaderDescriptor) ->RayGenerationShaderName(AZ::Name("RayGenerationShader")) ->ShaderLibrary(missShaderDescriptor) ->MissShaderName(AZ::Name("MissShader")) ->ShaderLibrary(closestHitShader1Descriptor) ->ClosestHitShaderName(AZ::Name("ClosestHitShader1")) ->ShaderLibrary(closestHitShader2Descriptor) ->ClosestHitShaderName(AZ::Name("ClosestHitShader2")) ->HitGroup(AZ::Name("HitGroup1")) ->ClosestHitShaderName(AZ::Name("ClosestHitShader1")) ->HitGroup(AZ::Name("HitGroup2")) ->ClosestHitShaderName(AZ::Name("ClosestHitShader2")) ;


The documentation for this class was generated from the following file: