【问题标题】:How to get new camera direction vector when moving an arbitrary relative angle移动任意相对角度时如何获取新的相机方向矢量
【发布时间】:2014-06-04 00:51:58
【问题描述】:

我正在实现一个相机类,但遇到了一些问题

假设相机位于点 (0,0,0) 处,通过其对应的 UP 和 RIGHT 向量观察某个方向。

我有一个操纵杆控件,可让您根据上述矢量向前向后移动,或通过移动(左右)或(上下)改变方向。

如果给定 3 个向量,我怎么知道如果我想向右移动 N 度,得到的方向向量是什么??

【问题讨论】:

    标签: vector 3d camera elevation azimuth


    【解决方案1】:

    如果你在谈论旋转你的相机,它是这样完成的:每次旋转都是一个变换坐标的矩阵,所以你所要做的就是计算你的旋转矩阵,然后将它应用到 Dir, Up和您的相机的右矢量,以便在旋转完成后获得新的。

    这里有一点关于旋转矩阵的阅读(阅读 3D 旋转部分): http://mathworld.wolfram.com/RotationMatrix.html

    【讨论】:

    • 谢谢!我只使用旋转矩阵来获取相对于相机的对象坐标,但现在很清楚了。不知道有没有可能,但是给定最终的旋转矩阵(或者只是方向向量),我们可以得到方位角和仰角吗?
    • 我找到了。现在我只需编写所有代码即可使其正常工作!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多