用AI做了一款微信小游戏,却发现上传不了

0 阅读3分钟

封面图

引言

哈喽大家好,我是亿元程序员,一位有着8年游戏行业经验的主程。

有小伙伴私信笔者:

老师,最近我用AI做了一款微信小游戏,准备上线的时候却发现上传不了,这是为什么呀?

随后发来一张截图:

还是4MB的问题

原来是包体大小超过了限制,这通常需要进行包体优化或者进行分包处理。

言归正传,本期就带大家一起实战看看,Cocos微信小游戏如何进行分包设置。

一.为什么上传不了?

我们一起看看官方文档:

这和“主播不能超过140斤”大同小异

简单解释一下,4M是微信小游戏对游戏“小”的限制,但是随着小游戏的玩法越来越丰富,包大小明显不够用,于是推出了分包加载功能。

再看看小伙伴的项目:

代码总体积4.02MB

仅仅是主包就已经超过了4M,刚好多了0.2M。

那这应该怎么处理?

二.微信小游戏分包设置

既然官方的解决方案是分包加载,那我们来看看如何进行分包设置(当然在分包之前是对包体资源大小等进行优化,本期不探讨)。

我们先看看Cocos官方文档了解一下:

简称AB

我们在资源管理器可以看到,resources就是一个AB包(绿色的文件夹上面带个小b)

AB包显示样式

点击可以在属性检查器里看到相关属性,可以看到有个配置为AB包的选项,但因为resources是内置的,所以无法设置其反选(其他文件夹可以,设置后可以通过代码动态使用资源)。

灰的

设置成AB包的目录可以通过下面的方式设置成小游戏的分包。

核心4步

修改完之后再导出就可以看到一个主包变成了主包+分包,总大小没变:

最简单的设置

再次上传就成功了:

ok

那包体大小超过30M的怎么办?

三.通过服务器加载

其实在微信小游戏之前就有这样的方案:

为优化游戏的首次启动时的等待时间,我们可以把运行必要的东西放到首包,其他东西放到后面加载(服务器)。

选择要放到服务器上的文件夹,并且勾选配置为 Bundle:

勾

构建Bundle:

只此而已

最后通过代码加载即可:

assetManager.loadBundle(
    'https://cdn.example.com/game/game1',
    (err, bundle) => {
        if (err) {
            console.error(err);
            return;
        }

        bundle.loadScene('Game', (err, scene) => {
            if (!err) {
                director.runScene(scene);
            }
        });
    }
);

以上就是Cocos微信小游戏如何进行分包设置的全部内容,如有不对,还请指出。

结语

其实小伙伴已经会用AI开发游戏了,按道理分包问题也可以让AI处理的~

文末还有很多精彩文章推荐,没看过的可以看看哦,感谢支持!

如果你对AI游戏开发也感兴趣,欢迎私信笔者,一起交流,合作,探讨!


我是"亿元程序员",一位有着8年游戏行业经验的主程。在游戏开发中,希望能给到您帮助,也希望通过您能帮助到大家。

PS : 笔者线上的小游戏**《填色之旅》《蚂蚁搬好运》《贪吃蛇掌机经典》《重力迷宫球》《打螺丝闯关》**大家可以自行点击搜索体验。

实不相瞒,想要个赞和爱心!请把该文章分享给你觉得有需要的其他小伙伴。谢谢!

推荐文章:

亿元Cocos小游戏实战合集2.0

亿元Cocos小游戏实战合集1.0

老板说最近这款游戏很火让我抄,可是我连玩都玩不明白...

这款值68亿的游戏,你不实战一下吗?安排!

小伙伴说我的拼图游戏用Mask不能合批...

俄罗斯方块谁不会做......啊?流沙版?

最近很火的一个拼图游戏,老板让我用Cocos3.8做一个...

老板说拼图游戏太卷了,让我用Cocos做个3d版本的...

敢不敢挑战用Cocos3.8复刻曾经很火的割绳子游戏?