énumération D3D12DDI_RAYTRACING_GEOMETRY_FLAGS (d3d12umddi.h)

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

Syntax

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.

REMARQUE

Ce comportement peut être remplacé par instance par D3D12DDI_RAYTRACING_INSTANCE_FLAGS et 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 de positionnement plusieurs fois pour une intersection ray-primitive donnée. Cette flexibilité permet d’améliorer l’efficacité de 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 rectangle plus grand.

Toutefois, certains cas d’utilisation d’application nécessitent que les intersections soient signalées à n’importe quel nuanceur de positionnement 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.

Configuration requise

   
Client minimal pris en charge Windows 10, version 1809
En-tête d3d12umddi.h