【MVP矩阵】投影矩阵推导与实现

投影矩阵推导

参照games101课程,这里只列举一些信息备忘。
正交投影推导结果如下
【MVP矩阵】投影矩阵推导与实现_第1张图片

透视投影推导结果如下
【MVP矩阵】投影矩阵推导与实现_第2张图片

备注

一般情况下,透视投影我们使用的是下面的矩阵,因为视锥体的r、l、t、b信息一般不好拿到
【MVP矩阵】投影矩阵推导与实现_第3张图片
这个第三行三列和三行四列和上面一样,一行一列和二行二列不一样,怎么来的?
这里推导一下
首先aspect是横高比,aspect = r / t,一般也等于渲染窗口的横宽比,比如webgl中就是拿div的width/height计算
r = aspect * t(公式一)
还有tan(fovy/2) = t/n(公式二)这里fovy指的是y方向锥体的边和垂直视线的夹角
根据公式一和公式二可以得到
最终的结果

你可能感兴趣的:(图形学,矩阵,线性代数)