坐标系统 -- 四大空间及三大变换矩阵
局部空间: 物体所在的坐标空间,即对象最开始所在的地方。有可能你创建的所有模型都以(0, 0, 0)为初始位置,然而它们会最终出现在世界的不同位置。
世界空间: 如果我们将所有的物体导入到程序当中,它们有可能会全挤在世界的原点(0, 0, 0)上,这并不是我们想要的结果。我们希望物体在一个大的世界空间中合理地位于我们想让它处在的位置。
观察空间: 就是从摄像机的视角所观察到的空间。将世界空间坐标转化为用户视野前方的坐标。
裁剪空间: 将所有的坐标落在一个特定的范围内,任何在这个范围之外的点都被裁剪掉。
OpenGL对裁剪坐标执行透视除法,从而将它们变换到标准化设备坐标。
OpenGL会使用glViewPort内部的参数来将标准化设备坐标映射到屏幕坐标。
每个坐标都关联了一个屏幕上的点,这个过程称为视口变换。