拓展自定义编辑器窗口(EditorGUILayout类)

来源:互联网 发布:知秋的意思 编辑:程序博客网 时间:2024/06/05 00:12

Unity支持自行创建窗口,也支持自定义窗口布局。在Project视图中创建一个Editor文件夹,在文件夹中再创建拓展脚本。

(一)窗口

自定义窗口需要让脚本继承EditorWindow再设置MenuItem,此时在Unity导航菜单栏中GameObjec->window就可创建一个自定义窗口。


using UnityEngine;using UnityEditor;public class MyEditor : EditorWindow{    [MenuItem("GameObject/AddWindow")]    static void AddWindow()    {        //创建窗口        Rect wr = new Rect(0, 0, 1000, 500);        MyEditor window = (MyEditor)EditorWindow.GetWindowWithRect(typeof(MyEditor), wr, true, "我的窗口");        window.Show();    }}

(二)LabelField制作标签字段(常用于显示只读信息)

using UnityEngine;using UnityEditor;public class MyEditor : EditorWindow{    [MenuItem("GameObject/AddWindow")]    static void AddWindow()    {        //创建窗口        Rect wr = new Rect(0, 0, 1000, 500);        MyEditor window = (MyEditor)EditorWindow.GetWindowWithRect(typeof(MyEditor), wr, true, "我的窗口");        window.Show();    }    private void OnGUI()    {        EditorGUILayout.LabelField("Time since start: ", EditorApplication.timeSinceStartup.ToString());        this.Repaint();    }}


未完待续