分包概述
分包加载,是把游戏内容按一定规则拆分成几个包,在首次启动时先下载必要的包,这个必要的包称为「主包」,开发者在主包内触发其它分包的下载,从而把首次启动的下载耗时分散到游戏运行中。
但各大平台考虑到承载能力,对分包还是有大小限制的,以微信小游戏为例:
- 整个小游戏所有分包大小不超过 8M
- 单个分包/主包大小不能超过 4M
对小游戏来说,分包其实是针对代码而言,资源分包意义不大。因为对于一个游戏,包体内主要就是代码和资源。而上线游戏的资源本身就需要离散方式部署在CDN上,很少跟代码放在一个包内,即便真的放在同一个包内上传到小游戏后台,其实就是微信官方的CDN而已。因此,分包主要就是拆分代码。
分包使用
CocosCreator引擎已经封装了不同平台的分包功能,使用非常方便,主要就两步。
1、Creator编辑器选定需要设置为分包的代码目录,右侧“属性检查器”里勾选“配置为子包”,填入相应的分包名。例如:名为"subA"。
2、使用cc.loader.downloader.loadSubpackage
,传入分包名,加载相应分包。
cc.loader.downloader.loadSubpackage('subA', (err) => {
if (err) {
return console.error(e