Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Specifica i flag di geometria di ray tracing.
Sintassi
typedef enum D3D12DDI_RAYTRACING_GEOMETRY_FLAGS {
D3D12DDI_RAYTRACING_GEOMETRY_FLAG_NONE,
D3D12DDI_RAYTRACING_GEOMETRY_FLAG_OPAQUE,
D3D12DDI_RAYTRACING_GEOMETRY_FLAG_NO_DUPLICATE_ANYHIT_INVOCATION
} ;
Costanti
D3D12DDI_RAYTRACING_GEOMETRY_FLAG_NONE Nessuna opzione specificata. |
D3D12DDI_RAYTRACING_GEOMETRY_FLAG_OPAQUE Quando i raggi rilevano questa geometria, la geometria agisce come se non fosse presente alcun hit shader. È consigliabile usare questo flag in modo liberale, in quanto può abilitare importanti ottimizzazioni di elaborazione dei raggi. NOTA Questo comportamento può essere sottoposto a override per ogni istanza con D3D12DDI_RAYTRACING_INSTANCE_FLAGSe su base per raggio usando i flag Ray in TraceRay(). |
D3D12DDI_RAYTRACING_GEOMETRY_FLAG_NO_DUPLICATE_ANYHIT_INVOCATION Per impostazione predefinita, il sistema è libero di attivare un hit shader più di una volta per un'intersezione ray-primitive specificata. Questa flessibilità consente di migliorare l'efficienza trasversale delle strutture di accelerazione in determinati casi. Ad esempio, se la struttura di accelerazione viene implementata internamente con volumi di delimitazione, l'implementazione potrebbe risultare utile archiviare triangoli relativamente lunghi in più rettangoli di delimitazione anziché in un singolo riquadro più grande. Tuttavia, alcuni casi d'uso dell'applicazione richiedono che le intersezioni vengano segnalate a qualsiasi hit shader al massimo una volta. Questo flag consente di garantire la geometria specificata, potenzialmente con un impatto sulle prestazioni. Questo flag si applica a tutti i tipi geometry. |
Fabbisogno
Requisito | Valore |
---|---|
client minimo supportato | Windows 10, versione 1809 |
intestazione | d3d12umddi.h |