2013-04-20 104 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