Unity3d 开发(十)使用uTomate自动化打包流程

在开发过程中,打包是个比较烦的事情。当不能全自动进行时,这种厌恶会达到极致。uTomate作为一种流程化的解决方案,能比较友好的解决打包问题,这篇文章主要探讨,通过这个插件完成基础的打包流程。更多关于这个插件的使用和API信息可以去它的官网查看。

基本原理

在uTomate中有两个层级的概念,即动作和计划。动作是一个原子操作,比如复制文件夹,烘焙场景等。计划是一个流程,它会按照一定规则执行动作。

uTomate中预制了许多动作,可以通过在Project面板中右键->Create->uTomate然后选择对应的动作。有了这些,就可以流程化繁琐的工作了。

打包示例

基于这个插件我编写了Android打包流程,可以一键出包。定制的情况是将AssetBundle中的资源暂时放置到包里,未来应该会编写将AssetBundle上传到服务器上的工作流。我的文件结构如下:

Unity3d 开发(十)使用uTomate自动化打包流程_第1张图片
其中Action目录放置的是基础动作,这些动作根据不同的目的放置到对应的目录中。下面有两个计划分别是打Android包和打IOS包。

制作流程计划首先理清思路创建一系列动作,我的打包流程大体上是这样的:

  1. 打包AssetBundle
  2. 复制内容到StreamingAssets目录
  3. 删除AssetBundle的生成目录
  4. 更新项目的AssetDataBase
  5. 导出Andorid包

创建好对应的动作后,在Project面板中右键->Create->uTomate->AutomationPlan可以创建一个Plain。然后点击Window->uTomate->Edit Automation plan...,选择对应的Plan,会打开Plan Editor的窗口。将刚才创建的动作拖入到窗口中,并连好线,如下图所示:

Unity3d 开发(十)使用uTomate自动化打包流程_第2张图片

运行Plan可以点击Plan Editor界面右下角的按钮,或打开Window->uTomate->MainWindow,然后选择对应计划点击右下角的Run Plan

目录迁移

由于插件中脚本较多,我将Chili4UuTomate两个目录移动到了Plugins目录下。代码要对应修改如下:

  • CUEditorResourcesLocator.cs
 public const string ResourcePath = "Plugins/Chili4U/Editor/EditorResources";
  • UTEditorResourcesLocator.cs
 public const string ResourcePath = "Plugins/uTomate/Editor/EditorResources";

这样可以保证资源正常加载。

你可能感兴趣的:(Unity3d,Unity3d,开发杂谈)