定制棺材网站,企业培训内容有哪些,wordpress文章密码,外卖小程序源码先上矩阵的内容。在opengl中#xff0c;分别通过glOrtho函数和glFrustum函数得到正交投影矩阵和透视投影矩阵。
glOrtho 函数描述生成正交投影矩阵。 (左、 下、 近) 和 (右、 上、 近) 参数分别指定近剪裁平面上映射到窗口左下角和右上角的点#xff0c;假定眼睛位于 (0、0…先上矩阵的内容。在opengl中分别通过glOrtho函数和glFrustum函数得到正交投影矩阵和透视投影矩阵。
glOrtho 函数描述生成正交投影矩阵。 (左、 下、 近) 和 (右、 上、 近) 参数分别指定近剪裁平面上映射到窗口左下角和右上角的点假定眼睛位于 (0、0、0) 。 far 参数指定远剪裁平面的位置。 zNear 和 zFar 可以是正数或负数。 下图显示了相应的矩阵。 其中 在往NDC坐标系转化时要求z在近裁剪面位置时被转换为-1而在远裁剪面位置时转换为1
这就不难推导出以上的六个参数。
glFrustum 函数描述生成透视投影矩阵。 (左、 下、 zNear) 和 (右、 上、 zNear) 参数分别指定映射到窗口左下角和右上角的近剪裁平面上的点假设眼睛位于 (000) 。 zFar 参数指定远距剪切平面的位置。 zNear 和 zFar 都必须为正数。 下图中显示了相应的矩阵。 这里一共有六个参数需要推导。其中前四个参数通过相似三角形的比例关系得出。
参数C和D的推导也是要求z在近裁剪面位置时被转换为-1而在远裁剪面位置时转换为1。这就可以通过列一个二元一次方程组求解出来。
参考链接
glOrtho 函数 (Gl.h) - Win32 apps | Microsoft Learn
glFrustum 函数 (Gl.h) - Win32 apps | Microsoft Learn
若您还有什么疑惑之处欢迎在下方留言评论