参考自《Unity3D脚本编程》-陈嘉栋

第一种:在原有菜单中添加选项

示例:在Mesh组件中添加MeshTest菜单选项

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

[AddComponentMenu("Mesh/MeshTest")]
public class AddMenuTest : MonoBehaviour {
    
	// Use this for initialization
	void Start () {
        
	}
	
	// Update is called once per frame
	void Update () {
		
	}
}


返回unity查看结果:

undefined
已经添加成功!

第二种:添加自己的菜单及选项

示例在MyMenu下添加First选项
需要注意的是:
MenuItem特性是一个编辑器类,需要放在Asset/Editor文件夹下。并且使用unityEditor命名空间。
Menu特性允许你添加菜单项到主菜单和检视面板上下文菜单,并且MenuItem特性会将所有的静态方法转变为菜单命令。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEditor;

public class AddMenuTest : MonoBehaviour {
    
    //为MyMenu菜单添加FirstMenu选项
    [MenuItem("MyMenu/FirstMenu")]
    static void FirstMenu()
    {
        Debug.Log("Click FirstMenu!");
    }
}

查看结果:

undefined
执行成功!