Syntaxe
typedef enum D3D12_RAYTRACING_GEOMETRY_FLAGS
{
D3D12_RAYTRACING_GEOMETRY_FLAG_NONE = 0,
D3D12_RAYTRACING_GEOMETRY_FLAG_OPAQUE = 1,
D3D12_RAYTRACING_GEOMETRY_FLAG_NO_DUPLICATE_ANYHIT_INVOCATION = 2
} D3D12_RAYTRACING_GEOMETRY_FLAGS
Constantes
| Constante | Description |
|---|---|
| D3D12_RAYTRACING_GEOMETRY_FLAG_NONE | Aucune option n’est spécifiée. |
| D3D12_RAYTRACING_GEOMETRY_FLAG_OPAQUE | Lorsque des rayons rencontrent cette géométrie, celle-ci se comporte comme si aucun nuanceur any hit n’était présent. Il est recommandé que les applications utilisent cet indicateur largement, car il peut permettre d’importantes optimisations du traitement des rayons. Notez que ce comportement peut être remplacé par instance avec D3D12_RAYTRACING_INSTANCE_FLAGS et par rayon à l’aide des indicateurs de rayon dans TraceRay. |
| D3D12_RAYTRACING_GEOMETRY_FLAG_NO_DUPLICATE_ANYHIT_INVOCATION | Par défaut, le système est libre de déclencher un nuanceur any hit plus d’une fois pour une intersection rayon-primitive donnée. Cette souplesse aide à améliorer l’efficacité du parcours des structures d’accélération dans certains cas. Par exemple, si la structure d’accélération est implémentée en interne avec des volumes englobants, l’implémentation peut juger avantageux de stocker des triangles relativement longs dans plusieurs zones englobantes plutôt que dans une seule zone plus grande. Toutefois, certains cas d’utilisation d’applications exigent que les intersections soient signalées au nuanceur any hit au plus une fois. Cet indicateur offre cette garantie pour la géométrie donnée, avec une incidence possible sur les performances. Cet indicateur s’applique à tous les types de géométrie. |
Configuration requise
En-tête : d3d12_xs.hBibliothèque : d3d12_xs.lib
Plateformes prises en charge : consoles XBOX Series
