énumération D3D12DDI_RAYTRACING_INSTANCE_FLAGS (d3d12umddi.h)

Options d’indicateur lors de la génération de données instance sur le processeur à charger sur le GPU, lors de la génération de la structure d’accélération du suivi de rayons.

Syntax

typedef enum D3D12DDI_RAYTRACING_INSTANCE_FLAGS {
  D3D12DDI_RAYTRACING_INSTANCE_FLAG_NONE,
  D3D12DDI_RAYTRACING_INSTANCE_FLAG_TRIANGLE_CULL_DISABLE,
  D3D12DDI_RAYTRACING_INSTANCE_FLAG_TRIANGLE_FRONT_COUNTERCLOCKWISE,
  D3D12DDI_RAYTRACING_INSTANCE_FLAG_FORCE_OPAQUE,
  D3D12DDI_RAYTRACING_INSTANCE_FLAG_FORCE_NON_OPAQUE
} ;

Constantes

 
D3D12DDI_RAYTRACING_INSTANCE_FLAG_NONE
Aucune option spécifiée.
D3D12DDI_RAYTRACING_INSTANCE_FLAG_TRIANGLE_CULL_DISABLE
Désactive l’élimination pour cette instance. Les indicateurs d’énumération D3D12DDI_CULL_MODE D3D12DDI_CULL_MODE_FRONT et D3D12DDI_CULL_MODE_BACK n’auront aucun effet sur cette instance.
D3D12DDI_RAYTRACING_INSTANCE_FLAG_TRIANGLE_FRONT_COUNTERCLOCKWISE
Cet indicateur inverse les face avant et arrière, ce qui est utile si, par exemple, l’ordre de remontage naturel de l’application diffère de la valeur par défaut.
Par défaut, un triangle est face à l’avant si ses sommets apparaissent dans le sens des aiguilles d’une montre à partir de l’origine du rayon et vers l’arrière si ses sommets apparaissent dans le sens inverse des aiguilles d’une montre à partir de l’origine du rayon, dans l’espace objet dans un système de coordonnées gaucher.
Étant donné que ces règles de direction de remontage sont définies dans l’espace objet, elles ne sont pas affectées par les transformations instance. Par exemple, une matrice de transformation de instance avec un déterminant négatif (par exemple, la mise en miroir d’une certaine géométrie) ne modifie pas le parement des triangles dans le instance. Les transformations par géométrie, en revanche, (définies dans D3D12DDI_RAYTRACING_GEOMETRY_DESC_0054), sont combinées avec les données de vertex associées dans l’espace objet, de sorte qu’une matrice déterminante négative n’est pas un enroulement de triangle inversé
D3D12DDI_RAYTRACING_INSTANCE_FLAG_FORCE_OPAQUE
Le instance agit comme si l’indicateur D3D12DDI_RAYTRACING_GEOMETRY_FLAG_OPAQUE de l’énumération D3D12DDI_RAYTRACING_GEOMETRY_FLAGS avait été spécifié pour toutes les géométries de la structure d’accélération de niveau inférieur référencé par le instance.

Notez que ce comportement peut être remplacé par l’indicateur de rayon D3D12DDI_RAYTRACING_INSTANCE_FLAG_FORCE_NON_OPAQUE. Cet indicateur s’exclut mutuellement de l’indicateur D3D12DDI_RAYTRACING_INSTANCE_FLAG_FORCE_NON_OPAQUE.
D3D12DDI_RAYTRACING_INSTANCE_FLAG_FORCE_NON_OPAQUE
L’instance se comporte comme si l’indicateur de D3D12DDI_RAYTRACING_GEOMETRY_FLAG_OPAQUE de l’énumération D3D12DDI_RAYTRACING_GEOMETRY_FLAGS n’avait pas été spécifié pour l’une des géométries de la structure d’accélération de niveau inférieur référencée par le instance.

Notez que ce comportement peut être remplacé par l’indicateur de rayon D3D12DDI_RAYTRACING_INSTANCE_FLAG_FORCE_OPAQUE. Cet indicateur s’exclut mutuellement de l’indicateur D3D12DDI_RAYTRACING_INSTANCE_FLAG_FORCE_OPAQUE.

Remarques

Cette énumération est utilisée dans la structure D3D12DDI_RAYTRACING_INSTANCE_DESC_0054 pour spécifier une option à appliquer au instance.

Configuration requise

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