構文
typedef enum D3D12_RAYTRACING_INSTANCE_FLAGS
{
D3D12_RAYTRACING_INSTANCE_FLAG_NONE = 0,
D3D12_RAYTRACING_INSTANCE_FLAG_TRIANGLE_CULL_DISABLE = 1,
D3D12_RAYTRACING_INSTANCE_FLAG_TRIANGLE_FRONT_COUNTERCLOCKWISE = 2,
D3D12_RAYTRACING_INSTANCE_FLAG_FORCE_OPAQUE = 4,
D3D12_RAYTRACING_INSTANCE_FLAG_FORCE_NON_OPAQUE = 8
} D3D12_RAYTRACING_INSTANCE_FLAGS
定数
| 定数 | 説明 |
|---|---|
| D3D12_RAYTRACING_INSTANCE_FLAG_NONE | オプションは指定されていません。 |
| D3D12_RAYTRACING_INSTANCE_FLAG_TRIANGLE_CULL_DISABLE | このインスタンスの表/裏面カリングを無効にします。レイ フラグ RAY_FLAG_CULL_BACK_FACING_TRIANGLES および RAY_FLAG_CULL_FRONT_FACING_TRIANGLES はこのインスタンスに影響を与えません。 |
| D3D12_RAYTRACING_INSTANCE_FLAG_TRIANGLE_FRONT_COUNTERCLOCKWISE | このフラグは表面と裏面を反転します。これは、アプリケーションの自然な巻き順が既定と異なる場合に便利です。既定では、左手座標系のオブジェクト空間において、頂点がレイの原点から時計回りに見えるとき三角形は表向き、頂点がレイの原点から反時計回りに見えるとき裏向きです。これらの巻き方向ルールはオブジェクト空間で定義されているため、インスタンス変換の影響を受けません。たとえば、行列式が負のインスタンス変換行列 (例えば一部のジオメトリをミラーリング) はインスタンス内の三角形の向きを変更しません。対照的に、D3D12_RAYTRACING_GEOMETRY_TRIANGLES_DESC で定義されたジオメトリごとの変換は、オブジェクト空間の関連する頂点データと結合されるため、そこでの行列式が負の行列は三角形の巻きを反転します。 |
| D3D12_RAYTRACING_INSTANCE_FLAG_FORCE_OPAQUE | インスタンスは、D3D12_RAYTRACING_GEOMETRY_FLAG_OPAQUE がインスタンスが参照するボトムレベル アクセラレーション構造内のすべてのジオメトリに対して指定されていたかのように振る舞います。この動作はレイ フラグ RAY_FLAG_FORCE_NON_OPAQUE によってオーバーライドできることに注意してください。このフラグは D3D12_RAYTRACING_INSTANCE_FLAG_FORCE_NON_OPAQUE フラグと相互排他的です。 |
| D3D12_RAYTRACING_INSTANCE_FLAG_FORCE_NON_OPAQUE | インスタンスは、D3D12_RAYTRACING_GEOMETRY_FLAG_OPAQUE がインスタンスが参照するボトムレベル アクセラレーション構造内のどのジオメトリに対しても指定されていなかったかのように振る舞います。この動作はレイ フラグ RAY_FLAG_FORCE_OPAQUE によってオーバーライドできることに注意してください。このフラグは D3D12_RAYTRACING_INSTANCE_FLAG_FORCE_OPAQUE フラグと相互排他的です。 |
要件
ヘッダー: d3d12_xs.hライブラリ: d3d12_xs.lib
サポートされるプラットフォーム: XBOX Series 本体
