Sintaxe
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 | Descrição |
|---|---|
| D3D12_RAYTRACING_GEOMETRY_FLAG_NONE | Nenhuma opção especificada. |
| D3D12_RAYTRACING_GEOMETRY_FLAG_OPAQUE | Quando os raios encontram essa geometria, ela age como se nenhum sombreador any hit estivesse presente. É recomendável que os aplicativos usem esse sinalizador amplamente, pois ele pode habilitar otimizações importantes de processamento de raios. Observe que esse comportamento pode ser substituído por instância com D3D12_RAYTRACING_INSTANCE_FLAGS e por raio usando sinalizadores de raio em TraceRay. |
| D3D12_RAYTRACING_GEOMETRY_FLAG_NO_DUPLICATE_ANYHIT_INVOCATION | Por padrão, o sistema tem liberdade para disparar um sombreador any hit mais de uma vez para uma determinada interseção entre raio e primitivo. Essa flexibilidade ajuda a melhorar a eficiência de percurso das estruturas de aceleração em determinados casos. Por exemplo, se a estrutura de aceleração for implementada internamente com volumes delimitadores, a implementação poderá considerar vantajoso armazenar triângulos relativamente longos em várias caixas delimitadoras em vez de em uma única caixa maior. No entanto, alguns casos de uso de aplicativos exigem que as interseções sejam relatadas ao sombreador any hit no máximo uma vez. Esse sinalizador habilita essa garantia para a geometria fornecida, possivelmente com algum impacto no desempenho. Esse sinalizador se aplica a todos os tipos de geometria. |
Requisitos
Cabeçalho: d3d12_xs.hBiblioteca: d3d12_xs.lib
Plataformas com suporte: consoles XBOX Series
