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;

Membri

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 di shader.

InstanceMask

Maschera a 8 bit assegnata all'istanza, che può essere usata per includere o rifiutare gruppi di istanze in base al 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 della tabella 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 in fase di istanza. L'indirizzo deve essere allineato a 256 byte.

La memoria a cui punta deve trovarsi stato della risorsa D3D12DDI_RESOURCE_STATE_RAYTRACING_ACCELERATION_STRUCTURE.

Fabbisogno

Requisito Valore
client minimo supportato Windows 10, versione 1809
intestazione d3d12umddi.h