Unity中如何自定义扩展Hierarchy的右键菜单功能?
- 内容介绍
- 文章标签
- 相关推荐
本文共计369个文字,预计阅读时间需要2分钟。
在游戏制作达到一定阶段后,会涌现出一些GameObject的模板。例如,敌人一定会拥有敌人行为和盒子碰撞器等组件。虽然Prefab可以用作预制件,但它是通过Prefab产生的物体和预制件本身是不同的。
游戏制作到一定阶段后,一定会出现一些GameObject的“模板”。比如一个敌人一定会有一个“Enemy Behaviour”、“Box Collider”等。虽然Prefab可以用来作为“预制件”,但是Prefab产生的物体和Prefab自身有关联,同时还要从Project菜单里去找到Prefab再拖出来。
一个解决方案是扩展编辑器菜单,就像右键Hierachry时出现的3D Object、2D Object一样。可以创造GameObject的菜单有两个,一个是顶部菜单的GameObject,另一个是Hierachry的右键菜单。
在Unity Editor Extensions – Menu Items的文章中提到了如何扩展顶部菜单.
using UnityEngine; using UnityEditor; public class MenuItems { [MenuItem("Tools/Clear PlayerPrefs")] private static void NewMenuOption() { PlayerPrefs.DeleteAll(); } }
但是没有提到Hierachry右键菜单的扩展。
本文共计369个文字,预计阅读时间需要2分钟。
在游戏制作达到一定阶段后,会涌现出一些GameObject的模板。例如,敌人一定会拥有敌人行为和盒子碰撞器等组件。虽然Prefab可以用作预制件,但它是通过Prefab产生的物体和预制件本身是不同的。
游戏制作到一定阶段后,一定会出现一些GameObject的“模板”。比如一个敌人一定会有一个“Enemy Behaviour”、“Box Collider”等。虽然Prefab可以用来作为“预制件”,但是Prefab产生的物体和Prefab自身有关联,同时还要从Project菜单里去找到Prefab再拖出来。
一个解决方案是扩展编辑器菜单,就像右键Hierachry时出现的3D Object、2D Object一样。可以创造GameObject的菜单有两个,一个是顶部菜单的GameObject,另一个是Hierachry的右键菜单。
在Unity Editor Extensions – Menu Items的文章中提到了如何扩展顶部菜单.
using UnityEngine; using UnityEditor; public class MenuItems { [MenuItem("Tools/Clear PlayerPrefs")] private static void NewMenuOption() { PlayerPrefs.DeleteAll(); } }
但是没有提到Hierachry右键菜单的扩展。

