Unity編輯器 Scene面板裡的萬向鎖現象

2021-08-07 20:21:52 字數 1698 閱讀 8386

最近在學習unity,剛好學到api裡四元數的這一章節,花了一天研究了複數和向量的各種數學計算問題,迷迷糊糊搞懂了四元數,也理解了尤拉角會產生萬向鎖

這一現象的原理。

(有興趣深入理解四元數的同學,可以看看這個**(

有事沒事搞搞unity,建立幾個cube玩玩,無意間被我發現了unity-scene面板裡對物體的旋轉也存在著萬向鎖

現象。

可以通過對物體inspector面板的transform-rotation引數和物體座標系的轉換來實現萬向鎖現象。

1.首先,隨便拉進來乙個cube作為測試,這個時候座標為(local自身座標)

2.在cube的inspector面板上修改transform-rotation-x為-90(即讓該物體圍繞x軸逆時針旋轉90度),這時候你就會發現,在(local自身座標)下,藍色的z軸這個時候是朝向上方,而相應的綠色的y軸朝向你的左方。

(不知情的人可能還不知道,萬向鎖已經產生了)

3.這個時候,將座標系改變為(global世界座標系),確實,(global世界座標系)的scene面板裡的x、y、x軸的方向的永遠不會變的,y軸仍然指向上方。

4.但此時,你可以通過物體的inspector面板

上修改rotation的y和z的值,你可以發現,無論是修改y的值還是修改z的值,物體總是圍繞垂直於【天地間】的y軸進行轉動----------------這就是傳說中的萬向鎖。

5.個人經過實驗並揣測,transform面板rotation的y控制的是(global世界座標系)

的y軸,而z控制的是(local自身座標)

的z軸。

當 --巧合的(global世界座標系)

的y軸  與  (local自身座標)

的z軸  同時指向乙個方向的時候,就會出現萬向鎖

現象。然而(global世界座標系)

的y軸的方向是始終不變的,並且經過很多實驗發現 x軸無論怎麼改變也不會有

萬向鎖

現象。總結:

local座標 :z軸 (由inspector面板transform-rotation-z控制)

global座標 :y軸 (由inspector面板transform-rotation-y控制)

inspector面板transform-rotation-x控制的具體是啥我也不太清楚。。。。。。gg。。。。沒實驗出來,若有大神見過此貼,懂得其中的緣由或者發現我的缺漏錯誤之處,請及時指出來!本人定查缺補漏!!

UNITY 多SCENE載入與編輯

unity內部場景的載入分為兩步 比如使用者有乙個大場景劃分成了若干個子場景,在所有場景載入完畢我們才會開始game play。這時我們就可以推遲所有子場景的awaking。當所有的載入第一步完成了,我們才進行所有場景的awaking。使用者可以通過將asyncoperation.allowscen...

認識Unity編輯器

儲存整個專案所有資源的載體。專案中無論是從外部匯入的包 package 資源 後面有詳細 講解 模型資源,音訊資源,還是自己建立的各種指令碼 材質等,都需要在本檢視中儲存 編輯與展現出來。scene 場景檢視 視覺化展現與編輯當前場景中所有的遊戲物件。本檢視與上面層級檢視的區別是 場景檢視是視覺化遊...

Unity編輯器拓展

有時候為了加快效率,不得不做一些方便的小工具,尤其是有那種改變體屬性,調整ui布局,或者調整字型,有選擇性的新增修改元件的時候,如果乙個兩個手動該沒問題,如果物件數量很多,而且只是做一些簡單的更改的時候,那還是推薦大家先做乙個工具,還能練練手。時候會比如我們需要用鉸鏈把一串transform連起來,...