在Cocos Creator中实现分包加载主要通过以下步骤完成,适用于微信小游戏等平台以优化首包体积:
1. 分包配置
- 文件夹设置:选中需要分包的文件夹(如
cases/01_graphics),在属性检查器中勾选“配置为子包”12。子包名默认与文件夹同名,也可自定义1。 - 资源处理:子包内的原生资源(图片、音频等)会被独立打包,但Prefab、AnimationClip等JSON类型资源仍保留在主包中1。
2. 构建流程
- 生成分包文件:构建后,子包代码会合并为独立的入口文件(如
01_graphics/game.js),资源则移动到subpackages目录下1。 - 主包优化:通过引擎裁剪(移除未使用的模块如WebGL 2.0、Spine动画等)进一步减小主包体积。
3. 加载子包
使用cc.loader.downloader.loadSubpackage动态加载子包,需传入子包名并处理回调:
javascriptCopy Codecc.loader.downloader.loadSubpackage('01_graphics', function(err) {
if (err) console.error(err);
else console.log('子包加载成功');
});
1
4. 特殊场景处理
- 首场景优化:若首场景资源过大,可新建过渡场景(如
preScene),通过脚本跳转至主场景,从而减少首包资源。 - 启动图压缩:启动插屏图资源会打包到主包,需压缩至最小。
注意事项
- 分包功能仅在构建后生效,预览时仍加载整包1。
- 微信小游戏需客户端版本6.6.7+及开发者工具1.02.1806120+支持。
通过以上步骤,可有效将游戏包体控制在平台限制内(如微信小游戏主包≤4MB)3。