Unity Inspector添加自定义按钮(Button)

时间:2023-01-23 23:16:17

在Unity开发游戏的时候,为了有一个更快更方便的工作流,我们往往会在Editor下开发一些方便实用的工具。在工具中,用到最多,最关键的就是按钮,它是工具的首席执行官。下面就用最简单的代码来演示添加一个自定义按钮到Inspector当中。

案例:指定坐标后克隆新物体到场景。

    1、  在Unity Assets下创建”ObjectBuilderScript”脚本,添加代码:

using UnityEngine;

public class ObjectBuilderScript : MonoBehaviour {

    public GameObject obj;

    public Vector3 spawnPoint;

    public void BuildObject() {

        Instantiate(obj, spawnPoint, Quaternion.identity);

    }

}

2、  在Unity Assets下创建”Editor”文件夹,文件夹下创建”ObjectBuilderEditor”脚本,添加代码:

using UnityEngine;

using UnityEditor;

[CustomEditor(typeof(ObjectBuilderScript))]

public class ObjectBuilderEditor : Editor {

    public override void OnInspectorGUI() {

        DrawDefaultInspector();

        ObjectBuilderScript myScript = (ObjectBuilderScript)target;

        if(GUILayout.Button("创建对象")) {

            myScript.BuildObject();

        }

    }

}

3、  场景中添加一个空的GameObject对象,挂载上” ObjectBuilderScript”脚本,在Inspector中选中需要克隆的游戏对象,填入克隆对象的出生点坐标,点击“创建对象”按钮,就将克隆对象添加到场景当中。如图:

Unity Inspector添加自定义按钮(Button)

Unity相关技术讨论可在“Paws3D学习中心”讨论学习!