Diligent::RayTracingPipelineStateCreateInfo struct

Ray tracing pipeline state description.

Contents

Base classes

struct PipelineStateCreateInfo
Pipeline state creation attributes.

Public variables

RayTracingPipelineDesc RayTracingPipeline
Ray tracing pipeline description.
const RayTracingGeneralShaderGroup* pGeneralShaders
A pointer to an array of GeneralShaderCount RayTracingGeneralShaderGroup structures that contain shader group description.
Uint32 GeneralShaderCount
The number of general shader groups.
const RayTracingTriangleHitShaderGroup* pTriangleHitShaders
A pointer to an array of TriangleHitShaderCount RayTracingTriangleHitShaderGroup structures that contain shader group description. Can be null.
Uint32 TriangleHitShaderCount
The number of triangle hit shader groups.
const RayTracingProceduralHitShaderGroup* pProceduralHitShaders
A pointer to an array of ProceduralHitShaderCount RayTracingProceduralHitShaderGroup structures that contain shader group description. Can be null.
Uint32 ProceduralHitShaderCount
The number of procedural shader groups.
const char* pShaderRecordName
Direct3D12 only: the name of the constant buffer that will be used by the local root signature. Ignored if RayTracingPipelineDesc::ShaderRecordSize is zero. In Vulkan backend in HLSL add [[vk::shader_record_ext]] attribute to the constant buffer, in GLSL add shaderRecord layout to buffer.
Uint32 MaxAttributeSize
Direct3D12 only: the maximum hit shader attribute size in bytes. If zero then maximum allowed size will be used.
Uint32 MaxPayloadSize
Direct3D12 only: the maximum payload size in bytes. If zero then maximum allowed size will be used.