- 资料
- PPT 1330mvp推算
- 任务:推导P矩阵
- 变换矩阵的作用
- 1.3d场景与物体投射到2d平面
- 2.为空间变换作准备
- MVP矩阵
- 补充
- 左右手坐标系
- 定义
- 注意
- 不同的建模软件或者游戏引擎中使用的坐标系是不一样
- 左
- DirectX
- Unity
- 右
- OpenGL
- 3DMAX
- 左
- 不同的建模软件或者游戏引擎中使用的坐标系是不一样
- 定义
- 左右手坐标系
- 定义
-
- 注意区分概念
- 空间space
- 模型空间
- 和模型(对象)有关的。有时模型空间也被称为对象空间或局部空间。每个模型都有自己独立的坐标空间,当它移动或旋转的时候,模型空间也会跟着它移动和旋转。比如自己的游戏模型,我们移动的时候我们的模型空间也在跟着移动,我们转身时本身的前后左右方向也跟着改变。
- 世界空间
- 它建立了我们所关心的最大的空间。世界空间可以被用于描述绝对位置(这里指的是世界坐标系中的位置),通常我们把世界空间的原点放置在游戏空间的中心。
- 观察空间
- 最大的区别在于在观察空间中我们使用的是右手坐标系,而这个是符合OpenGL的,在观察空间中我们需要把世界空间的顶点转换到观察空间,为此我们需要求的观察空间的变换矩阵,因为坐标系的不同,所以我们需要对z轴取反,并求得逆变换,
- 在观察空间还有一项就是需要将观察空间的顶点转换到裁剪空间(也被称为齐次裁剪空间),这个用于变换的矩阵叫做裁剪矩阵,也被称为投影矩阵,在观察空间中并不是真正的投影,而是准备投影的数据,即那些顶点需要保留,那些需要剔除,这是由投影方式决定的。
- 模型空间
- 坐标coordinate
- 空间space
- 注意区分概念
-
- M矩阵
- 作用
- 模型空间下的顶点坐标转到世界空间下的顶点坐标
- 模型空间
- 以自身中心为原点的空间坐标系
- 世界空间
- 以世界中心为原点的空间坐标系
- 模型空间
- 模型空间下的顶点坐标转到世界空间下的顶点坐标
-
- 变换顺序
- 缩放-旋转-平移
- 变换顺序
- 作用
- V矩阵
- 作用
- 世界空间下的顶点坐标转到视觉空间下的顶点坐标
- 视觉空间
- 摄像机中心为原点的空间坐标系
- 视觉空间
- 世界空间下的顶点坐标转到视觉空间下的顶点坐标
- 变换顺序
- 平移-旋转-z轴取反
- 解析
- 视觉空间坐标系由世界空间坐标系旋转平移得到,世界空间下的顶点坐标转到视觉空间下的顶点坐标则逆变换。
- 视觉空间使用右手坐标系
- unity 为左
- 解析
- 平移-旋转-z轴取反
- 作用
- P矩阵
- 作用
- 对 x,y,z分量进行缩放,用 w 分量做范围值。如果x,y,z都在 w 范围内,那么该点在裁剪空间内
- 判断顶点是否在可见范围内,若在可见范围内即渲染出来,若不在范围内则将该顶点剔除掉,就如第一节所说的,对于裁剪的图形,在裁剪的位置生成新的顶点来代替
- 不是真的投影,为投影做准备
- 透视投影
- 推导
- 正交投影
- 推导
- 作用
- 补充
- 光栅化阶段
- 步骤
- 1.确定顶点位置和顶点颜色
- 2.用bresenham(x,y) 得到2个顶点间的线性方程,从而确定2个顶点连线上的所有像素
- Bresenham(布雷森汉姆)是一种直线算法(通过2点坐标得到直线方程),它确定应该选择的n维光栅的点,以便形成两点之间的直线的近似近似。
- 3.通过interpolation(插值)确定步骤2所得像素的颜色
- 4.通过scanline algorithm(扫描线算法)以行的方式遍历三角形内的所有像素并确定颜色
- 1.确定顶点位置和顶点颜色
- 步骤
TA百人计划学习笔记 1.2.3数学 MVP矩阵
最新推荐文章于 2024-08-08 18:03:10 发布