zoukankan      html  css  js  c++  java
  • Unity3D研究院编辑器之重写Hierarchy的右键菜单

    Hierarchy视图中选择一个游戏对象以后通过右键可以打开一个unity默认菜单,一般情况下都可以满足我们,但是我想真对某些特殊的游戏对象而展开特殊的菜单。如下图所示,比如这样:

    代码:

    using UnityEngine;
    using UnityEditor;
    using System.Collections;
     
    public class MyHierarchyMenu
    {
    	[MenuItem("Window/Test/yusong")]
    	static void Test()
    	{
    	}
     
    	[MenuItem("Window/Test/momo")]
    	static void Test1()
    	{
    	}
    	[MenuItem("Window/Test/雨松/MOMO")]
    	static void Test2()
    	{
    	}
     
     
    	[InitializeOnLoadMethod]
    	 static void StartInitializeOnLoadMethod()
    	 {
    	     EditorApplication.hierarchyWindowItemOnGUI += OnHierarchyGUI;
    	 }
     
    	 static void OnHierarchyGUI(int instanceID, Rect selectionRect)
    	 {
    	     if (Event.current != null && selectionRect.Contains(Event.current.mousePosition)
    	         && Event.current.button == 1 && Event.current.type <= EventType.mouseUp)
    	     {
    	         GameObject selectedGameObject = EditorUtility.InstanceIDToObject(instanceID) as GameObject;
    			 //这里可以判断selectedGameObject的条件
    	         if (selectedGameObject)
    	         {
    				Vector2 mousePosition = Event.current.mousePosition;
     
    				EditorUtility.DisplayPopupMenu(new Rect(mousePosition.x, mousePosition.y, 0, 0), "Window/Test",null);
    	            Event.current.Use();
    	         }			
    	     }
    	 }
     
    }
    

      

    OK 欢迎大家在下面给我留言讨论。 如果你想改Project视图的右键菜单,原理也是一样的。

    Unity版本5.3.0

  • 相关阅读:
    忍者X3 链接统计工具
    新版淘宝客广告生成器发布
    今天编写了淘宝客生成工具
    淘宝客appkey做了大范围的取消、查封
    DiscuzX3.0 发布插件
    网易博客营销插件
    [转]iOS 应用程序的生命周期
    [转]Xcode的快捷键及代码格式化
    OC——关于KVO
    OC——关于KVC
  • 原文地址:https://www.cnblogs.com/luxishi/p/6398917.html
Copyright © 2011-2022 走看看