D3D12_RAYTRACING_INSTANCE_FLAGS列挙 (d3d12.h)
レイトレーシング アクセラレーション構造体インスタンスのフラグ。 これらのフラグを使用して、個々のインスタンス のD3D12_RAYTRACING_GEOMETRY_FLAGS をオーバーライドできます。
構文
typedef enum D3D12_RAYTRACING_INSTANCE_FLAGS {
D3D12_RAYTRACING_INSTANCE_FLAG_NONE = 0,
D3D12_RAYTRACING_INSTANCE_FLAG_TRIANGLE_CULL_DISABLE = 0x1,
D3D12_RAYTRACING_INSTANCE_FLAG_TRIANGLE_FRONT_COUNTERCLOCKWISE = 0x2,
D3D12_RAYTRACING_INSTANCE_FLAG_FORCE_OPAQUE = 0x4,
D3D12_RAYTRACING_INSTANCE_FLAG_FORCE_NON_OPAQUE = 0x8
} ;
定数
D3D12_RAYTRACING_INSTANCE_FLAG_NONE 値: 0 オプションは指定されていません。 |
D3D12_RAYTRACING_INSTANCE_FLAG_TRIANGLE_CULL_DISABLE 値: 0x1 このインスタンスの前面/背面のカリングを無効にします。 レイ フラグ RAY_FLAG_CULL_BACK_FACING_TRIANGLES と RAY_FLAG_CULL_FRONT_FACING_TRIANGLES は、このインスタンスには影響しません。 |
D3D12_RAYTRACING_INSTANCE_FLAG_TRIANGLE_FRONT_COUNTERCLOCKWISE 値: 0x2 このフラグは、前面と背面を反転します。これは、アプリケーションの自然な巻き上げ順序が既定と異なる場合に便利です。 既定では、頂点がレイの原点から時計回りに表示され、頂点がレイ原点から反時計回りに表示される場合は、左側の座標系のオブジェクト空間で、三角形が正面向きになります。 これらの巻き方向ルールはオブジェクト空間で定義されているため、インスタンス変換の影響を受けません。 たとえば、負の決定性を持つインスタンス変換行列 (一部のジオメトリのミラーリングなど) では、インスタンス内の三角形の向きは変わりません。 これに対 し、D3D12_RAYTRACING_GEOMETRY_TRIANGLES_DESC で定義されたジオメトリごとの変換は、オブジェクト空間内の関連する頂点データと組み合わされるため、負の決定行列では三角形の巻き上げが反転します。 |
D3D12_RAYTRACING_INSTANCE_FLAG_FORCE_OPAQUE 値: 0x4 インスタンスは、 インスタンス によって参照される下位レベルのアクセラレーション構造内のすべてのジオメトリに対してD3D12_RAYTRACING_GEOMETRY_FLAG_OPAQUEが指定されているかのように動作します。 この動作はレイ フラグ RAY_FLAG_FORCE_NON_OPAQUEによってオーバーライドできること に注意してください。 このフラグは、 D3D12_RAYTRACING_INSTANCE_FLAG_FORCE_NON_OPAQUE フラグとは相互に排他的です。 |
D3D12_RAYTRACING_INSTANCE_FLAG_FORCE_NON_OPAQUE 値: 0x8 インスタンスは、 インスタンス によって参照される下位レベルのアクセラレーション構造のジオメトリに対してD3D12_RAYTRACING_GEOMETRY_FLAG_OPAQUEが指定されていないかのように動作します。 この動作はレイ フラグ RAY_FLAG_FORCE_OPAQUEによってオーバーライドできることに注意 してください。 このフラグは、 D3D12_RAYTRACING_INSTANCE_FLAG_FORCE_OPAQUE フラグに対して相互に排他的です。 |
要件
要件 | 値 |
---|---|
Header | d3d12.h |