跳轉到主要內容
描述光線追蹤加速結構。將此結構傳入 ID3D12GraphicsCommandList4::BuildRaytracingAccelerationStructure,以描述要建置的加速結構。

語法

成員

DestAccelerationStructureData
類型:D3D12_GPU_VIRTUAL_ADDRESS
儲存所產生之加速結構的位置。ID3D12Device5::GetRaytracingAccelerationStructurePrebuildInfo 會根據一組加速結構建置參數,回報此處結果所需的記憶體數量。 位址必須對齊 256 位元組,定義為 D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BYTE_ALIGNMENT。 Inputs
類型:D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS
加速結構建置之輸入資料的描述。此資料儲存在個別的結構中,因為 GetRaytracingAccelerationStructurePrebuildInfo 也會使用它。 SourceAccelerationStructureData
類型:D3D12_GPU_VIRTUAL_ADDRESS
如果透過在 Flags 參數中設定 D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAG_PERFORM_UPDATE 來要求加速結構更新 (增量建置),則為現有加速結構的位址。否則此位址必須為 NULL。 如果此位址與 DestAccelerationStructureData 相同,則會就地執行更新。來源與目的地記憶體的任何其他形式重疊都是無效的,並會產生未定義的行為。 位址必須對齊 256 位元組,定義為 D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BYTE_ALIGNMENT;這應該會自動成立,因為此處傳入的任何現有加速結構,先前就已必須以這樣的對齊方式放置。

ScratchAccelerationStructureData

建置作業將儲存暫存資料的位置。GetRaytracingAccelerationStructurePrebuildInfo 會回報實作針對一組指定的加速結構建置參數所需的暫存記憶體數量。
記憶體必須處於 D3D12_RESOURCE_STATE_UNORDERED_ACCESS 狀態。
ScratchAccelerationStructureData
類型:D3D12_GPU_VIRTUAL_ADDRESS

需求

標頭: d3d12_xs.h
程式庫: d3d12_xs.lib
支援的平台: XBOX Series 主機
最後修改於 2026年10月6日