Partager via


énumération D3D12_RAYTRACING_GEOMETRY_FLAGS (d3d12.h)

Spécifie des indicateurs pour le raytracing geometry dans une structure D3D12_RAYTRACING_GEOMETRY_DESC .

Syntax

typedef enum D3D12_RAYTRACING_GEOMETRY_FLAGS {
  D3D12_RAYTRACING_GEOMETRY_FLAG_NONE = 0,
  D3D12_RAYTRACING_GEOMETRY_FLAG_OPAQUE = 0x1,
  D3D12_RAYTRACING_GEOMETRY_FLAG_NO_DUPLICATE_ANYHIT_INVOCATION = 0x2
} ;

Constantes

 
D3D12_RAYTRACING_GEOMETRY_FLAG_NONE
Valeur : 0
Aucune option spécifiée.
D3D12_RAYTRACING_GEOMETRY_FLAG_OPAQUE
Valeur : 0x1
Lorsque les rayons rencontrent cette géométrie, la géométrie agit comme si aucun nuanceur de frappe n’était présent. Il est recommandé que les applications utilisent cet indicateur librement, car il peut permettre des optimisations importantes du traitement des rayons. Notez que ce comportement peut être remplacé par instance avec D3D12_RAYTRACING_INSTANCE_FLAGS et par rayon à l’aide d’indicateurs de rayon dans TraceRay.
D3D12_RAYTRACING_GEOMETRY_FLAG_NO_DUPLICATE_ANYHIT_INVOCATION
Valeur : 0x2
Par défaut, le système est libre de déclencher un nuanceur de correspondance plus d’une fois pour une intersection de primitive de rayon donnée. Cette flexibilité permet d’améliorer l’efficacité du parcours des structures d’accélération dans certains cas. Par instance, si la structure d’accélération est implémentée en interne avec des volumes englobants, l’implémentation peut trouver utile de stocker des triangles relativement longs dans plusieurs zones englobantes plutôt qu’une zone unique plus grande. Toutefois, certains cas d’utilisation d’application nécessitent que les intersections soient signalées au plus une fois au nuanceur de correspondance. Cet indicateur permet cette garantie pour la géométrie donnée, potentiellement avec un impact sur les performances.

Cet indicateur s’applique à tous les types geometry.

Configuration requise

Condition requise Valeur
En-tête d3d12.h