unity3D 编辑器几种常见窗口调用

本文介绍了如何在Unity中实现Inspector面板的自定义方法调用、编辑器菜单栏功能、Hierarchy面板右键菜单扩展以及Project窗口的自定义操作。通过 `[ContextMenu]`、`[MenuItem]` 和 `[InitializeOnLoadMethod]` 等特性,可以方便地在Unity编辑器中增加测试功能、物体操作和文件处理。示例代码和参考资料提供了具体实现步骤。
摘要由CSDN通过智能技术生成

1.Inspector :写在继承自 MonoBehaviour 里 方便测试调用
    [ContextMenu ("方法名")]
    public void XXX()
    {
         //内容
    }
在Inspector 面板 脚本右上角 展开找到自定义方法 运行时调用

2.编辑器菜单栏 继承自 Editor 要放在Editor文件夹下 
 [MenuItem("Tools/SelectGameObjectsReplaceShader")]  //菜单栏路径 方法必须静态
    static void SelectGameObjects()
    {
    }
(1)Selection.activeGameObject 场景Inspector 选中的物体 可以获取选中及子物体所有的组件 用于查找 替换 或者 Selection.objects
(2)结合编辑器 窗口相关功能 打开窗口搞事情 可以参考 Unity3D编辑器的使用及扩展 https://www.cnblogs.com/zhonghu/p/11102775.html

3.Hierarchy面板上 选中物体 右键方法调用:参考雨松大大 的
Unity3D研究院编辑器之重写Hierarchy的右键菜单(二十二) https://www.xuanyusong.com/archives/3893  2016年02月02日 于 雨松MOMO程序研究院 发表
注意:(1)
[InitializeOnLoadMethod]
    static void StartInitializeOnLoadMethod()
    {
        //EditorApplication.hierarchyWindowItemOnGUI += OnHierarchyGUI;//注释的话 就不会被覆盖
    }
(2)[MenuItem("GameObject/我的/Test/二级/Test2", priority = 0)] MenuItem 第一个路径 为“GameObject”就可以 选中物体 右键调用方法,在上边的菜单栏 GameObject也能找到

再 结合 Selection.activeGameObject/Selection.objects 就可以对其及子物体进行操作了

4.Project窗口  [MenuItem("Assets/Svn Commit")] MenuItem 第一个路径 为“Assets”。对于文件夹操作 API不用Selection.objects 而是要用 Selection.assetGUIDs
可以参考 在Unity Project面板右键菜单的拓展 : https://blog.csdn.net/gaobiejiyi/article/details/77481730 挺详细的

以上功能 基于 unity 测试版本:Unity 2019.4.12f1 (64-bit)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值