【问题标题】:How to convert three.js rotation to blender rotation?如何将three.js 旋转转换为搅拌机旋转?
【发布时间】:2013-04-13 20:45:35
【问题描述】:

我在场景中有一些对象并使用 OrbitControls 在场景中移动相机。我找到了一些理想的相机位置/旋转来进行漂亮的渲染,所以我读取了相机位置和旋转并尝试直接在搅拌机中输入它们以获得相同的视图。

从three.js 粘贴到搅拌机相机的位置效果很好 - 我在three.js 中获得了与轨道相机相同的位置。 即使记住 Y 和 Z 已切换,旋转的工作方式也不同。 它不应该以同样的方式工作吗(只是切换 Y 和 Z)?

如果不是这样,如何转换这些值以便能够将搅拌机相机设置在与 three.js 中相同的位置? 这是我在github上写的一些截图: https://github.com/mrdoob/three.js/issues/3348 我应该如何读取相机旋转,以便它们以与 three.js 中相同的方式旋转相机? 我正在阅读 camera.rotation.x ,y ,z 。 我应该从某个全局/局部矩阵或其他方式读取旋转吗?

非常感谢您的帮助。

马西耶

【问题讨论】:

    标签: three.js


    【解决方案1】:

    为了能够从一个软件转到另一个软件,您需要找到每个软件使用的坐标系。例如,three.js 使用一个坐标系,其中正 x 向右,正 y 向上,正 z 出现在屏幕外。从我在http://en.wikibooks.org/wiki/Blender_3D:_Noob_to_Pro/Understanding_Coordinates 看到的(我没有使用过搅拌机)在搅拌机中,正 x 向右,正 y 进入屏幕,正向 z 上升。

    所以它们是不同的。但是,如果您将 three.js 系统绕 x 轴旋转 90 度,您将获得搅拌机坐标系。

    【讨论】:

    • 问题是关于相机的rotation 向量,而不是坐标系。
    • 感谢您的回答。是的,我已经注意到了坐标系统,并在通过切换 Y 和 Z 应用相机位置时将其包括在内。
    • 我认为这与局部/全局旋转有关......我读错了。我会尝试更多的实验,更准确地写下一切。谢谢
    猜你喜欢
    • 2011-07-22
    • 2018-01-28
    • 1970-01-01
    • 2017-04-21
    • 2017-02-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-20
    相关资源
    最近更新 更多