前言:在学习的过程中笔记是不可缺少的,匆匆看过一遍不记笔记和实操的话总会忘掉一些知识点或者是记的不牢固,所以我写了本系列文章,一方面是强迫自己认认真真的看完一章课程,另一方面记笔记加深一下自己的记忆以及思考。所以本系列文章是我学习过程中的笔记,思考,实操以及作业然后分享给大家,欢迎大佬们指正。//出处知乎@SakuraWhite
//主题MVP矩阵运算
一、3D基础变换
二、3D旋转变换
旋转公式——给旋转矩阵,并定义一个旋转轴和角度
三、相机变换
模型空间——>视图变换——>投影
归一化(都将坐标对齐到(0,0,0))
一个旋转矩阵的置换矩阵 = 旋转矩阵的逆矩阵
换句话来说就是求,原点旋转到其他角度的矩阵,然后再求这个旋转矩阵的转置矩阵就,可以把任意角度,旋转为我们规定的摄像机角度
四、投影
模型空间——>视图变换——>投影
本质3D——>2D
得到正交投影
从右到左——(平移->缩放)
平移为负
由坐标移动到原点
按照 -x,-y,-z 移动
负的往正方向移动
加负号往反方向移动
透视投影(近大远小)
而透视投影的方式,是把远处大的面通过矩阵变换形成和后面的面,一样大小的平面再做一次正交投影,所以说正交投影的难点就是求远处的面 ,如何通过矩阵变换成后,和近处面一样大小的面
齐次坐标乘任何数仍为原来得齐次坐标
通过相似三角形,很容易就可以得到对应X Y的比例关系,换句话说就是他们的缩放关系(X Y方向的平面缩放到和后面的平面一样大)
任意一点,会映射回本身
开始推导透视投影
自此得到透视投影——>正交投影
//参考视频BV1X7411F744
//补充齐次变换