1变换
Overview
计算机图形学应用
1. video gamses技术上判定标准:看整个画面亮不亮-全局光照
2. 卡通风格如何表述
3. movies各种特效,越真实的越难
4. 面部捕捉
5. animations动画,包括盐雾粒子头发衣服
6. design设计
7. visualization可视化
8. virtual reality虚拟现实
9. digital illustration
10. simulation物理模拟,仿真,动画
11. GUI
12. typography 字体
计算机图形学设计内容
1. rasterization光栅化
实时:1秒30帧,相对的叫offline离线
2. curves and meshes曲线和曲面
表示
3. ray tracing光线追踪
4. animation/simulation动画, 模拟
1变换
线性代数预备知识
点乘:找夹角
如>0,说明两个向量同向forward;<0说明反向backward
叉乘:判断左右和内外
1.1变换应用
- 模型变换modeling:摆东西
- 视图变换viewing:摆照相机
- 投影变换Projection:拍照(前三个叫MVP变换)
- 透视除法:归一化到[-1,1]立方体
- 视口映射viewport:映射到屏幕
整体流程:
本地空间–>世界空间–>视图空间–>裁剪空间–>
NDC标准设备空间–>屏幕空间
1.2二维变换
- 缩放
- 翻转
- 切变
- 旋转
1.3齐次坐标
向量加个维度0,点加个维度1
仿射变换和齐次坐标的区别
齐次坐标表示仿射变换,最后一行001
1.4三维变换
正交矩阵:转置=逆
罗德里格旋转公式:关于过原点的旋转轴α和旋转角度n的矩阵
任意轴:
1.5观测变换
模型变换
视图变换:摆照相机,之后移动照相机和物体,直到照相机到原点。实际上是一个平移+旋转的过程
视图变换的三个方向:默认e在原点,g的方向-Z,t的方向Y
- position e
- gaze direction g
- up direction t
投影变换
正交投影:
注意-z轴,所以近>远
将物体全部转换到[-1,1]的立方体中,保留深度信息
透视投影
先转换成长方体,再做正交投影
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 C++学习笔记!