接入指南 API 工具 其他

包体大小限制与资源配置

一、背景介绍

Unity 导出的 WebGL 小游戏存在资源包体积较大的问题,主包 + 分包通常在 30MB 左右。由于线上平均网速在 1–2Mb/s 范围内,用户首次加载需要 15–30 秒甚至更久,影响用户体验和转化率。

因此,平台对包体大小提出限制,并建议按需加载以优化启动速度和加载性能。


二、平台包体大小限制要求

类型包体类型限制要求说明
平台限制主包< 4MB所有资源压缩后主包大小必须小于 4MB
平台限制分包主包 < 4MB + 所有分包 < 30MB支持分包上传,整包作为兼容包上传但不计入大小限制
优化建议关键资源data.wasm ≤ 15MB;code.wasm ≤ 30MB通过自身裁剪资源等手段降低导出的包体大小,减小文件体积

三、关键资源优化建议

游戏启动速度主要受以下两个大文件制约,首次启动游戏引擎会远程网络加载这两个文件,所以这两个文件越小,启动速度越快。

1. xxx.data.unityweb(资源文件)

优化建议:

  • 使用 AssetStudio 查看并精简资源。
  • 启动阶段避免加载非首场景资源,采用 Addressable 或 AssetBundle 进行按需加载。
  • 拆分资源包,配置 Addressable 的 Bundle Mode 为分包;建议单个 AB 包体积控制在 2MB 以下。
  • 使用纹理压缩工具优化贴图资源。

2. xxx.code.unityweb(代码文件)

包含游戏的核心逻辑代码,加载后通过 WebAssembly 运行。

优化建议:

  • 控制初始化与首帧逻辑复杂度,减少 AwakeStart 和首帧 Update 的负载。

  • Unity 2021+ 可设置 PlayerSettings 的 IL2CPP 为 更小Size ,减少函数数量。

  • 启用引擎裁剪:

    Project Settings > Player > Other Settings > Optimization > Strip Engine Code
    

    并设置 Stripping Level 为最高。

  • 移除无用插件和平台代码,提升压缩率。


四、包体资源加载策略

方式一:整包加载(不推荐)

  • 所有资源合并打包为单个 RPK。
  • 包体大,无法通过平台审核,仅适用于本地测试调试。

方式二:分包加载(推荐)

适用于没有自有 CDN 的团队,资源以主包 + 子包形式分发。

打包后结构如下:

文件说明
main.rpk主包(控制在 4MB 内)
unitySubPkg.rpk分包(需控制在 30MB 内)

打包工具自动将 unitySubPkg 文件夹中的内容生成分包,并在运行时按需加载。

⚠ 若 unitySubPkg > 30MB,需优化 data.unitywebcode.unityweb

方式三:分包加载+自定义 CDN 分包(推荐)

若使用了分包加载,导出的 xxx.data.unityweb(即 webgl.data)部分>20MB 时,建议存放到自有 CDN 服务器上;

填写 webgl.zip URL 以后,在 src 同级目录下会多出 gzip 目录,该目录下资源上传到自有 CDN 上,URL 对应此 CDN 的资源地址,如下图所示:

**注:未获得 CDN 资源地址之前可以写一个示例地址方便打包出 gzip 目录,示例地址如:** http://10.15.xx.xx:8080/wasm.zip,上传后重新配置点击仅构建即可。

方式四:自定义 CDN 分包

适用于拥有自有 CDN 的团队,可将 WASM 文件独立上传至 CDN,以减小主包体积。

配置方式:

  1. 导出快游戏后,会生成 gzip/wasm.zip 文件。

  2. 上传 wasm.zip 至 CDN。

  3. 配置地址到 webgl_qg/buildUnity/env.conf 文件中的 wasmUrl 字段:

{
  "wasmUrl": "https://yourcdn.com/path/wasm.zip"
}

⚠ 建议前期调试使用整包加载,使用本地 wasm 文件进行调试。正式上线时需为每次导出配置唯一版本地址,避免多个版本混用同一个资源文件。


五、调试建议

  • 开发阶段可使用整包加载进行本地调试。
  • 可用示例地址(如 http://10.15.xx.xx:8080/wasm.zip)生成 gzip 文件夹结构。
  • 若资源加载失败,检查 CDN 是否配置了正确的跨域(CORS)和 GZIP 支持。

六、附录:资源优化参考链接

条匹配 "" 的结果

    没有搜索到与 "" 相关的内容