GameFramework 开发脚手架之 资源打包

821 阅读2分钟

项目 github地址

打开项目选GameLauncher场景,直接启动游戏。我用的是 Unity 2021.3.6f1 版本。但应该是2017之后的都支持,没有实测过。

参考

GameFramework框架详解之 资源打包和加密

  1. 老规矩,先看上面这篇文章,掌握大致的原理。
  2. 参考前文GameFramework 开发脚手架之 Resource资源管理器 了解游戏美术资源ab包的更新逻辑,本文主要是对打ab包的工具做说明。

打包工具的位置

工具栏-》Game FrameWork -》Resources Tools

三个工具配置文件,都在Editor/Resource/Configs下面

  1. ResourceCollection.xml
  • ab包和资源的映射关系。
  • 不存在的话,Resources Editor 保存之后会自动生成。
  • 可以先在这个文件配置好ab包的名字(就先定义好有哪些ab包),然后再在 Resources Editor 打开面板的时候选择ab包对应的资源。

Rsources 标签下是定义好的ab包,Assets标签下是ab包和资源的映射关系。

1698751965888.png

  1. ResourceEditor.xml
  • 打开Resources Editor面板后,资源搜索的根目录
  • 根目录下的所有资源会出现在 Resources Editor 面板的最右边的资源列表

1698752240581.png

1698752185992.png

  1. ResourceBuilder.xml

打包的基础信息,对应 Resources Builder打开的面板

1698752362972.png

1698752464081.png

两个配置类

  1. ResourceBuildConfigsPath.cs

配置上面的三个配置文件,让框架可以读取。

1698752685347.png

  1. ResourceBuildEventHandler.cs

收集并输出版本相关信息到 XXXVersion.txt,用做热更新的判断。其中XXX是平台名称。需要在Resources Editor 面板进行配置。

工具使用

  1. Resources Builder 打包的基础配置,这里就简单汇总下用到的几个目录。
  • Working 打包工作目录
  • BuildReport 打包日志报告,出问题的时候检查下这个log,看是到哪步出了问题。
  • Full 所有ab包+版本信息,需要上传服务器做热更,和Packed包配合使用。
  • Packed 需要打包到app包作为游戏包内资源,无需单独下载。拷贝到StreamingAssets目录,作为初始包资源。
  • Package 单机模式整包资源,拷贝到StreamingAssets目录。

对应配置保存文件,Assets/GameMain/Configs/ResourceBuilder.xml。

  1. Resources Editor ab包和资源的映射配置,简单汇总下几个选项
  • Load Type 磁盘加载方式。
  • packed 这个ab包是否需要放到 输出的packed目录。
  • 分配虚拟文件 这个需要手动修改ResourceCollection.xml文件

1698801999697.png

注意,所有ab包都必须至少有一个资源,否则会打包失败

启动热更模式

  • BuildIn 节点,去掉 Editor Resource Mode

1698802252741.png

  • Resource 节点,选择 Updatable

image.png

  • 部署Http 服务器,项目更目录有一个http服务器,启动起来,然后把整个full目录拖过去就好了。

image.png 然后就可以愉快的玩耍了,可以多试几次,熟悉下热更的流程。