「クリップスペース座標」の版間の差分
ナビゲーションに移動
検索に移動
Administrator (トーク | 投稿記録) |
Administrator (トーク | 投稿記録) |
||
24行目: | 24行目: | ||
| (-1,1) | | (-1,1) | ||
| (0,1) | | (0,1) | ||
+ | | | ||
|- | |- | ||
| [[Vulkan]] | | [[Vulkan]] |
2020年3月11日 (水) 01:51時点における版
クリップスペース座標(英語:clip space coordinates)とは、表示範囲(クリッピング)を表す座標系のことである。長い名称なので「クリップ空間」や「クリップ座標」とも呼ばれる。
主に3D空間で視界よりも外側にあるかどうかの判断に使われている。
OpenGLとVulkanでは頂点シェーダーの実行結果はクリップ座標内にあると見なされる。
クリップ座標のポイントは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軸もマイナスまである。 |