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 |