Diligent Engine
 
Loading...
Searching...
No Matches
Diligent::RayTracingPipelineDesc Struct Reference

This structure describes the ray tracing pipeline state and is part of the RayTracingPipelineStateCreateInfo structure. More...

#include <PipelineState.h>

Public Member Functions

constexpr bool operator== (const RayTracingPipelineDesc &RHS) const
 Comparison operator tests if two structures are equivalent.
 

Public Attributes

Uint16 ShaderRecordSize = 0
 Size of the additional data passed to the shader.
 
Uint8 MaxRecursionDepth = 0
 Number of recursive calls of TraceRay() in HLSL or traceRayEXT() in GLSL.
 

Detailed Description

This structure describes the ray tracing pipeline state and is part of the RayTracingPipelineStateCreateInfo structure.

Member Data Documentation

◆ MaxRecursionDepth

Uint8 Diligent::RayTracingPipelineDesc::MaxRecursionDepth = 0

Number of recursive calls of TraceRay() in HLSL or traceRayEXT() in GLSL.

Shaders directly invoked from the API always have a recursion depth of 0; each shader executed by the trace ray instruction has a recursion depth one higher than the recursion depth of the shader which invoked it. Applications must not invoke a shader with a recursion depth greater than the value of MaxRecursionDepth. See DeviceProperties::MaxRayTracingRecursionDepth.

◆ ShaderRecordSize

Uint16 Diligent::RayTracingPipelineDesc::ShaderRecordSize = 0

Size of the additional data passed to the shader.

Shader record size plus shader group size (32 bytes) must be aligned to 32 bytes. Shader record size plus shader group size (32 bytes) must not exceed 4096 bytes.