导出Unity场景的所有游戏对象信息,一种是XML 一种是JSON
本篇文章我们把游戏场景中游戏对象的、旋转、缩放、平移与 Prefab 的名称导出在 XML 与 JSON 中
然后解析刚刚导出的XML 或 JSON 通过脚本把导出的游戏场景还原
在 Unity官网上下载随便下载一个demo Project,如下图所示这是我刚刚在官网上下载的一个范例程序
接着将层次视图中的所有游戏对象都封装成 Prefab 保存在资源路径中,这里注意一下如果你的Prefab 绑定的脚本中有public Object 的话 ,需要在代码中改一下
用 Find() FindTag()这类方法在脚本中Awake()方法中来拿,不然 Prefab 动态加载的时候无法赋值的,如下图所示,我把封装的Prefab 对象都放在了 Resources/Prefab 文件夹下
OK,现在我们就需要编写我们的导出工具、在 Project 视图中创建 Editor 文件夹,接着创建脚本MyEditor
因为编辑的游戏场景数量比较多,导出的时候我们需要遍历所有的游戏场景,一个一个的读取场景信息
然后取得游戏场景中所有游戏对象的Prefab 的 名称 旋转 缩放 平移
有关 XML 的使用请大家看我的上一篇文章: Unity3D 研究院之使用 C#合成解析 XML 与 JSON(四十一) 代码中我只注释重点的部分,嘿嘿
MyEditor
cs C# 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 using UnityEngine; using System
Collections; using UnityEditor; using System
Collections