構文
メンバー
DestAccelerationStructureData型: D3D12_GPU_VIRTUAL_ADDRESS 結果として得られるアクセラレーション構造を格納する場所。ID3D12Device5::GetRaytracingAccelerationStructurePrebuildInfo は、指定されたアクセラレーション構造ビルド パラメーターのセットに対して、ここに結果を格納するために必要なメモリの量を報告します。 このアドレスは 256 バイト境界に揃える必要があります。これは D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BYTE_ALIGNMENT として定義されています。
メモリは状態 D3D12_RESOURCE_STATE_RAYTRACING_ACCELERATION_STRUCTURE にある必要があります。
型: D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS アクセラレーション構造ビルドの入力データの記述。このデータは、GetRaytracingAccelerationStructurePrebuildInfo でも使用されるため、別の構造体に格納されます。 SourceAccelerationStructureData
型: D3D12_GPU_VIRTUAL_ADDRESS Flags パラメーターで D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAG_PERFORM_UPDATE を設定してアクセラレーション構造の更新 (増分ビルド) が要求される場合の、既存のアクセラレーション構造のアドレス。それ以外の場合、このアドレスは NULL である必要があります。 このアドレスが DestAccelerationStructureData と同じ場合、更新は in-place で実行されます。ソースと宛先のメモリのその他の重複は無効であり、未定義の動作を引き起こします。 このアドレスは 256 バイト境界に揃える必要があります (これは D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BYTE_ALIGNMENT として定義されています)。ここに渡される既存のアクセラレーション構造は、そのようなアラインメントで配置されている必要があるため、これは自動的に満たされているはずです。
メモリは状態 D3D12_RESOURCE_STATE_RAYTRACING_ACCELERATION_STRUCTURE にある必要があります。
ScratchAccelerationStructureData
ビルドが一時データを格納する場所。GetRaytracingAccelerationStructurePrebuildInfo は、指定されたアクセラレーション構造ビルド パラメーターのセットに対して実装が必要とするスクラッチ メモリの量を報告します。メモリは状態 D3D12_RESOURCE_STATE_UNORDERED_ACCESS にある必要があります。
型: D3D12_GPU_VIRTUAL_ADDRESS
要件
ヘッダー: d3d12_xs.hライブラリ: d3d12_xs.lib
サポートされるプラットフォーム: XBOX Series 本体
