提前注明:本文供自己复习使用,有诸多不会,大家谨慎参考使用。
1——Unity编辑器常用特性:
[HideInInspector] 在InInspector面板上隐藏公开变量。
[SerializeField] 在InInspector面板上显示私有变量。
[Serializable] 在InInspector面板上显示自定义变量(各种自定义类的对象)。
[Range(, )] 给一个变量增加一个范围的滑动条。
[Header("")]增加一个标题。
[Tooltip("")] 给一个变量增加悬浮提示。
[Multiline()] 限制字符串有多少行。
[TextArea(, )] 限制字符串最少有多少行和最多有多少行。
[ContextMenu("")] 给脚本旁边的小齿轮增加一个随时可调用的函数。
[ContextMenuItem("功能名", "函数名")] 给一个变量增加一个随时可调用的变量(右键点击变量)
[Space()] 空格多少行
[CustomEditor()] 编辑类与相应类的联系。
[ExcuteInEditorMode] 在编辑模式下运行
[MenuItem()] 增加菜单选项,一般放于某个函数上方。
[CreateAssetMenu(fileName = "", menuName = "")] 创建资源菜单物体。
[RequireComponent(typeof())] 该脚本需要哪个组件。
2——编辑类
编辑类一般放于Editor目录下,至于Editor目录放于哪个目录下都可以,unity最终不会打包Editor目录,甚至会将多个Editor目录统一为一个Editor目录。编辑类要继承UnityEditor.Editor,使用[CustomEditor(typeof())]特性关联要编辑的类,target是正在编辑的目标,可使用它赋值。
然后重写OnInspectorGUI()函数进行相应的编辑

EditorGUILayout是进行布局相关的类,如果要开新窗口,需要让一个类继承EditorWindow,创建新窗口,并绘制。![]()


被折叠的 条评论
为什么被折叠?



