структура 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_FLAG_PERFORM_UPDATE в перечислении D3D12DDI_RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAGS. В противном случае этот адрес должен иметь значение 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

Указывает на массив NumPostbuildInfoDescs указатели на D3D12DDI_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC_0054 структуры.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows 10 версии 1809
заголовка d3d12umddi.h