D3D12_RAYTRACING_PIPELINE_CONFIG1 structure (d3d12.h)

A state subobject that represents a raytracing pipeline configuration, with flags.

D3D12_RAYTRACING_PIPELINE_CONFIG1 requires Tier 1.1 raytracing support (see D3D12_RAYTRACING_TIER).

Syntax

typedef struct D3D12_RAYTRACING_PIPELINE_CONFIG1 {
  UINT                            MaxTraceRecursionDepth;
  D3D12_RAYTRACING_PIPELINE_FLAGS Flags;
} D3D12_RAYTRACING_PIPELINE_CONFIG1;

Members

MaxTraceRecursionDepth

Type: UINT

Limit on ray recursion for the raytracing pipeline. It must be in the range of 0 to 31. Below the maximum recursion depth, shader invocations such as closest hit or miss shaders can call TraceRay any number of times. At the maximum recursion depth, TraceRay calls result in the device going into removed state.

Flags

Type: D3D12_RAYTRACING_PIPELINE_FLAGS

Configuration flags for the raytracing pipeline.

Remarks

A raytracing pipeline needs one raytracing pipeline configuration. If multiple pipeline configurations are present, then they must all match in content. But there's no benefit to such duplication. For example, defining it once per collection doesn't help drivers do early shader compilation before a raytracing pipeline is created. This is unlike D3D12_RAYTRACING_SHADER_CONFIG, which does benefit from duplication per collection.

Requirements

Requirement Value
Minimum supported client Windows 10 Build 20348
Minimum supported server Windows 10 Build 20348
Header d3d12.h