該文章參考總結自Unity微信官方數組
原文:微信
Unity小技巧介紹app
1編輯器
若是編輯器意外崩潰了,但場景未保存,這時能夠打開工程目錄,找到/Temp/_Backupscenes/文件夾,能夠看到有後綴名爲.backup的文件,將該文件的後綴名改成.unity拖拽到項目視圖,便可還原編輯器崩潰前的場景。ide
2函數
在檢視面板中,全部能夠輸入數值類型的,均可以輸入簡單的數值表達式,按下回車後自動計算生成結果。工具
3動畫
在運行模式下調試好的數值,能夠複製組件的值(右鍵點擊組件名,在彈出界面中選擇Copy Component),而後在一般模式下選擇同一組件粘貼值上去(右鍵點擊組件名,在彈出界面中選擇Paste Component Values)。調試
4對象
Unity的各類窗口均可以自行進行調整或者選擇合適的地方停靠,想要使窗口回到原來的地方時,右鍵點擊窗口,在彈出菜單中選擇Close Tab。
5
在層次視圖的搜索框中輸入完整的腳本或組件名稱,便可找到全部綁定了該腳本或組件的對象。或者在搜索框中輸入t:加上某個類別如light,便可找到使用同類組件的對象。
6
若是想在檢視面板查看腳本的私有變量,只需點擊Inspectore,在彈出菜單中選擇Debug便可。
7
若是但願遊戲運行第一幀暫停,能夠先點擊暫停按鈕,而後點擊播放按鈕,這樣程序就會在Update函數執行一次後暫停。
8
在使用Debug.Log函數時傳遞遊戲對象給第二個參數,便可在點擊控制面板的輸出信息時自動定位到對應的遊戲對象。
9
能夠藉助編輯器自帶的標記功能爲腳本分類,在檢視面板中點擊腳本圖標下方的小三角,便可爲腳本設置顏色或選擇圖標
10
若是你的屏幕夠大,能夠在開發過程當中打開多個場景或其它視圖,這樣在調整時就能夠看到場景的不一樣區域或角度。
11
在工程視圖或層次視圖中,按住Alt鍵同時點擊對象,就能夠展開或收起該對象全部的子節點,包括嵌套子節點。
12
若是同一文件夾下的全部圖片是一個序列幀動畫,能夠將整個文件夾拖拽到工程目錄,選中全部圖片後將紋理格式改成Sprite並點擊Apply,而後將全部圖片一塊兒拖拽到層次視圖或場景,Unity會自動詢問是否建立動畫並彈出對話框詢問動畫文件保存位置。而且點擊保存後會自動在層次視圖中生成包含該動畫文件的遊戲對象,點擊運行便可看到序列幀動畫。
13
不借助Unity 5.3最新的多場景編輯工具,也能夠在兩個不一樣場景間複製對象。只需在層次視圖中選中目標對象,右鍵單擊在彈出菜單中選擇Copy,打開目標場景後粘貼到層次視圖便可。
14
在場景中選中某個對象,按F鍵會將該對象聚焦到屏幕中心,但在移動該對象時鏡頭並不會跟隨。若是按兩次F鍵,或者按Shift+F鍵,即讓鏡頭跟着該對象後面移動。
15
若是以爲在場景視圖中調整對象視角太不方便,能夠按住右鍵結合鍵盤上的A、S、W、D、Q、E鍵像走路同樣調整到合適的視角,而後點擊GameObject菜單下的Align With View便可將遊戲視圖的視角與場景視圖同步
16
檢視面板中全部的顏色字段都是支持複製和粘貼的,只需右鍵點擊顏色字段既可選擇操做。
17
在層次視圖中選中某個遊戲對象,按快捷鍵Cmd/Ctrl+D便可複製該對象,對於檢視面板中的數組字段也可已一樣的方式來複制元素。
18
從項目視圖點擊右鍵建立的腳本會自動填充一些代碼。其實這些自動填充的代碼模板也是能夠自定義的。
若是使用Mac,找到應用程序中的Unity.app,右鍵單擊顯示包內容,找到Resources>ScriptTemplates文件夾,而後選擇你要建立模板的腳本類型,複製一份本身命名並編輯後保存,而後退出編輯器以後從新打開,再在項目視圖中右鍵單擊建立,就會出現剛剛添加的腳本類型。打開新建的腳本就能夠看到自定義的模板代碼。
若是使用Windows,則在ProgramFiles(x86)或ProgramFiles目錄下的Unity/Data/Resources/ScriptTemplates文件夾下進行一樣的操做便可。
19
若是發現Unity打包安卓平臺生成的apk體積過大,能夠找到PlayerSettings中的安卓平臺,默認狀況下Device Filter設定爲FAT(ARMv7+x86),即同時打包32位和64位。若是隻需發佈到32位或64位平臺則單獨選擇對應的一種便可。這樣能夠有效減少包體積。
20
在項目視圖的搜索框中輸入資源名稱,能夠找到項目中全部具備該關鍵字的資源。將搜索類型換成Asset Store,則能夠找到Asset Store上全部擁有該關鍵字的資源,並按免費和付費分類。
21
若是但願物體能夠緊貼地面,但傾斜角度很差調整,這時能夠在物體上添加Mesh Collider和Rigidbody組件,而後點擊運行,藉助Unity的物體引擎來計算位置。待物體墜落到地面後複製全部物體,中止運行後刪除原先的物體再粘貼運行時複製的內容,並刪除全部物體上的Mesh Collider和Rigidbody組件便可。
22
若是須要拼合兩個物體,能夠本身分別在兩個物體上建立立方體看成錨點,按住V鍵進入頂點選擇模式,而後選擇錨定立方體上須要拼合的兩個頂點,便可將物體無縫拼接在一塊兒。
若是須要旋轉物體,能夠按下Cmd/Ctrl鍵後用鼠標操做旋轉,這樣可讓物體每次固定旋轉15度,最終轉到正確位置。
23
在場景中按住右鍵能夠以視點爲中心查看整個場景。若是但願物體始終保持在焦點處,能夠在層次面板雙擊該物體,而後按住Alt鍵後用鼠標查看周圍場景,而且物體一直位於焦點。
24
若是腳本出現錯誤,Unity編輯器會由於檢查到出錯而沒法進入運行模式,這時能夠在項目視圖中新建文件夾WebplayerTemplates,而後將出錯的腳本拖入此文件夾下,全部位於該文件夾下的文件都會被識別爲通常文件從而不會看成腳本被編譯,這樣就能夠運行遊戲了。
25
若是你的鼠標的中鍵是能夠按下的,能夠按住鼠標中鍵來平移整個場景。或者將鼠標移至物體上後點擊中鍵按鈕,編輯器會以平移的方式將物體中心移動鼠標位置。
26
當須要拖拽對象至檢視面板時,經常會由於操做緣由致使檢視面板的內容已經改變了。這時能夠點擊檢視面板右上方的鎖圖標,鎖定檢視面板,這樣不論其它視圖如何切換,檢視面板都會顯示固定內容。
27
若是編輯2D遊戲的圖片時老是不當心點選到背景,能夠在Layer裏邊設置哪些層是鎖定或不可見的,將背景層鎖定後就不能點選到它了,這樣在編輯時就不會出現誤操做。但鎖定圖層後仍是能夠從層次面板上選中背景來進行調整,這樣就不用每次反覆鎖定和解鎖圖層。
28
在float型的字段前添加範圍屬性聲明如[Range(0, 10)],便可在檢視面板中使用滑動條來設置該字段的值。
29
對一組字段使用屬性聲明[Heaader(「XX」)],能夠在檢視面板中將字段進行分組。
30
從Unity 5開始,新建場景默認會帶有天空盒,能夠利用Unity自帶的天空盒材質來自定義天空盒顏色。
31
若是經常不當心進入播放模式後編輯場景內容,其實能夠依次點擊菜單項Edit > Preferences > Colors > Playmode設置編輯器在進入播放模式後的顏色,與正常模式下明顯區分開來。
32
將鼠標聚焦於編輯器內的某個窗口,按住Shift+空格鍵,能夠將該窗口最大化至編輯器範圍或者還原爲原先大小。
33
若是場景中某個物體與另外一物體相對的位置、旋轉及縮放均保持不變,那麼在調整目標物體的方向時,能夠先選中編輯器界面的小工具,按住Ctrl/Cmd+Shift鍵,這樣在操做其中一個物體時,另外一個也會隨之變化。
34
若是腳本中有變量名打錯,須要批量修改,在Mac上能夠按住Cmd+R鍵,Windows上按住F2鍵,而後選中須要修改的變量名進行批量修改。
35
使用UI中的Mask組件時,須要指定一張圖片做爲遮罩對其子對象進行裁剪,取消勾選組件上的Show Mask Graphic則能夠在保持裁剪效果的同時隱藏Mask自己的圖片。
36
在設置全部顏色類型的屬性時,能夠將當前顏色值加入預設,該預設會保存在本地且能夠在不一樣的工程間共用。
37
矩形工具也能夠用來操做3D物體
38
爲字段聲明的代碼中加上[Tooltip(「XX」)]屬性聲明,在檢視面板中,當鼠標懸停在字段名上,會出現Tooltip中指定的提示信息,讓策劃人員能更好地理解字段表明的意思。
39
在層級視圖中選中游戲對象,按快捷鍵Shift + Alt + A能夠快速設置對象激活狀態。
40
在層級視圖中選中游戲對象後,依次點擊菜單項GameObject > Align With View Selected,能夠快速將場景視圖聚焦到當前選中的對象
41
在層級視圖中選中游戲對象後,依次點擊菜單項GameObject > Move To View,或是使用快捷鍵Shift + Cmd/Ctrl + F,能夠快速將選中的對象移動至場景視圖中心位置。
42
在編輯過Prefab以後,若是但願將Prefab的某個屬性值恢復爲初始值,只需右鍵點擊該屬性,在彈出菜單中選擇Revert Value To Prefab便可。注意:只能回覆到Prefab上次保存時的狀態。
43
Unity默認會在檢測到項目腳本或資源有更改後自動進行刷新,若是不但願Unity編輯器忽然刷新,能夠依次點擊菜單項Unity(Windows下是Editor) > Preference,取消勾選General下的Auto Refresh。在須要刷新時依次點擊菜單項Assets > Refresh手動進行刷新。
44
其實Unity編輯器中還能夠顯示自定義的提示界面,只需編寫繼承自EditorWindow的編輯器類,簡單的調用如下函數便可:
ShowNotification(new GUIContent(EditorGUILayout.TextField(「XX")));
其中XX是界面須要顯示的提示信息。例如,使用以下代碼:
依次點擊菜單項Edit > Test,再點擊[Show Notification]按鈕就會出現以下界面: