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 |