Unity 适配方案(新版)
旧方案暂时不支持wasm分包,所以提出了当前的新方案。如果你已经在微信平台分好了wasm,那么可以直接拿微小处理好的项目进行转换,基本可以兼容运行;复用微信99%的代码,仅需要开发者处理提取渠道相关的,在外层可以被更换。
1. 产物转换
- 通过 unity 中的微信小游戏插件,构建小游戏产物

构建好的产物结构如下:

- 下载转换工具
npm install bili-sgame-cli@latest -g # 版本需 >= 2.1.13
- 运行转换工具 跳转到buid目录(需保证目录下有 minigame 子目录),然后运行unity-v3命令
cd build
bili-sgame-cli unity-v3 <version> <appid> # 微信小游戏产物路径
转换后的产物结构如下,多出了一个biligame文件夹:

- 使用IDE打开小游戏
打开哔哩哔哩开发者工具,选择小游戏 -> 新建 -> 普通小游戏

项目目录选择刚刚转换后的 biligame 目录

2. 真机运行
真机运行前,需确认 game.json 配置与客户端环境满足以下要求,确保游戏运行在最新的原生渲染引擎之上。
开启双端高性能模式+
在 game.json 中开启如下配置:
{
"androidHighPerformance": true,
"androidHighPerformance+": true,
"iOSHighPerformance": true,
"iOSHighPerformance+": true
}
双端开启高性能模式+ 后,Android/iOS 才支持 WebGL2.0 等高渲染能力,具体可参考WebGL2.0 适配。
客户端版本要求
真机运行所需客户端版本需在 8.93 及以上。
运行验证
真机运行游戏后,通过设备左侧展示的信息确认运行环境:
Android:设备左侧需展示 [BLWebGL2XRender],表示游戏已运行在最新原生渲染引擎之上:

iOS:设备左侧需展示 FPS 等数据:

若未展示上述信息,请检查是否已正确开启双端高性能模式+,以及客户端版本是否达到 8.93 及以上。
3.API补充
部分API不支持通过C#直接调用(侧边栏、添加桌面快捷方式 和 支付(充值)),可以通过Unity插件接入。