D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_SERIALIZATION_DESC-Struktur (d3d12.h)

Beschreibt die Größe und das Layout der serialisierten Beschleunigungsstruktur und des Headers.

Syntax

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

Member

SerializedSizeInBytes

Die Größe der serialisierten Beschleunigungsstruktur, einschließlich eines Headers. Der Header wird D3D12_SERIALIZED_RAYTRACING_ACCELERATION_STRUCTURE_HEADER gefolgt von einer Liste von Zeigern auf die Beschleunigungsstrukturen der unteren Ebene.

NumBottomLevelAccelerationStructurePointers

Die Anzahl der virtuellen 64-Bit-GPU-Adressen, die am Anfang der serialisierten Beschleunigungsstruktur nach dem D3D12_SERIALIZED_RAYTRACING_ACCELERATION_STRUCTURE_HEADER. Bei einer Beschleunigungsstruktur auf unterer Ebene ist dies 0. Bei einer Beschleunigungsstruktur der obersten Ebene geben die Zeiger die Beschleunigungsstrukturen an, auf die verwiesen wird.

Wenn die Deserialisierung erfolgt, müssen diese Zeiger auf Zeiger der unteren Ebene von der App in den serialisierten Daten (direkt nach dem Header) zu den neuen Speicherorten initialisiert werden, an denen sich die Beschleunigungsstrukturen der unteren Ebene befinden. Es ist nicht erforderlich, dass diese neuen Speicherorte bereits zum Zeitpunkt der Deserialisierung mit Beschleunigungsstrukturen der unteren Ebene aufgefüllt wurden, solange sie mit den erwarteten deserialisierten Datenstrukturen initialisiert werden, bevor sie im Raytracing verwendet werden. Während der Deserialisierung liest der Treiber die neuen Zeiger und verwendet sie, um eine äquivalente Beschleunigungsstruktur auf oberster Ebene zu erzeugen.

Anforderungen

Anforderung Wert
Header d3d12.h