Partager via


énumération D3D12DDI_RAYTRACING_GEOMETRY_FLAGS (d3d12umddi.h)

Spécifie les indicateurs géométriques de traçage de rayons.

Syntaxe

typedef enum D3D12DDI_RAYTRACING_GEOMETRY_FLAGS {
  D3D12DDI_RAYTRACING_GEOMETRY_FLAG_NONE,
  D3D12DDI_RAYTRACING_GEOMETRY_FLAG_OPAQUE,
  D3D12DDI_RAYTRACING_GEOMETRY_FLAG_NO_DUPLICATE_ANYHIT_INVOCATION
} ;

Constantes

 
D3D12DDI_RAYTRACING_GEOMETRY_FLAG_NONE
Aucune option spécifiée.
D3D12DDI_RAYTRACING_GEOMETRY_FLAG_OPAQUE
Lorsque les rayons rencontrent cette géométrie, la géométrie agit comme si aucun nuanceur de frappe n’est présent. Il est recommandé d’utiliser cet indicateur de manière libérale, car il peut activer des optimisations importantes du traitement des rayons.

NOTE

Ce comportement peut être substitué par instance avec D3D12DDI_RAYTRACING_INSTANCE_FLAGS, et sur une base par rayon à l’aide d’indicateurs Ray dans TraceRay().

D3D12DDI_RAYTRACING_GEOMETRY_FLAG_NO_DUPLICATE_ANYHIT_INVOCATION
Par défaut, le système est libre de déclencher un nuanceur d’accès plusieurs fois pour une intersection ray-primitive donnée. Cette flexibilité permet d’améliorer l’efficacité traversée 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 trouver avantageux de stocker des triangles relativement longs dans plusieurs rectangles englobants plutôt qu’un seul cadre plus grand.

Toutefois, certains cas d’usage d’application nécessitent que les intersections soient signalées à n’importe quel nuanceur d’accès au plus une fois. 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.

Exigences

Exigence Valeur
client minimum pris en charge Windows 10, version 1809
d’en-tête d3d12umddi.h