Unity全面入門筆記3-Game面板與Hierarchy面板

初識Unity

Game面板

  • Game面板的作用

Game面板是遊戲試玩窗口,展示的是遊戲中渲染的實際場景。在Game面板中不能直接通過拖動來移動、旋轉、縮放物體,也不能在Game面板中直接點擊選中物體。

  • 進行試玩

有三個按鍵是對Game面板進行控制的,他們是:
[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-hDXqem5x-1569680558199)(file:///C:\Users\UPiracy\AppData\Local\Temp\ksohtml10188\wps1.jpg)]

Play按鈕:在2 by 3佈局下,Game面板會直接進入試玩模式;在default佈局下,Scene面板會自動被切換成Game面板,並將進入試玩模式。在試玩模式下不再能使用Unity引擎的快捷鍵,但可以在Game視圖內運行當前關卡。在試玩模式下再點擊Play會退出到編輯模式。

Pause按鈕:如果在編輯模式下先點擊Pause,再點擊Play,遊戲會在第一幀後暫停,如果在試玩模式下點擊Pause,遊戲會暫停,暫停狀態下點擊Play退出試玩模式,遊戲會同時退出暫停狀態。

Next Frame按鈕: 在Play狀態下點擊Next Frame按鈕會自動進入暫停狀態,並向後運行一幀,此後每次點擊該按鈕也會使程序運行一幀,這個按鈕的作用類似於斷點調試。

  • 調節分辨率

Game面板下的工具欄如圖所示

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-1yQWOJ8p-1569680558200)(file:///C:\Users\UPiracy\AppData\Local\Temp\ksohtml10188\wps2.jpg)]

左側的下拉選項可以選取對應的分辨率,在Free Aspect模式下,分辨率會隨着Game面板的形變而自動改變,以填滿整個Game面板,修改這個選項可以將分辨率設定爲1920x1080等常見的分辨率配置。我們經常在Free Aspect模式下測試遊戲UI的自適配功能。

Scale滑動條可以縮放Game視圖,注意在這種情況下並不是縮放攝像機,而是縮放像素,所以在放大情況下圖像可能顯示不清。

Hierarchy面板

  • 樹型結構

Hierarchy即樹形圖,一個場景中的物體是以樹形結構儲存的。Hierarchy面板中的物體,被稱爲GameObject。

在Hierarchy中,點擊一個GameObject就可以選中這個物體。按住Ctrl鍵可以進行加選和減選,而按住Shift鍵點擊兩個GameObject,可以快速的選中一連串對象。

一些GameObject前有一個三角形標記,點擊它就可以展開這個GameObject的子結點。在按住Alt鍵的情況下點擊三角標記,可以展開整個樹。

子物體所在座標系是父物體的模型空間座標系,而沒有父物體的GameObject,它們所在的座標系是世界空間座標系。當移動、旋轉、縮放物體時,它的模型空間座標系跟着進行移動、旋轉、縮放,這導致它的子物體也隨之移動、旋轉、縮放。

使用這一特性的一個實例:在一個RPG遊戲中,主角可以更換武器,已經提供了主角的模型和骨骼,以及多個武器的模型,保證每次更換武器,武器都可以準確的放在主角的手上,且主角在運動時武器依然綁定在主角的手上。實現方法是對於每個武器,將一個空GameObject放在武器需要被握着的手柄位置,作爲這個武器的軸點,然後在腳本中監控主角的右手骨骼,切換武器時將上述的空GameObject設爲右手骨骼的子物體,就可以保證武器在主角播放動畫時始終綁定在主角手上。上述腳本的寫法將在關於GameObject和Transform的章節中詳解。

  • Scene的概念

Hierarchy樹的根節點是一個場景(Scene),在下圖中,所有GameObject的根節點是Sample Scene。
[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-jN6r1Ksl-1569680558201)(C:\Users\UPiracy\AppData\Roaming\Typora\typora-user-images\1568005100264.png)]

注:雖然GameObject的根節點是Scene,但在腳本中通過transform.parent無法獲得Scene對象,如果一個GameObject的父物體不是另一個GameObject,則上述語句返回null,這一點在Transform章節中會重新強調。

並非在所有情況下Hierarchy中都只有一個Scene,如下圖中存在三個場景:New Scene 1、SampleScene和MyScene2。但在任何情況下,Hierarchy中都有且只有一個“基場景”,在上圖中基場景是New Scene 1,其它場景我們都可以稱爲“同步場景”。更多關於場景的用法我們將在接後面關於場景的章節中詳細描述。
[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-0YHpoqZf-1569680558201)(C:\Users\UPiracy\AppData\Roaming\Typora\typora-user-images\1568005276116.png)]

  • 創建GameObject

在Hierarchy面板中,我們可以創建新GameObject。我們既可以點擊左上角的Create菜單,也可以在Hierarchy面板的適當位置點擊右鍵來創建新物體。

在真實的工程中,我們經常在Hierarchy中創建的GameObject如下:

“Create Empty”:創建一個空GameObject,它默認沒有任何組件(除了Transform),包括Renderer組件,這表示它不會被渲染,不能附加材質。它的作用通常有兩個,一是作爲一個座標系,如前文提到的裝備武器的場景;二是作爲一個文件夾,在創建Prefabs和對場景中的物體進行管理時,將一部分GameObject設爲空物體的子物體,以此來將它們在Hierarchy樹型結構中隱藏。

“3D Object”->“Cube”/“Sphere”/“Capsule”:創建立方體、球體、膠囊體。一般3D遊戲的模型都是由美術提供的,作爲程序員我們不需要考慮模型的問題,而這裏創建的立方體、球體和膠囊體一般用於製作佔位符,在製作原型時頂替將來應該有模型的位置。注意,製作佔位符應當將新建的模型作爲空物體的子物體保存,這樣才方便未來替換美術資源。

”3D Object"->“Plane”/“Quad”:Plane常用作製作地板,而Quad常用作3D遊戲中的2D物體(如廣告牌和電腦屏幕)。Plane默認的大小是Quad的10倍,Plane默認的正面朝向y軸正方向,Quad朝向z軸負方向。它們都是背面剔除的,即攝像機從背面渲染時會表現爲透明。

“2D Object”->“Sprite”:2D遊戲中所有的GameObject都應以Sprite的形式實現。

“Effects”->“Particle System”:粒子系統,用於製作特效,將在粒子系統一章中詳述。

“UI”:用戶界面,細節極多,將在UI一章中詳述。

“Camera”:攝像機,將在攝像機一章中詳述。

  • 搜索物體

在Hierarchy的搜索框中搜索物體時,除了被搜索到的GameObject外的其他物體都會顯示爲灰色。如果發現Scene中物體變成了灰白色,請檢查搜索框是否已經被清空。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章