D3D12DDIARG_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_0054结构 (d3d12umddi.h)
要生成的加速结构的说明。
语法
typedef struct D3D12DDIARG_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_0054 {
D3D12DDI_GPU_VIRTUAL_ADDRESS DestAccelerationStructureData;
D3D12DDI_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS_0054 Inputs;
D3D12DDI_GPU_VIRTUAL_ADDRESS SourceAccelerationStructureData;
D3D12DDI_GPU_VIRTUAL_ADDRESS ScratchAccelerationStructureData;
UINT NumPostbuildInfoDescs;
const D3D12DDI_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC_0054 *pPostbuildInfoDescs;
} D3D12DDIARG_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_0054;
成员
DestAccelerationStructureData
从 BuildRaytracingAccelerationStructure存储生成的加速结构的位置。 GetRaytracingAccelerationStructurePrebuildInfo 在此处报告结果所需的内存量,给定一组加速结构生成参数。
起始地址必须与 256 个字节对齐。
指向的内存必须处于 资源状态 D3D12DDI_RESOURCE_STATE_RAYTRACING_ACCELERATION_STRUCTURE。
Inputs
表示光线跟踪加速生成输入的 D3D12DDI_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS_0054 结构。
SourceAccelerationStructureData
如果请求加速结构更新(如增量生成)时现有加速结构的地址,请在 D3D12DDI_RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAGS 枚举中设置D3D12DDI_RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAG_PERFORM_UPDATE。 否则,此地址必须为 NULL。
如果此地址与 DestAccelerationStructureData相同,则会就地执行更新。 源和目标内存的任何其他重叠形式都无效,并产生未定义的行为。
地址必须与 256 个字节对齐。
指向的内存必须处于 资源状态 D3D12DDI_RESOURCE_STATE_RAYTRACING_ACCELERATION_STRUCTURE。
ScratchAccelerationStructureData
生成将存储临时数据的位置。 GetRaytracingAccelerationStructurePrebuildInfo 报告实现需要一组给定加速结构生成参数所需的暂存内存量。
起始地址必须与 256 个字节对齐。 在 GPU 时间线上生成此内存的内容无关紧要,不会保留。 在 GPU 时间线上完成生成后,内存会留下生成完成的任何未定义内容。
指向的内存必须处于 资源状态 D3D12DDI_RESOURCE_STATE_UNORDERED_ACCESS。
NumPostbuildInfoDescs
连续 D3D12DDI_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC_0054 结构的数目。
pPostbuildInfoDescs
指向指向D3D12DDI_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC_0054结构的 NumPostbuildInfoDescs 指针的数组。
要求
要求 | 价值 |
---|---|
最低支持的客户端 | Windows 10 版本 1809 |
标头 | d3d12umddi.h |