Unity 编辑器扩展

在unity自带的下拉菜单下添加按钮
       

using UnityEditor;
using UnityEngine;
public class Tools:Editor
{ 
    [MenuItem("GameObject/我的按钮 _%#&T", false,-1)]
    static void Test()
    {
        Debug.Log("test");
    }
}

新建一个下拉菜单并添加按钮

using UnityEditor;
using UnityEngine;
public class Tools:Editor
{ 
    [MenuItem("我的下拉菜单/我的按钮 _%#&T", false, -1)]
    static void Test2()
    {
        Debug.Log("test2");
    }
}

添加快捷键方法

在对应按钮名称后面加上    空格+下划线然后加上想要的按键

% - CTRL         on Windows / CMD on OSX
‘# - Shift’
& -Alt
LEFT/RIGHT/UP/DOWN - Arrow keys
F1 … F2 - F keys
HOME,END,PGUP,PGDN 

给其他组件右键菜单添加按钮

这里拿camera为例:直接右键修改某个值或者做出其他操作

using UnityEditor;
using UnityEngine; 
public class Tools:Editor
{  
    [MenuItem("CONTEXT/Camera/我的按钮")]
    static void Test1(MenuCommand cmd)
    {
        Camera camera = (Camera)cmd.context;
        camera.fieldOfView = 150;

    } 
}

在组件上添加按钮

using UnityEditor;
using UnityEngine; 
//[CustomEditor(typeof(Test))]
public class Tools:Editor
{  
    public override void OnInspectorGUI()
    { 
        Test mc = (Test)target; //这句非常重要,想要修改对应脚本的变量必须要有此句代码(或者把对应脚本变量设为静态(弊端:不可在编辑器inspector面板显示))
        base.OnInspectorGUI();//这句代码控制按钮显示在变量的位置;放在button上面代表button显示在下面
        if (GUILayout.Button("我的按钮", GUILayout.Height(30)))
        {
            mc.a = 50;
        } 
    } 
}

学习链接

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值