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::RayTracingShaderTableDescriptor Class Reference

#include <RayTracingShaderTable.h>

Public Member Functions

const RHI::Ptr< RayTracingPipelineState > & GetPipelineState () const
 
const RayTracingShaderTableRecordList & GetRayGenerationRecord () const
 
RayTracingShaderTableRecordList & GetRayGenerationRecord ()
 
const RayTracingShaderTableRecordList & GetMissRecords () const
 
RayTracingShaderTableRecordList & GetMissRecords ()
 
const RayTracingShaderTableRecordList & GetCallableRecords () const
 
RayTracingShaderTableRecordList & GetCallableRecords ()
 
const RayTracingShaderTableRecordList & GetHitGroupRecords () const
 
RayTracingShaderTableRecordList & GetHitGroupRecords ()
 
void RemoveHitGroupRecords (uint32_t key)
 
RayTracingShaderTableDescriptorBuild (const AZ::Name &name, const RHI::Ptr< RayTracingPipelineState > &rayTracingPipelineState)
 
RayTracingShaderTableDescriptorRayGenerationRecord (const AZ::Name &name)
 
RayTracingShaderTableDescriptorMissRecord (const AZ::Name &name)
 
RayTracingShaderTableDescriptorCallableRecord (const AZ::Name &name)
 
RayTracingShaderTableDescriptorHitGroupRecord (const AZ::Name &name, uint32_t key=RayTracingShaderTableRecord::InvalidKey)
 
RayTracingShaderTableDescriptorShaderResourceGroup (const RHI::ShaderResourceGroup *shaderResourceGroup)
 

Detailed Description

RayTracingShaderTableDescriptor

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

RHI::RayTracingShaderTableDescriptor descriptor; descriptor.Build(AZ::Name("RayTracingExampleShaderTable"), m_rayTracingPipelineState) ->RayGenerationRecord(AZ::Name("RayGenerationShader")) ->MissRecord(AZ::Name("MissShader")) ->ShaderResourceGroup(missSrg) ->HitGroupRecord(AZ::Name("HitGroup1")) ->ShaderResourceGroup(hitGroupSrg1) ->HitGroupRecord(AZ::Name("HitGroup2")) ->ShaderResourceGroup(hitGroupSrg2) ;


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