구문
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
상수
| 상수 | 설명 |
|---|---|
| D3D12_RAYTRACING_GEOMETRY_FLAG_NONE | 옵션이 지정되지 않았습니다. |
| D3D12_RAYTRACING_GEOMETRY_FLAG_OPAQUE | 레이가 이 지오메트리와 만날 때, 지오메트리는 any hit 셰이더가 없는 것처럼 동작합니다. 이 플래그는 중요한 레이 처리 최적화를 활성화할 수 있으므로 앱에서 적극 활용할 것을 권장합니다. 이 동작은 D3D12_RAYTRACING_INSTANCE_FLAGS를 사용하여 인스턴스별로, 그리고 TraceRay의 레이 플래그를 사용하여 레이별로 재정의될 수 있습니다. |
| D3D12_RAYTRACING_GEOMETRY_FLAG_NO_DUPLICATE_ANYHIT_INVOCATION | 기본적으로 시스템은 주어진 레이-프리미티브 교차에 대해 any hit 셰이더를 두 번 이상 트리거할 수 있습니다. 이러한 유연성은 특정 경우에 가속 구조의 순회 효율을 개선하는 데 도움이 됩니다. 예를 들어, 가속 구조가 내부적으로 경계 볼륨으로 구현되는 경우, 구현체는 상대적으로 긴 삼각형을 하나의 큰 경계 상자가 아닌 여러 경계 상자에 저장하는 것이 유리하다고 판단할 수 있습니다. 그러나 일부 애플리케이션 사용 사례에서는 교차가 any hit 셰이더에 최대 한 번만 보고되어야 합니다. 이 플래그는 지정된 지오메트리에 대해 성능에 다소 영향을 주면서 그 보장을 제공합니다. 이 플래그는 모든 지오메트리 유형에 적용됩니다. |
요구 사항
헤더: d3d12_xs.h라이브러리: d3d12_xs.lib
지원 플랫폼: XBOX Series 콘솔
