ID3D12GraphicsCommandList4::CopyRaytracingAccelerationStructure 方法 (d3d12.h)

在套用指定的轉換時,將來源加速結構複製到目的地記憶體。

語法

void CopyRaytracingAccelerationStructure(
  [in] D3D12_GPU_VIRTUAL_ADDRESS                         DestAccelerationStructureData,
  [in] D3D12_GPU_VIRTUAL_ADDRESS                         SourceAccelerationStructureData,
  [in] D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE Mode
);

參數

[in] DestAccelerationStructureData

目的地記憶體。 如有指定的模式需要,您可以事先呼叫 EmitRaytracingAccelerationStructurePostbuildInfo 來探索必要的大小。

不論指定的模式為何,目的地起始位址都必須對齊 256 個字節,定義為D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BYTE_ALIGNMENT

目的地記憶體範圍無法重疊來源。 否則,結果為未定義。

所指向記憶體必須位於的資源狀態取決於 Mode 參數。 如需詳細資訊,請參閱 D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE

[in] SourceAccelerationStructureData

根據指定的 模式複製/轉換之加速結構或其他數據類型的位址。 數據會保持不變且可供使用。 此作業只會複製 SourceAccelerationStructureData 所指向的數據,而不會複製源數據可能指向的任何其他數據,例如加速結構。 例如,在最上層加速結構的情況下,任何指向的下層加速結構都不會在作業中複製。

不論指定的模式為何,來源記憶體都必須對齊 256 個字節,定義為D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BYTE_ALIGNMENT

所指向記憶體必須位於的資源狀態取決於 Mode 參數。 如需詳細資訊,請參閱 D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE

[in] Mode

要執行的複製作業類型。 如需詳細資訊,請參閱 D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE

傳回值

備註

由於光線追蹤加速結構可能包含內部指標,並具有裝置相依的不透明配置,因此在周圍複製或操作它們需要專用的 API,讓驅動程式可以處理要求的作業。

這個方法可以從圖形或計算命令清單呼叫,但無法從套件組合呼叫。

規格需求

需求
最低支援的用戶端 Windows 10 版本 1809 [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2016 [僅限傳統型應用程式]
目標平台 Windows
標頭 d3d12.h
程式庫 D3D12.lib
Dll D3D12.dll

另請參閱

ID3D12GraphicsCommandList4