// d3d12umddi.h
PFND3D12DDI_GET_RAYTRACING_ACCELERATION_STRUCTURE_PREBUILD_INFO_0054 Pfnd3d12ddiGetRaytracingAccelerationStructurePrebuildInfo0054;
void Pfnd3d12ddiGetRaytracingAccelerationStructurePrebuildInfo0054(
[in] D3D12DDI_HDEVICE unnamedParam1,
[in] const D3D12DDI_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS_0054 *unnamedParam2,
[out] D3D12DDI_RAYTRACING_ACCELERATION_STRUCTURE_PREBUILD_INFO_0054 *unnamedParam3
)
{...}
View the official Windows Driver Kit DDI referenceNo description available.
Queries the driver for resource requirements to build an acceleration structure.
unnamedParam1 [in]A handle to the device.
unnamedParam2 [in]Pointer to a D3D12DDI_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS_0054 structure that contains the inputs.
unnamedParam3 [out]Pointer to a D3D12DDI_RAYTRACING_ACCELERATION_STRUCTURE_PREBUILD_INFO_0054 structure that contains prebuild info.
//Declaration
PFND3D12DDI_GET_RAYTRACING_ACCELERATION_STRUCTURE_PREBUILD_INFO_0054 Pfnd3d12ddiGetRaytracingAccelerationStructurePrebuildInfo0054;
// Definition
void Pfnd3d12ddiGetRaytracingAccelerationStructurePrebuildInfo0054
(
D3D12DDI_HDEVICE Arg1
CONST D3D12DDI_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS_0054 *
D3D12DDI_RAYTRACING_ACCELERATION_STRUCTURE_PREBUILD_INFO_0054 *
)
{...}
The result of this callback function lets the application provide the correct amount of output storage and scratch storage to BuildRaytracingAccelerationStructure given the same geometry.
This method is on the device as opposed to command list on the assumption that drivers must be able to calculate resource requirements for an acceleration structure build from only looking at the CPU visible portions of the call, without having to dereference any pointers to GPU memory containing actual vertex data, index data, etc.
D3D12DDI_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS_0054
D3D12DDI_RAYTRACING_ACCELERATION_STRUCTURE_PREBUILD_INFO_0054