簡單聊聊 Unity中的 旋轉

2021-10-05 12:30:17 字數 909 閱讀 5832

今天來系統的學習一下unity中的幾種旋轉以及相應的一些經常用到的函式

我們平時看到的tranform裡的角就是尤拉角

這是尤拉角。這三個分量分別是繞x軸、y軸、z軸旋轉的角度。

transform.rotate(軸,space.self):以自身座標係為參考

transform.rotate(軸,space.world):以世界座標係為參考

其中軸是乙個向量(vector)

transform.eulerangles= new vector3(x,y,z)
new vector(x,y,z)為遊戲物體最終旋轉到的目標角度,x.y,z的值分別都是以0為基準,假設遊戲物體的初始角度為(x1,y1,z1),則遊戲物體從(x1,y1,z1)旋轉到(x,y,z),,同時也以世界座標係為參考,而不是以父級遊戲物體的座標系為準。

注意:unity世界中的旋轉遵循左手定則,左手方向為正方向

關於四元素的原理可以參考這個【unity技巧】四元數(quaternion)和旋轉

//將尤拉旋轉角轉換為四元素旋轉角

quaternion rotation= quaternion.euler(new vector3(x, y,z));

transform.rotation=rotation;

new vector(x,y,z)為遊戲物體最終旋轉到的目標角度,x.y,z的值分別都是以0為基準,假設遊戲物體的初始角度為(x1,y1,z1),則遊戲物體從(x1,y1,z1)旋轉到(x,y,z),,同時也以世界座標係為參考,而不是以父級遊戲物體的座標系為準。

Unity簡單鏡頭旋轉縮放

摘自 以目標為中心旋 rotation x input.getaxis mouse x 速度平滑係數 rotation y input.getaxis mouse y 速度平滑係數 滑鼠往下要作的是抬頭動作,比較符合人類的認知習慣 所以 y是 與滑鼠運動的反方向 transform.rotation...

Unity程式設計 Unity中的尤拉旋轉

是z 軸與z 軸的夾角,是交點線與x 軸的夾角。xyz代表了三個角度,它們定義了一組有序的旋轉,即圍繞z軸旋轉z度,然後圍繞x軸旋轉x度,然後圍繞y軸旋轉y度。你應該只去讀取或者直接設定這些數值,不要增加它們,因為當角度超過360度將會失敗。應該使用transform.rotate去替代執行旋轉操作...

Unity 中的旋轉和朝向

動畫中 unity中的旋轉,通常用四元數和尤拉角來表示。它們都有優缺點。unity內部用四元數,在inspector中顯示尤拉角形式,因為該方法已於理解和編輯。尤拉角由按照順序在x,y,z軸上進行的旋轉表示,當將乙個尤拉角應用到乙個gameobject時,每個軸上的旋轉都會被分別應用。四元數可以被用...