Compartir a través de


enumeración D3D12DDI_RAYTRACING_INSTANCE_FLAGS (d3d12umddi.h)

Marque las opciones al generar datos de instancia en la CPU para cargarlos en la GPU durante la compilación de la estructura de aceleración del seguimiento de rayos.

Sintaxis

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
No se han especificado opciones.
D3D12DDI_RAYTRACING_INSTANCE_FLAG_TRIANGLE_CULL_DISABLE
Deshabilita la selección de esta instancia. Las marcas de enumeración D3D12DDI_CULL_MODE D3D12DDI_CULL_MODE_FRONT y D3D12DDI_CULL_MODE_BACK no tendrán ningún efecto en esta instancia.
D3D12DDI_RAYTRACING_INSTANCE_FLAG_TRIANGLE_FRONT_COUNTERCLOCKWISE
Esta marca invierte las direcciones delanteras y traseras, lo que resulta útil si, por ejemplo, el orden de desenlace natural de la aplicación difiere del valor predeterminado.
De forma predeterminada, un triángulo está orientado hacia delante si sus vértices aparecen en el sentido de las agujas del reloj desde el origen del rayo y hacia atrás si sus vértices aparecen en sentido contrario a las agujas del reloj desde el origen del rayo, en el espacio de objetos en un sistema de coordenadas izquierdo.
Dado que estas reglas de dirección de viento se definen en el espacio de objetos, no se ven afectadas por las transformaciones de instancia. Por ejemplo, una matriz de transformación de instancia con determinante negativo (por ejemplo, la creación de reflejo de alguna geometría), no cambia la cara de los triángulos dentro de la instancia. Por el contrario, las transformaciones por geometría (definidas en D3D12DDI_RAYTRACING_GEOMETRY_DESC_0054), se combinan con los datos de vértices asociados en el espacio de objetos, por lo que una matriz determinante negativa que hace que se desenlate el triángulo volteo
D3D12DDI_RAYTRACING_INSTANCE_FLAG_FORCE_OPAQUE
La instancia actuará como si se hubiera especificado la D3D12DDI_RAYTRACING_GEOMETRY_FLAGS enumeraciónmarca D3D12DDI_RAYTRACING_GEOMETRY_FLAG_OPAQUE para todas las geometrías de la estructura de aceleración de nivel inferior a la que hace referencia la instancia.

Tenga en cuenta que este comportamiento se puede invalidar mediante la marca de rayos D3D12DDI_RAYTRACING_INSTANCE_FLAG_FORCE_NON_OPAQUE. Esta marca es mutuamente excluyente de la marca D3D12DDI_RAYTRACING_INSTANCE_FLAG_FORCE_NON_OPAQUE.
D3D12DDI_RAYTRACING_INSTANCE_FLAG_FORCE_NON_OPAQUE
La instancia actuará como si no se hubiera especificado la D3D12DDI_RAYTRACING_GEOMETRY_FLAGS enumeraciónmarca de D3D12DDI_RAYTRACING_GEOMETRY_FLAG_OPAQUE para ninguna de las geometrías de la estructura de aceleración de nivel inferior a la que hace referencia la instancia.

Tenga en cuenta que este comportamiento se puede invalidar mediante la marca de rayos D3D12DDI_RAYTRACING_INSTANCE_FLAG_FORCE_OPAQUE. Esta marca es mutuamente excluyente de la marca D3D12DDI_RAYTRACING_INSTANCE_FLAG_FORCE_OPAQUE.

Observaciones

Esta enumeración se usa en la estructura D3D12DDI_RAYTRACING_INSTANCE_DESC_0054 para especificar una opción que se va a aplicar a la instancia.

Requisitos

Requisito Valor
cliente mínimo admitido Windows 10, versión 1809
encabezado de d3d12umddi.h