在游戏开发中我们很可能需要一些工具,当自己开发工具的时候就需要在inspector页面进行绘制一些内容,我最近在写一些工具上的内容,这里就编写一些我学习这边的一些内容:
1、首先编写的inspector的方法都需要写到Editor文件夹下,这个文件夹没有什么要求,就是名字要写对,unity会在进入界面的时候自行进行编译内容;
[ExecuteInEditMode] //在编辑模式下运行,不需要运行游戏就会运行
[CustomEditor(typeof(Test))] //制定是那个脚本需要自定义inspector
该类必须继承Editor ;此处需要引用using UnityEditor
2、在现实该组件脚本的时候u3d会回调OnInspectorGUI()方法,如果此处不回调基类的方法就会不会显示系统 默认的UI界面,所以此处可以自己进行处理
public override void OnInspectorGUI() {
base.OnInspectorGUI();
}
用户在选择这个脚本,当将其拖动到指定的对象上时就会回调OnEnable()方法
void OnEnable() {
}
通过新建立一个SerializedObject 对象,这里target对象是editor提供的一个对象,就是要给那个脚本赋予
的inspector的对象,但是Object的对象需要用的话需要进行乡下转化就可以成为了脚本的对象,也可以采用采
用下面这种方式进行处理获取相应的序列化的对象
SerializedObject ob = new SerializedObject(target);
SerializedProperty num = ob.FindProperty("num");
此处我写了一个小的demo,这个很简单也是我摸索的一个过程
http://download.csdn.net/detail/xushuangshuang1/8544865
来源:CSDN
作者:xushuangshuang1
链接:https://blog.csdn.net/xushuangshuang1/article/details/51838428