Sintaxis
typedef enum D3D12_RAYTRACING_GEOMETRY_FLAGS
{
D3D12_RAYTRACING_GEOMETRY_FLAG_NONE = 0,
D3D12_RAYTRACING_GEOMETRY_FLAG_OPAQUE = 1,
D3D12_RAYTRACING_GEOMETRY_FLAG_NO_DUPLICATE_ANYHIT_INVOCATION = 2
} D3D12_RAYTRACING_GEOMETRY_FLAGS
Constantes
| Constante | Descripción |
|---|---|
| D3D12_RAYTRACING_GEOMETRY_FLAG_NONE | No se especifica ninguna opción. |
| D3D12_RAYTRACING_GEOMETRY_FLAG_OPAQUE | Cuando los rayos encuentran esta geometría, la geometría actúa como si no hubiera ningún sombreador any hit presente. Se recomienda que las aplicaciones usen esta marca con liberalidad, ya que puede habilitar optimizaciones importantes del procesamiento de rayos. Tenga en cuenta que este comportamiento se puede invalidar por instancia con D3D12_RAYTRACING_INSTANCE_FLAGS y por rayo mediante marcas de rayo en TraceRay. |
| D3D12_RAYTRACING_GEOMETRY_FLAG_NO_DUPLICATE_ANYHIT_INVOCATION | De manera predeterminada, el sistema puede desencadenar un sombreador any hit más de una vez para una intersección de rayo y primitiva determinada. Esta flexibilidad ayuda a mejorar la eficiencia del recorrido de las estructuras de aceleración en algunos casos. Por ejemplo, si la estructura de aceleración se implementa internamente con volúmenes de límite, la implementación puede considerar beneficioso almacenar triángulos relativamente largos en varios cuadros de límite en lugar de un único cuadro más grande. Sin embargo, algunos casos de uso de la aplicación requieren que las intersecciones se notifiquen al sombreador any hit como máximo una vez. Esta marca habilita esa garantía para la geometría determinada, posiblemente con algún impacto en el rendimiento. Esta marca se aplica a todos los tipos de geometría. |
Requisitos
Encabezado: d3d12_xs.hBiblioteca: d3d12_xs.lib
Plataformas compatibles: consolas XBOX Series
