热更接入
热更介绍
LIPASS 包含跨引擎热更新框架,支持 Unity 和 Unreal,主要解决游戏上线后的 LIPASS 内容更新问题,热更发布后,游戏无需重新发布安装包,重启即可更新 LIPASS 内容。
热更流程
- Unity
- Unreal Engine
Unity 引擎是闭源的,游戏项目组只需要按照 LIPASS 团队要求的格式,初始化 LIPASS,提供对应的游戏包,由 LIPASS 团队进行打热更包和验证的流程
Unreal 引擎是开源的,游戏项目组会按需修改部分的引擎源码,Unreal 热更文件 Pak 的打包依赖游戏项目组本地的引擎环境,LIPASS 提供了工具协助 Unreal 游戏项目组快速打出 LIPASS 内容的 Pak 文件
热更步骤
- 获取
Sample工程,打开前检查一下关键插件INTLSDK和LevelInfinite的摆放路径是否和游戏工程一致,如果一致后,用游戏使用的引擎打开Sample工程。

如上图所示,例如游戏工程下的 INTLSDK 和 LevelInfinite 放在 Plugins/ADirectory/BDirectory 目录下,那么需要将 Sample工程 里面的 INTLSDK 和 LevelInfinte 也摆放到 Plugins/ADirectory/BDirectory 目录下,保持一致
- 在菜单中,找到 LITools -> Pak Build Tool 菜单,并打开

打开后会看到以下界面:

LevelInfinite Content Module: 默认勾选 LevelInfinite 即可,包含 LIPASS 主体内容,包括图片资源,界面蓝图,Lua 等文件。对应 LevelInfinite 插件 Content 目录中的 LevelInfinite 文件夹。
Target Platform: 按照需求勾选需要打的平台即可,目前暂不支持多选
- 配置加密/签名参数
游戏一般都会做 Pak 打包加密或者签名,请把游戏工程中的打包配置同步到 Sample工程 中。最简单的方式是,通过替换 DefaultCrypto.ini 文件。
操作步骤:使用游戏的文件 游戏工程\Config\DefaultCrypto.ini 复制并替换 Sample工程\Config\DefaultCrypto.ini 文件。
为了确保替换正确,可以通过 Editor\Project Settings\Encryption 比对参数是否一致。

- 配置
UseIoStore参数
IoStore 是 UE 4.25实现的新加载系统的一部分,能够存储 IO 信息,提高 IO 性能和加速加载。
Sample工程需和游戏工程的 UseIoStore 参数保持一致

开启 IoStore 后,构建 pak 文件时,会生成3个文件:.pak, .utoc, .ucas。
- 配置
OverrideProjectName参数:
通过配置 OverrideProjectName 来保证 MountPoint 一致,从而加载热更成功
该参数应该是 OverrideProjectName, 比如 游戏工程的文件名为 GameProject.uproject, 那么这个参数就是 GameProject。

- 点击 Build 打包:
打包过程会 cook 工程,打包好的文件在 Output 目录中
- 请把
Output目录中的文件按照验证步骤来查看
验证
1.游戏项目组将打出的 Pak 文件使用对应引擎的 UnrealViewer.exe 查看内部结构和 MountPoint 是否正常

2.将打出的 Pak 文件和游戏安装包发给 LIPASS 团队后,由 LIPASS 团队进行功能验收