Ndc

最終更新日25 May 2017 06:07

Normalized Device Coordinates
NDCと略されることもある。
空間の範囲は$-1 \leq x \leq 1, -1 \leq y \leq 1, -1 \leq z \leq 1$
クリップ座標wで割ると正規化デバイス座標になる
クリップ座標系の各点の同次座標の x, y, z 成分を w で割った ものである。
視体積が

(1)
\begin{equation} -1 <= x ,y,z <= 1 \end{equation}

となり、 透視投影変換の場合には透視投影処理がなされる。
ここから、ビューポート変換すると左上が原点で右下が(width,height)のウィンドウ座標系になる。

カメラ座標系との関係

カメラ座標系 正規化デバイス座標
x right 1
x left -1
y top 1
y bottom -1
z -near -1
z -far 1

カメラ座標から正規化デバイス座標への変換

カメラ座標→投影変換行列→クリップ座標→Perspective division→正規化デバイス座標

(2)
\begin{align} ndc_z = \frac{clip_z}{clip_w} = -proj[2][2] - \frac{proj[3][2]}{view_z} \end{align}

正規化デバイス座標からカメラ座標への変換

さっきのを式変形して逆にする

(3)
\begin{align} view_z = \frac{proj[3][2]}{ndc_z-proj[2][2]} \end{align}


files

サポートサイト Wikidot.com