2013-04-20 73 views
4

我在场景中有一些物体,并使用OrbitControls在场景周围移动摄像机。我已经找到了一些理想的相机位置/旋转来制作漂亮的渲染,所以我阅读相机的位置和旋转,并试图直接在搅拌机中输入它们以获得相同的视图。如何将three.js旋转转换为混合器旋转?

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

如果不是这样如何转换这些值,以便能够在three.js相同的位置设置blender相机? 这里是我写在github上的一些截图: https://github.com/mrdoob/three.js/issues/3348 我应该如何阅读相机旋转,以便它们能像three.js一样旋转相机? 我在阅读just camera.rotation.x,y,z。 我应该从一些全球/本地矩阵或其他方式读取旋转吗?

非常感谢任何帮助。

马切伊

回答

0

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

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

+0

问题是关于相机的“旋转”矢量,而不是坐标系。 – WestLangley 2013-04-20 21:09:20

+0

感谢您的回答。是的,我已经注意到了cooridnate系统,并通过切换Y和Z来应对相机位置。 – user2301593 2013-04-20 21:32:19

+0

我认为这与本地/全球旋转有关...... meaby我读错了一个。我会尝试更多的尝试,更准确地说,谢谢 – user2301593 2013-04-20 21:50:40