クリップスペース座標

提供: MonoBook
2020年3月11日 (水) 01:51時点におけるAdministrator (トーク | 投稿記録)による版
ナビゲーションに移動 検索に移動

クリップスペース座標英語:clip space coordinates)とは、表示範囲(クリッピング)を表す座標系のことである。長い名称なので「クリップ空間」や「クリップ座標」とも呼ばれる。

主に3D空間で視界よりも外側にあるかどうかの判断に使われている。

OpenGLVulkanでは頂点シェーダーの実行結果はクリップ座標内にあると見なされる。

クリップ座標のポイントは4つのコンポーネントで表される。

等式

ビュー座標正規化したものであり、一般的には「−1〜+1」もしくは「0〜+1」の範囲に正規化された数値で表される。この範囲はグラフィックスAPIごとに異なる。シェーダーを移植する際にこの違いに気がつかないとハマる。

グラフィックスAPI X軸 Y軸 Z軸 備考
Direct3D, Metal (-1,1) (-1,1) (0,1)
Vulkan (-1,1) (1,-1) (0,1) Direct3DやMetalと同じに見えるがY軸が反転している。
OpenGL, OpenGL ES (-1,1) (-1,1) (-1,1) こいつだけZ軸もマイナスまである。