1. 2D笛卡尔坐标系(由x,y组成)

二、入门篇之图解OpenGL坐标系 - 图1

2. 3D笛卡尔坐标系(由x,y,z组成)

二、入门篇之图解OpenGL坐标系 - 图2

4. 左右手坐标系

OpenGL中,只有规范化设备坐标系是遵守左手坐标系原则,其余的均为右手坐标系。
二、入门篇之图解OpenGL坐标系 - 图3

5. 局部坐标系/物体坐标系(Model Space)

物体以自身为参考坐标系,当它旋转或平移时,其相对于自己的坐标也改变
二、入门篇之图解OpenGL坐标系 - 图4

6. 世界坐标系(Word Space)

物体以其所在的客观世界环境为参考坐标系
二、入门篇之图解OpenGL坐标系 - 图5

7. 惯性坐标系

由物体坐标系转换为世界坐标系的中间过渡坐标系称为惯性坐标系,它与物体坐标系原点重合,与世界坐标系的XY轴平行。如下图所示:
二、入门篇之图解OpenGL坐标系 - 图6

8. 观察者/摄像机坐标系(Camera Space)

以某一个角度来观察物体时,从观察者的角度形成的坐标系
二、入门篇之图解OpenGL坐标系 - 图7

9. 裁剪坐标系(Clip Space)

裁剪坐标是执行矩阵变换和透视投影之后,但在执行透视除法之前的坐标。超出裁剪空间的坐标会被丢弃。

10. 规范化设备坐标系(NDC Space)

是以屏幕中心为原点,左手坐标系原则,每个轴的取值范围为-1 ~ 1,超出范围的内容将不会显示。 右上角为(1,1,1)
二、入门篇之图解OpenGL坐标系 - 图8

11. 屏幕坐标系(Window Space)

是手机窗口对应的坐标系,以左上角为原点
二、入门篇之图解OpenGL坐标系 - 图9

12. 坐标系的转换

  • 3D数据转换成2D图形,需要经过一系列的变换,整个过程如下图所示。
    二、入门篇之图解OpenGL坐标系 - 图10

二、入门篇之图解OpenGL坐标系 - 图11

  • OpenGL中只定义了裁剪坐标系、规范化设备坐标系和屏幕坐标系。而局部坐标系(模型坐标系)、世界坐标系和相机坐标系都是为了方便用户设计而自定义的坐标系,他们的关系如下图所示:

  • 二、入门篇之图解OpenGL坐标系 - 图12