zoukankan      html  css  js  c++  java
  • 开坑UnityEditor

    首先

    开始学习UnityEditor,记录一下
    编辑器扩展这部分东西以前还是不太想碰的,感觉东西又多又难,但目前需要来做一些自定义插件,提升效率,走起!
    先贴一下官方的UnityEditor API:https://docs.unity3d.com/ScriptReference/UnityEditor.html

    动手

    咱们先来个最基本的
    所有编辑器扩展的东西都要放在叫Editor的文件夹下面
    编辑器扩展要对用一个Mono组件,首先定义一个MonoBehavior

    using UnityEngine;
    
    public class Test1 : MonoBehaviour
    {
    
        public string name;
        public int id;
        public Vector3 pos;
        public GameObject box;
    
        private void Start()
        {
            Debug.Log(name);
        }
    }
    

    然后对应一个编辑器扩展组件,要引用using UnityEditor,并且继承Editor类

    using UnityEngine;
    using UnityEditor;
    
    //绑定Test1
    [CustomEditor(typeof(Test1))]
    public class EditorTest1 : Editor
    {
        //声明一个序列化成员box
        SerializedProperty mBox;
    
        public override void OnInspectorGUI()
        {
            //得到Test1对象
            Test1 mTarget = (Test1)target;
    
            //给mBox赋值
            mBox = serializedObject.FindProperty("box");
    
            //绘制参数
            mTarget.name = EditorGUILayout.TextField("Name", mTarget.name);
            //空行
            GUILayout.Space(10);
            mTarget.id = EditorGUILayout.IntField("id",mTarget.id);
            GUILayout.Space(10);
            //标签
            GUILayout.Label("Box");
            //绘制box赋值,GUILayout可以绘制样式
            EditorGUILayout.PropertyField(mBox, new GUIContent("box"), GUILayout.Height(40));
        }
    }
    
    

  • 相关阅读:
    筛选法 || POJ 1356 Prime Land
    搜索 || BFS || POJ 3278 Catch That Cow
    (素数筛) 找质数
    (map)后缀字符串
    字符串的进制
    (二进制枚举子集)买玩具
    (基础)01背包问题
    (基础)编辑距离
    (基础)最长公共字串
    最大子矩阵和
  • 原文地址:https://www.cnblogs.com/Mr147/p/13307036.html
Copyright © 2011-2022 走看看