座標系

  • DirectX (旧 Direct3D) では、「左手座標系」を用いる。

ドキュメント:

座標系 v9 | Microsoft Learn [公式]

座標変換

  • ワールド変換
  • ビュー変換
  • 投影変換
演算
  • 並進 (Translation)
  • 回転 (Rotation)
  • 拡大縮小 (Scale)
  • 合成 (Multiply)

ドキュメント:

変換パイプライン | Microsoft Learn [公式]

変換 v9 | Microsoft Learn [公式]

DirectXMath プログラミング ガイド | Microsoft Learn [公式]

参考:

表示領域の設定 | so-zou.jp

深度バッファ

ドキュメント:

深度バッファー v9 | Microsoft Learn [公式]

プロジェクション変換 v9 | Microsoft Learn [公式]

Z バッファーのパフォーマンス v9 | Microsoft Learn [公式]

深度バイアス

深度オフセットは次の式で計算される。

(深度オフセット) = m * (スロープスケール深度バイアス) + (深度バイアス)

ここで m は次の式で求められる三角ポリゴンの最大深度勾配である。

m = max(abs(dz / dx), abs(dz / dy))
設定
  • スロープスケール深度バイアス (範囲-1.01.0/デフォルト0.0)
  • 深度バイアス (範囲-1.01.0/デフォルト0.0)

ドキュメント:

深度バイアス v9 | Microsoft Learn [公式]

ステンシルバッファ

ステンシル値の操作
  • Keep 現在の値を保持する
  • Zero ゼロクリアする
  • Replace 参照値で置き換える
  • IncrSat 値を 1 だけ増やし、結果をクランプする
  • DecrSat 値を 1 だけ減らし、結果をクランプする
  • Invert 値を反転させる
  • Incr 値を 1 だけ増やす (結果はラップする)
  • Decr 値を 1 だけ減らす (結果はラップする)
ステンシル参照値
  • ステンシル参照値は、通常グラフィックス API により指定される。
    SetStencilRef
  • ピクセルシェーダーにより、描画毎にピクセル単位で書き換えることができる。(※ DirectX 11.3 または 12 以降)
    SV_StencilRef

ドキュメント:

ステンシル バッファの手法 v9 | Microsoft Learn [公式]

シェーダー指定ステンシル参照値 | Microsoft Learn [公式]

参考:

ステンシルバッファ導入 (Unity) – Qiita

ステンシルバッファを使ってオブジェクトをマスクする (Unity) | KENTO

ステンシルバッファって何? | マルペケつくろーどっとコム

ステンシルによるクリッピング描画 | マルペケつくろーどっとコム

How can I mark a pixel in the stencil buffer? – Game Development Stack Exchange

深度テスト/ステンシルテスト

深度テスト
  • DepthEnable 深度テストを有効にするかどうかを指定する
  • DepthWriteMask 深度の書き込みを許可するかどうか指定する
  • DepthFunc 比較に用いる関数を指定する
ステンシルテスト
  • StencilEnable ステンシルテストを有効にするかどうかを指定する
  • StencilReadMask 読み取りマスク
  • StencilWriteMask 書き込みマスク
  • StencilFailOp テスト失敗時の操作
  • StencilDepthFailOp 深度テスト失敗時の操作
  • StencilPassOp テスト通過時の操作
  • StencilFunc 比較に用いる関数を指定する

ドキュメント:

D3D12_DEPTH_STENCIL_DESC 構造体 | Microsoft Learn [公式]

CD3DX12_DEPTH_STENCIL_DESC 構造体 | Microsoft Learn [公式]

D3D12_DEPTH_STENCILOP_DESC 構造体 | | Microsoft Learn [公式]

D3D12_DEPTH_WRITE_MASK 列挙 | Microsoft Learn [公式]

D3D12_COMPARISON_FUNC 列挙 | Microsoft Learn [公式]

D3D12_STENCIL_OP 列挙 | Microsoft Learn [公式]

earlydepthstencil | Microsoft Learn [公式]

フォグ

ドキュメント:

ピクセル霧 v9 | Microsoft Learn [公式]

D3DFOGMODE 列挙 v9 | Microsoft Learn [公式]

霧の種類 v9 | Microsoft Learn [公式]

記事をシェアする:
タグ:

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

Protected by reCAPTCHA