数学基础
计算机图形学中大量使用了数学原理,尤其是矩阵和矩阵代数。
3D图形学中几乎每个方面、每种效果——移动、缩放、透视、纹理、光照、阴影等都在很大程度上以数学方式实现。
矩阵
图形学中大量使用了矩阵相关的操作,特别是变换矩阵、视图矩阵、模型矩阵和投影矩阵以及LookAt矩阵。
1. 变换矩阵
这里的变换矩阵指的是:平移矩阵、旋转矩阵以及缩放矩阵。尽管视图矩阵也是变换矩阵,但是为了因为它在后续会被频繁使用,于是我们给它个机会,独立介绍。
实际上,坐标系的变换可能同时包含旋转、平移和缩放,通过变换矩阵的合成功能,我们可以非常容易得到一个表示连续变换的矩阵。
2. 视图矩阵
在世界坐标系中,我们知道某个点的坐标 P w P_{w} Pw,但是在图形学中我们会构建一个虚拟相机,因此虚拟相机也有一个坐标系,我们需要在世界坐标系和虚拟相机坐标系之间进行变换,从而让虚拟相机观测到 P w P_{w} Pw 在其坐标系中的表示 P c P_{c}