首页 > 代码库 > Unity Editor类常用方法

Unity Editor类常用方法

http://www.cnblogs.com/zhaoqingqing/p/3944718.html

一些比较常用的Editor功能我在之前的博客中也有提到过所以就不详细写啦,今天参考了一下 麒麟子(Alex) 的博客,写的很全面,转载部分内容过来大笑

EditorApplication 主应用程序类

这个类提供了许多变量的访问,同时提供了Save等方法。 比如,你可以新建一个编辑器脚本,在它的UPDATE函数里,进行记事,以做定时保存。从而避免不必要的损失。

这个类还提供了新建场景,打开项目等操作。

如果你是在界面下使用UNITY3D,可能这个类的意义不大。 但如果你是基于U3D的命令行来构建一个一键式多平台发布方案。那这个类的地位就举足轻重了。 说到命令行,这个改天有空再和大家细说。 U3D是一个强大的工具,完全可以取代自主研发的引擎。 不管是从自动化部署还是自定义工具上,都很强大。 关键看你打不打算花时间去这样用。

当然我们在制作自己的编辑器工具时也有使用到它来做一些初始化场景的工作。

BaseHierarchySort

在Hierarchy中,所有对象默认是按首字母排序。 如果我想根据创建日期,或者是根据地理位置,又或者根据对象类型来排序,如何做呢。 这就需要用到BaseHierarchySort,我们可以重写它的Compare方法,同时,我们添加几个菜单来做切换。就能使我们的工作很加便利了。

image

EditorUtility

一看明字就知道,这货肯定提供了不少全局函数,并且多半是静态的。比如,你想弹出一个打开文件的对话框,或者保存文件的对话框。或者你要查看场景树中的某个对象是enable与否,都可以通过它来访问。更好的是,他还提供了一个弹出对话框。 你想做一些让用户选择是否确定的,或者显示一个About,可以使它。

image

参见:http://game.ceeger.com/Script/EditorUtility/EditorUtility.html

FileUtil  文件工具

这个类提供了一些文件拷贝,移动位置等操作,在命令行模式进行自动布署的时候,使用居多。

image

Help

在你的编辑器中,如果你觉得你的文字不足以表达,或者需要用户查询相关文档,那你可以使用HELP,它提供了打开网页地址的功能。

image

ObjectPreview 创建自定义预览

这个类提供了你当前选择的对象数据。 比如,在上面显示攻击和侦测范围的例子中,如果我们只是想让选中的单位才显示预览,那我们可以通过这个类的target来判定。

可以查看NGUI的UISPriteInspector.cs文件,对Sprite做了预览处理

imageimageimage

Tools 工具类,可以更好的自定义编辑器

这个类提供了对象批量查找功能,比如,如果我们的工具,想对某一类对象进行打包。 那我们直接使用FindObjectsOfType,拿到所有的对象即可。 TOOL还提供了实例化对象的功能。

Unity Editor类常用方法