3D模型、视图、投影矩阵原理
上篇文章 https://blog.csdn.net/x2017x/article/details/86750901 讲述了3D渲染用到的库以及一些调用方法,本篇将对3D渲染中的几个变换矩阵原理的理解记录下来。
projection * view * model * vec4(position, 1.0)
1. model 模型矩阵 模拟物体在世界坐标系的自旋转、缩放、平移
上图左侧为这三种变换的模型矩阵,之所以列了两列,是解释三维中坐标点用一个四维向量表示的原因(方便使用矩阵运算表示坐标变换)。注:三维坐标系中的向量则用三维向量表示,平移矩阵可理解为单位矩阵,平移不影响向量各分量大小。
2. view 视图矩阵 模拟从不同角度、位置去观察物体所展现出来的样子
3. projection 投影矩阵 模拟观察物体时近大远小的一个状态
上图为透视投影矩阵的推导公式,矩阵较复杂,影响计算效率,但效果更符合人眼视觉效果。还有些投影矩阵使用的正交投影矩阵,计算中会更快些。