OpenGL 使用列主序矩阵,即列矩阵,因此我们总是倒过来算的(左乘矩阵,变换效果是按从右向左的顺序进行): 投影矩阵 × 视图矩阵 × 模型矩阵 × 3D位置。
设置视口:
视图矩阵实际上就是整个世界的模型矩阵
模型变换:
平移、旋转和缩放。外加齐次坐标,近大远小。
投影变换:
投影矩阵将视图坐标系中的顶点转化到平面上。
视图变换:
视图变换的目的是为了让我们能观察到某个角度的场景(从观察者的角度来说)或者说是为了将物体从世界坐标转换到相机视线所在视图空间中来(从3D物体角度来说)。
在 OpenGL 中,eye 的默认位置是在原点,指向 Z 轴的负方向(屏幕往里),up 方向为 Y 轴的正方向。
网友评论