以下是 D3D12_RAYTRACING_PIPELINE_CONFIG1 结构的定义:
typedef struct D3D12_RAYTRACING_PIPELINE_CONFIG1 {
UINT MaxTraceRecursionDepth;
D3D12_RAYTRACING_PIPELINE_FLAG PipelineFlags;
UINT32 MaxAttributeSizeInBytes;
UINT32 MaxPayloadSizeInBytes;
} D3D12_RAYTRACING_PIPELINE_CONFIG1;
结构体成员的含义如下:
- MaxTraceRecursionDepth: 指定光线追踪的最大递归深度。这表示光线可以被递归地追踪的次数。
- PipelineFlags: 一个位掩码,用于指定射线追踪管线的标志。可以是以下值之一或它们的组合:
- D3D12_RAYTRACING_PIPELINE_FLAG_NONE: 无标志。
- D3D12_RAYTRACING_PIPELINE_FLAG_SKIP_TRIANGLES: 跳过三角形处理,用于仅处理程序化几何体的场景。
- MaxAttributeSizeInBytes: 指定程序化几何体的属性的最大大小(以字节为单位)。
- MaxPayloadSizeInBytes: 指定着色器程序输出的负载(payload)的最大大小(以字节为单位)。
这个结构体的引入增加了一些新的配置选项,使得开发者能够更好地控制射线追踪管线的行为。在创建射线追踪管线时,可以通过将其作为参数传递给 ID3D12Device5 接口的 CreateStateObject 方法,来配置这些参数。
转载请注明出处:http://www.pingtaimeng.com/article/detail/25973/Win32 API/D3d12.h/D3D12_RAYTRACING_PIPELINE_CONFIG1