D3D12DDIARG_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_0054-Struktur (d3d12umddi.h)

Beschreibung der zu erstellenden Beschleunigungsstruktur.

Syntax

typedef struct D3D12DDIARG_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_0054 {
  D3D12DDI_GPU_VIRTUAL_ADDRESS                                              DestAccelerationStructureData;
  D3D12DDI_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS_0054              Inputs;
  D3D12DDI_GPU_VIRTUAL_ADDRESS                                              SourceAccelerationStructureData;
  D3D12DDI_GPU_VIRTUAL_ADDRESS                                              ScratchAccelerationStructureData;
  UINT                                                                      NumPostbuildInfoDescs;
  const D3D12DDI_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC_0054 *pPostbuildInfoDescs;
} D3D12DDIARG_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_0054;

Member

DestAccelerationStructureData

Speicherort für die resultierende Beschleunigungsstruktur aus BuildRaytracingAccelerationStructure. GetRaytracingAccelerationStructurePrebuildInfo meldet die Menge an Arbeitsspeicher, die für das Ergebnis erforderlich ist, unter Berücksichtigung einer Reihe von Buildparametern für die Beschleunigungsstruktur.

Die Startadresse muss an 256 Bytes ausgerichtet sein.

Der Speicher, auf den verwiesen wird, muss sich im Ressourcenzustand D3D12DDI_RESOURCE_STATE_RAYTRACING_ACCELERATION_STRUCTURE befinden.

Inputs

Eine D3D12DDI_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS_0054-Struktur , die die Buildeingaben für die Raytracingbeschleunigung darstellt.

SourceAccelerationStructureData

Adresse einer vorhandenen Beschleunigungsstruktur, wenn eine Beschleunigungsstrukturaktualisierung wie ein inkrementeller Build angefordert wird, indem D3D12DDI_RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAG_PERFORM_UPDATE in der D3D12DDI_RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAGS-Enumeration festgelegt wird. Andernfalls muss diese Adresse NULL sein.

Wenn diese Adresse mit DestAccelerationStructureData identisch ist, muss die Aktualisierung direkt durchgeführt werden. Jede andere Form der Überlappung von Quell- und Zielspeicher ist ungültig und erzeugt ein nicht definiertes Verhalten.

Die Adresse muss an 256 Byte ausgerichtet sein.

Der Speicher, auf den verwiesen wird, muss sich im Ressourcenzustand D3D12DDI_RESOURCE_STATE_RAYTRACING_ACCELERATION_STRUCTURE befinden.

ScratchAccelerationStructureData

Speicherort, an dem der Build temporäre Daten speichert. GetRaytracingAccelerationStructurePrebuildInfo meldet die Menge an Arbeitsspeicher, die die Implementierung für einen bestimmten Satz von Buildparametern für die Beschleunigungsstruktur benötigt.

Die Startadresse muss an 256 Bytes ausgerichtet sein. Der Inhalt dieses Speichers, der in einen Build auf der GPU-Zeitleiste wechselt, ist irrelevant und wird nicht beibehalten. Nachdem der Build auf dem GPU-Zeitleiste abgeschlossen ist, bleibt der Speicher mit dem undefinierten Inhalt, mit dem der Build abgeschlossen wurde, belassen.

Der Speicher, auf den verwiesen wird, muss sich im Ressourcenzustand D3D12DDI_RESOURCE_STATE_UNORDERED_ACCESS befinden.

NumPostbuildInfoDescs

Die Anzahl zusammenhängender D3D12DDI_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC_0054 Strukturen.

pPostbuildInfoDescs

Verweist auf ein Array von NumPostbuildInfoDescs-Zeigern auf D3D12DDI_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC_0054 Strukturen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 10, Version 1809
Kopfzeile d3d12umddi.h