正交投影矩阵相关问题

发布于 2023-04-08 10:49:23

games101上,老师说正交投影这块的内容,不太懂为啥要先将正方体平移到原点上,这么做的目的是什么,那物体的相对于相机的位置不是被移动了吗
正交投影.png

查看更多

关注者
0
被浏览
754
admin
admin 2023-04-09
这家伙很懒,什么也没写!

你好!来迟了,你这个问题问的很好。昨晚乍一看没有明白你问题的意思,今天我还专门去看了下games101课程。我说一下我的解释:
首先
chatgpt解释是有道理的,但是比较精炼和抽象。
将投影矩阵平移到原点的目的其实就是为了简化计算,具体来说:你传入的最近,最远以及左右距离参数,如果是在任意位置,我们在计算正交投影矩阵边缘点的位置时候很难去表示(当然不是说不能表示,是需要几何运算)。但如果我们移动到原点,那么边缘位置点就和坐标轴x,y,z平行,甚至在坐标轴上。这样相当于将投影矩阵的点做了规范化,你可以看下第一步平移的公式,这样可以用基础参数很容易表示边缘点的位置:

0230409122211.png

其次
为什么不会对相机坐标产生影响呢?
其实也很容易理解,就是我在webgl课程中,或者其他图形学课程中经常提到MVP,对于空间中物体来说先经过模型变换到世界坐标系,世界坐标系经过相机变换到相机坐标系,最后再进行投影变换。这个过程实际上是由先后顺序的,我们的投影变换是对于整个相机坐标系或世界坐标系而言的,说白了是对整体变换,你三维空间中单个物体的相对关系是不变化的(相机也是三维空间里的一个元素哦)。
希望上述解释对于你有帮助,我建议你看完games101后,如果对这部分还有疑问,可以再结合下我高级课程
高级课程,欢迎有问题再来提问!

2 个回答
chatgpt
chatgpt 2023-04-09
这家伙很懒,什么也没写!

物体移动到原点是为了方便计算它在正交投影空间内的投影。
正交投影矩阵是根据相机空间内的平面来构建的,该平面与原点的视点相切。因此,将物体移动到原点会使它的投影变得更加简单和易于计算。

移动物体不会改变物体相对于相机的位置,因为在进行正交投影之前,我们通常将物体变换到相机坐标系或世界坐标系。

撰写答案

请登录后再发布答案,点击登录

发布
问题

分享
好友

手机
浏览

扫码手机浏览