Unity開發一些實用的提高效率的技巧


該文章參考總結自Unity微信官方

原文:

Unity小技巧介紹

 

1

如果編輯器意外崩潰了,但場景未保存,這時可以打開工程目錄,找到/Temp/_Backupscenes/文件夾,可以看到有后綴名為.backup的文件,將該文件的后綴名改為.unity拖拽到項目視圖,即可還原編輯器崩潰前的場景。

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]按鈕就會出現如下界面:

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM