Vector 计算相机注视点的上方向向量

Vector 计算相机注视点的上方向向量,vector,3d,camera,plane,Vector,3d,Camera,Plane,我正在试验一些光线追踪,我被困在相机计算上。假设我有一个关注点,p,我有一个有利点,p0。所以我的相机原点是o=p0,相机方向是d=p-p0,但是我如何得到上方向向量呢?正如我所理解的,o和d定义了一个平面,我需要在该平面上提供一个滚动值或二维向量。我真的不知道如何解决这个问题 有人能给我指出正确的方向吗?通常,您会使用另一个向量作为代理,例如world up。要构建正确的上方向向量,需要使用一个技巧。因为叉积保证给出一个与原始向量正交的向量,所以你可以用它来建立矩阵 你要做的是,把方向向量和你

我正在试验一些光线追踪,我被困在相机计算上。假设我有一个关注点,p,我有一个有利点,p0。所以我的相机原点是o=p0,相机方向是d=p-p0,但是我如何得到上方向向量呢?正如我所理解的,o和d定义了一个平面,我需要在该平面上提供一个滚动值或二维向量。我真的不知道如何解决这个问题


有人能给我指出正确的方向吗?

通常,您会使用另一个向量作为代理,例如world up。要构建正确的上方向向量,需要使用一个技巧。因为叉积保证给出一个与原始向量正交的向量,所以你可以用它来建立矩阵

你要做的是,把方向向量和你的代理世界向上交叉,得到边向量,你现在可以用方向交叉边向量得到一个指向世界向上的一般方向的上向量

因此,最终得到的边投影与代理平行。如果你从上往下看,从下往上看,这显然会失败