【Unity】 HTFramework框架(二十四)Utility编辑器实用工具

更新日期:2020年11月6日。
Github源码:[点我获取源码]
Gitee源码:[点我获取源码]

Utility编辑器实用工具简介

Utility编辑器实用工具包含多个提升开发效率、调试效率的编辑器工具。

使用Utility

批处理工具 Component Batch

ComponentBatch批处理工具用于批量处理Scene场景中任意组件。

打开 Component Batch

在这里插入图片描述
在这里插入图片描述
1.Root:批处理的根物体。
2.Component Filter:批处理目标组件的名称筛选器。
3.Component:批处理目标组件。
4.Include Inactive:是否涵盖未激活的组件。
5.Collect:开始收集组件。

批处理 Component

例如批处理Canvas物体下的所有Text组件,我们将Canvas设置为根物体。
在这里插入图片描述
在筛选栏中输入text,再点击Component下拉菜单,在筛选出来的组件中找到我们的目标组件UnityEngine.UI.Text。

注意:筛选器的作用只是为了排除多余的不符合要求的组件。
在这里插入图片描述
在这里插入图片描述
到此,我们直接点击Collect按钮就可以筛选出Canvas物体下的所有Text组件了,在这里,我们就可以批量处理Canvas物体下的四个Text组件的属性。
在这里插入图片描述

批处理工具 Project Batch

ProjectBatch批处理工具用于批量处理Project目录中的任意对象。

打开 Project Batch

在这里插入图片描述
在这里插入图片描述
1.Folder:批处理的根文件夹。
2.Object Filter:批处理目标对象的名称筛选器。
3.Object:批处理目标对象。
4.Collect:开始收集对象。

批处理 Object

例如批处理Image文件夹下的所有Texture对象,我们将Image设置为根文件夹。
在这里插入图片描述
在筛选栏中输入texture,再点击Object下拉菜单,在筛选出来的对象中找到我们的目标对象UnityEngine.Texture。

注意:筛选器的作用只是为了排除多余的不符合要求的对象。
在这里插入图片描述
在这里插入图片描述
到此,我们直接点击Collect按钮就可以筛选出Image文件夹下的所有Texture对象了,在这里,我们就可以批量处理所有Texture对象的属性。
在这里插入图片描述

程序集查看器 Assembly Viewer

AssemblyViewer用于查看当前程序域的所有程序集,功能包括浏览程序集中所有类型,浏览类型的所有字段、属性、方法等,是开发编辑器工具的得力助手。

打开程序集查看器

在这里插入图片描述

使用程序集查看器

例,使用程序集查看器实现编辑器的实用功能:快捷键清理控制台

首先我们要想到,一键清理控制台的功能是Unity编辑器提供的,所以我们只需要反射到那个清理控制台的方法,直接调用就可以了。

所以最重要的工作就是找到那个Unity编辑器中用来清理控制台的方法。

毫无疑问,所有编辑器功能无一例外都会从UnityEditor程序集开始查找,我们在Assembly栏找到UnityEditor程序集并选中它。
在这里插入图片描述
此时的Type栏便显示UnityEditor程序集中的所有类型,我们在搜索框输入log,经过一系列筛选,我们最终锁定了LogEntries为目标,在Type栏选中它。
在这里插入图片描述
很遗憾的得知他是一个封闭的内部类,通过继承来实现是不可能的了,不过,再牛的内部类,也难不倒反射!我们在Member栏中找到Clear方法,不出所料,这就是一键清理控制台的方法了。
在这里插入图片描述
万事俱备,只欠代码了!唰唰唰,我们三行搞定今天的任务:

        private static void ClearConsole()
        {
            Type logEntries = GetTypeInEditorAssemblies("UnityEditor.LogEntries");
            MethodInfo clearMethod = logEntries.GetMethod("Clear", BindingFlags.Static | BindingFlags.Public);
            clearMethod.Invoke(null, null);
        }

接下来,把这个方法加入到编辑器菜单,并定制快捷键就完工了,当然,框架中已经完成了这个功能。
在这里插入图片描述
结语:在一般情况下,即使有反编译工具,能够获取到源代码,但也无法改写,所以如果只是用于反射,程序集查看器将是一个不错的工具。

扩展检视器 Extended Inspector

Extended Inspector扩展检视器为Unity原生Inspector窗口的扩展,可以将任意组件打开至Extended Inspector窗口,并长期驻留,毕竟Inspector窗口只能显示当前选中组件的属性。

打开 Extended Inspector

在这里插入图片描述

在任意组件上点击鼠标右键,选择菜单Browse In Extended Inspector,便可将其添加至Extended Inspector界面,如下:

在这里插入图片描述
可以添加多个组件至Extended Inspector界面,且这些组件会持久展示在面板,即便该组件对应的目标没有被选中,除非该组件被销毁:

在这里插入图片描述
点击组件面板右上角的垃圾桶图标可以将组件从Extended Inspector界面中移除,或者关闭Extended Inspector窗口,下次打开时之前停留的组件将全部移除:

在这里插入图片描述

框架实用特性

请参阅框架实用特性

Unity HTFramework是一个基于Unity引擎开发的游戏开发框架。它提供了丰富的功能模块和工具,帮助开发者轻松快速地构建高质量的游戏。 首先,Unity HTFramework提供了游戏框架的基础结构,包括场景管理、资源管理、对象池、事件系统等。开发者可以通过使用这些模块,更高效地组织和管理游戏逻辑和资源,提升开发效率。 其次,Unity HTFramework还提供了一些实用的工具,例如状态机、UI框架、游戏配置系统等。这些工具可以帮助开发者更好地组织游戏逻辑和界面,提供更好的用户体验。 另外,Unity HTFramework还内置了一些常用的功能模块,例如网络通信、音频管理、触摸输入、手机传感器等。通过这些模块,开发者可以方便地添加和管理游戏的各种功能,极大地减少了开发时间和工作量。 除了以上功能外,Unity HTFramework还支持热更新和扩展性。开发者可以通过热更新机制,实现游戏内容、界面和功能的在线更新,无需重新发布整个游戏。同时,框架还提供了灵活的扩展机制,开发者可以根据自己的需求,自定义和扩展各种功能模块,满足不同类型的游戏开发需求。 综上所述,Unity HTFramework是一个功能丰富、易用、高效的游戏开发框架。它可以大大简化游戏开发过程,提升开发效率,帮助开发者快速构建高质量的游戏。无论是个人开发者还是团队开发者,都可以受益于这个框架的使用。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

神码编程

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值