unity提供的編輯器擴充套件文件其實相對較少,而且涉及到的類很多,經常會搞得開發者一頭霧水,無從下手。但是只需要對這些功能進行分類、多看api,就可以快速了解unity提供的編輯器功能。
編輯器擴充套件中重要的幾個類(本文只列舉個人經常用到的類):editor、editorwindow、editorgui、editorguilayout、gui、guilayout、editorguiutility、editorutility、assetdatabase、sceneview、handles
如果需要自定義某個元件的繪製方法,則需要新建乙個繪製指令碼,並繼承此類。
建立自定義的視窗面板,需要新建乙個繪製指令碼並繼承該類。
筆記showutility()方法會把該視窗以工具視窗的形式顯示。
主要功能是負責編輯器模式下的一些可賦值的ui元件(int、float、string、陣列、物體等賦值操作),或者其它編輯器的元件,需要自己確定各元件的大小與位置。
個人認為是editorgui的公升級版,可以自動排版各元件,並提供了豐富的排版功能,提供了更簡便的可序列化元件的賦值操作。
gui的公升級版,可以自動排版各元件,提供了豐富的排版功能。
想要在scene面板中繪製物件,首先要繫結sceneview.duringscenegui事件。該類也會提供一系列scene中繪製會用到的方法。
筆記 1、
滑鼠座標轉scene相機射線:
var mousepos = event.current.mouseposition;
mousepos.y = sceneview.camera.pixelheight - mousepos.y;
var ray = sceneview.camera.screenpointtoray(mousepos);
scene中繪製一些幾何元件,例如圓、立方體、座標、線等,並且提供一些可互動的形狀,例如:移動、縮放、旋轉等。筆記
1、如果需要在scene中繪製一些gui物件,則需要使handles.begingui()函式,繪製完畢後呼叫handles.endgui()
主要針對資源的操作,例如儲存資源、查詢資源、開啟資源等。
預製體相關操作,例如預製體的生成、關聯等。
顧名思義,當前使用者選中物體相關的操作,例如可以獲取當前選中的物體,設定選中的物體等。
可以在編輯器模式下獲取使用者的鍵鼠操作,用event.current訪問當前輸入。
使用者的拖拽相關操作。
Unity編輯器擴充套件
unity引擎除了提供大部分通用的功能以外,還為開發者提供了編輯器的擴充套件開發介面,開發者可以編寫編輯器指令碼,打造適合自己的遊戲輔助工具和定製的編輯器。以前指令碼開發中使用的一些api和元件類,都屬於執行時類,unity還提供了編輯器類用於編輯器的擴充套件開發,包括編輯器環境下使用的gui類,編...
一文搞定Vim Vi編輯器
1.vi vim的工作模式介紹 2.命令模式 3.輸入模式 4.底線命令模式 命令模式 利用vi vim 已經存在的檔案或不存在的檔案 就會預設的進入命令模式 輸入模式不可以和底線命令模式相互轉換 2.1 在命令模式下的常用指令 指令作用 h游標左移 j游標上移 k游標下移 l游標右移 0游標移動到...
Unity擴充套件編輯器三
scene檢視是編輯遊戲模型的地方,其實它還可以進行編輯,如下圖所示,我給scene檢視做了簡單的編輯 scene檢視的擴充套件是基於物件的,意思是你必須在hierarchy檢視中選擇乙個物件才行,hierarchy檢視中選擇不同的物件可以有不同的scene檢視。圖中我麼建立了乙個立方體物件,接著給...