一.Transformation
- 缩放(Scale Matrix)
- 切变(Shear Matrix)
- 旋转(Rotate)绕着原点
- 线性变换(Linear Transforms)
- 平移(非齐次坐标形式)
二.齐次坐标
-
先平移后旋转
-
不满足交换律
-
3维则是4 x 4 矩阵
-
想要将一个变换后的矩阵还原,只需要乘以他的逆矩阵即可
-
相同的将图像进行逆变换也是通过逆矩阵的方法
-
定义:旋转矩阵的逆等于旋转矩阵的转置(在数学上被称为正交矩阵)
-
3D 旋转变换
-
假设绕n轴旋转,则有
三.投影
正交投影:
摄像机无限远,所以成像时近处物体和远处物体都以原本的大小呈现;即:扔掉Z轴,其他压扁
同样是先平移后缩放
透视投影
简单来说就是近大远小,是正常的人类视角
- 其主要做法是
- 先将远处平面挤压到与目标平面相同大小
- 再将其向前移动至目标位置(正交投影)
- 此处可以用相似三角形性质来证明下面的式子
一个平面的透视投影可表现为:
由此可得:
目标齐次坐标乘以其变换矩阵 == 其透视投影表现公式,
根据矩阵的运算性质可得M(4 * 4)的矩阵内容就是其缩放系数
现在只需要求出第三行即可
假设现在需要缩放的目标平面z值等于近平面z值,则:
=>
再取原平面的中心点(受挤压不会改变)
可得一个二元二次方程组,解得:
于是挤压这一步的操作就已经完成,接下来就是正交投影:
至此全部结束
MVP:
- Model(模型)
- View(视角)
- Projection(投影)
形成可视图像