编辑器扩展自定义按钮以便调试

本文介绍了如何在Unity中通过编写自定义编辑器扩展来增强Inspector面板的功能,以方便在运行时进行调试和操作。通过创建一个测试脚本`Test`和一个扩展脚本`TestEditor`,实现了在Inspector面板上添加一个按钮,点击即可调用脚本中的方法,简化了调试过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

有时候在运行时需要调试更改一些东西或调用某些方法,而这在Inspector面板中无法操作,所以需要自己写个编辑器扩展按钮等来方便调试。

首先,写测试脚本,脚本中有需要的字段


using UnityEngine;

public class Test : MonoBehaviour
{
 
    public Vector3 pos;//位置
    public Transform go;//需要设置位置的物体
    public MyScript script;//需要执行的方法所在的脚本

    public void SetPosition(Vector3 pos)
    {
        go.position = pos;
        script.Method();
    }

}

public class MyScript:MonoBehaviour
{
    public void Method()
    {
        Debug.Log("执行某个脚本中的方法");
    }
}


其次,继承Editor完成编辑器扩展脚本,并将这个脚本放在名为Editor的文件夹下面

using UnityEditor;
using UnityEngine;

[CustomEditor(typeof(Test))]
public class TestEditor : Editor
{
    private Test debug;
    private void OnEnable()
    {
        debug = target as Test;
    }
    public override void OnInspectorGUI()
    {
        base.OnInspectorGUI();

        if (GUILayout.Button("设置Anchor"))
        {
            debug.SetPosition(debug.pos);
        }
    }
}

最后,在运行的时候将Test脚本挂上,并拖进来相应的物体,结果如下

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值