Condividi tramite


struttura D3D12DDI_RAYTRACING_INSTANCE_DESC_0054 (d3d12umddi.h)

Descrive un'istanza di ray tracing. Questa struttura di dati viene usata nella memoria GPU durante la compilazione della struttura di accelerazione ed è utile se si generano prima i dati dell'istanza nella CPU e quindi si carica nella GPU.

Sintassi

typedef struct D3D12DDI_RAYTRACING_INSTANCE_DESC_0054 {
  FLOAT                        Transform[3][4];
  UINT                         InstanceID : 24;
  UINT                         InstanceMask : 8;
  UINT                         InstanceContributionToHitGroupIndex : 24;
  UINT                         Flags : 8;
  D3D12DDI_GPU_VIRTUAL_ADDRESS AccelerationStructure;
} D3D12DDI_RAYTRACING_INSTANCE_DESC_0054;

Members

Transform[3]

Matrice di trasformazione 3x4 nel layout principale della riga che rappresenta la trasformazione da istanza a mondo.

InstanceID

Valore arbitrario a 24 bit nei tipi shader.

InstanceMask

Maschera a 8 bit assegnata all'istanza, che può essere usata per includere o rifiutare gruppi di istanze per raggio. Se il valore è zero, l'istanza non verrà mai inclusa. Impostare questo valore su un valore diverso da zero.

InstanceContributionToHitGroupIndex

Contributo per istanza da aggiungere all'indicizzazione delle tabelle shader per selezionare il gruppo di hit da usare.

Flags

Flag da applicare all'istanza di .

AccelerationStructure

Indirizzo della struttura di accelerazione di livello inferiore istanza. L'indirizzo deve essere allineato a 256 byte.

La memoria a cui punta deve essere nello stato della risorsa D3D12DDI_RESOURCE_STATE_RAYTRACING_ACCELERATION_STRUCTURE.

Requisiti

Requisito Valore
Client minimo supportato Windows 10, versione 1809
Intestazione d3d12umddi.h