【发布时间】:2014-06-04 00:51:58
【问题描述】:
我正在实现一个相机类,但遇到了一些问题
假设相机位于点 (0,0,0) 处,通过其对应的 UP 和 RIGHT 向量观察某个方向。
我有一个操纵杆控件,可让您根据上述矢量向前向后移动,或通过移动(左右)或(上下)改变方向。
如果给定 3 个向量,我怎么知道如果我想向右移动 N 度,得到的方向向量是什么??
【问题讨论】:
标签: vector 3d camera elevation azimuth
我正在实现一个相机类,但遇到了一些问题
假设相机位于点 (0,0,0) 处,通过其对应的 UP 和 RIGHT 向量观察某个方向。
我有一个操纵杆控件,可让您根据上述矢量向前向后移动,或通过移动(左右)或(上下)改变方向。
如果给定 3 个向量,我怎么知道如果我想向右移动 N 度,得到的方向向量是什么??
【问题讨论】:
标签: vector 3d camera elevation azimuth
如果你在谈论旋转你的相机,它是这样完成的:每次旋转都是一个变换坐标的矩阵,所以你所要做的就是计算你的旋转矩阵,然后将它应用到 Dir, Up和您的相机的右矢量,以便在旋转完成后获得新的。
这里有一点关于旋转矩阵的阅读(阅读 3D 旋转部分): http://mathworld.wolfram.com/RotationMatrix.html
【讨论】: