D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_SERIALIZATION_DESC構造体 (d3d12.h)

シリアル化されたアクセラレーション構造とヘッダーのサイズとレイアウトについて説明します

構文

typedef struct D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_SERIALIZATION_DESC {
  UINT64 SerializedSizeInBytes;
  UINT64 NumBottomLevelAccelerationStructurePointers;
} D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_SERIALIZATION_DESC;

メンバー

SerializedSizeInBytes

ヘッダーを含むシリアル化されたアクセラレーション構造体のサイズ。 ヘッダーが D3D12_SERIALIZED_RAYTRACING_ACCELERATION_STRUCTURE_HEADER され、その後に下位レベルのアクセラレーション構造体へのポインターの一覧が続きます。

NumBottomLevelAccelerationStructurePointers

D3D12_SERIALIZED_RAYTRACING_ACCELERATION_STRUCTURE_HEADERの後にシリアル化されたアクセラレーション構造体の先頭にある 64 ビット GPU 仮想 アドレスの数。 下位レベルの加速度構造の場合、これは 0 になります。 最上位レベルの加速度構造体の場合、ポインターは参照される加速度構造体を示します。

逆シリアル化が発生した場合、下位レベルのポインターへのこれらのポインターは、(ヘッダーの直後に) シリアル化されたデータ内のアプリによって、下位レベルのアクセラレーション構造が存在する新しい場所に初期化する必要があります。 これらの新しい場所は、レイトレーシングで使用される前に、予想される逆シリアル化されたデータ構造で初期化されている限り、逆シリアル化時に下位レベルのアクセラレーション構造体が既に設定されている必要はありません。 逆シリアル化中、ドライバーは新しいポインターを読み取り、それを使用して元のポインターと同等の最上位レベルのアクセラレーション構造を生成します。

要件

要件
Header d3d12.h