因為unity原生編輯器或多或少不滿足業務需求或使用者的審美,我常常需要對編輯器進行擴充套件。這不,我很不滿unity原生欄位在inspect面板的顯示,希望欄位能以中文方式顯示字段,unity編輯器擴充套件這一強大的功能給了我任性的需求提供了解決之道。
只有使用過unity的都清楚你在類中定義怎樣的字段屬性,inspect面板上顯示的字段屬性就是你用英文描述的字段。可我就是把這個欄位以中文方式啊,怎麼辦?
我的解決方法是自定義乙個特性,利用這個特性獲取你希望這個字段顯示的中文字串,然後利用propertydrawer在inspectt面板重新欄位的label即可。
使用
///
/// 技能
/// [serializable]
public
class skill : scriptableobject
**實現
///
/// 能讓字段在inspect面板顯示中文字元
///[attributeusage( attributetargets.field)]
public
class fieldlabelattribute : propertyattribute
}//繫結特性描述類
[custompropertydrawer(typeof(fieldlabelattribute))]
public
class fieldlabeldrawer: propertydrawer
////獲取你想要繪製的字段
}public
override
void
ongui(rect position, serializedproperty property, guicontent label)
}
Unity 編輯器擴充套件 入門篇
目前包含功能主要有 設定預製tag 設定預製字型。右鍵複製物件路徑 絕對路徑和相對路徑 面板截圖如下 直接上 using system.io using unityeditor using unityengine using unityengine.ui public class tool tend...
Unity編輯器擴充套件
unity引擎除了提供大部分通用的功能以外,還為開發者提供了編輯器的擴充套件開發介面,開發者可以編寫編輯器指令碼,打造適合自己的遊戲輔助工具和定製的編輯器。以前指令碼開發中使用的一些api和元件類,都屬於執行時類,unity還提供了編輯器類用於編輯器的擴充套件開發,包括編輯器環境下使用的gui類,編...
Unity擴充套件編輯器三
scene檢視是編輯遊戲模型的地方,其實它還可以進行編輯,如下圖所示,我給scene檢視做了簡單的編輯 scene檢視的擴充套件是基於物件的,意思是你必須在hierarchy檢視中選擇乙個物件才行,hierarchy檢視中選擇不同的物件可以有不同的scene檢視。圖中我麼建立了乙個立方體物件,接著給...