13

我想做的是从我的相机投射光线。我知道相机的 x、y 和 z 坐标,以及它的俯仰和偏航角。我需要计算它的方向向量,以便将它传递给我的光线追踪算法。

相机的向上向量是 (0, 1, 0)。“俯仰”,从摄像机的角度来看,是上下看。

(我宁愿不使用矩阵,但如果必须,我会使用)

4

1 回答 1

14

假设您的坐标系设置为满足以下条件:

(pitch, yaw)  -> (x, y, z)
(0,     0)    -> (1, 0, 0)
(pi/2,  0)    -> (0, 1, 0)
(0,    -pi/2) -> (0, 0, 1)

这将计算 (x, y, z):

xzLen = cos(pitch)
x = xzLen * cos(yaw)
y = sin(pitch)
z = xzLen * sin(-yaw)
于 2012-05-13T06:15:02.347 回答