收藏
评论

学霸笔记|掉帧卡顿启动慢运行内存不足……这些问题有解吗?

游戏再好玩,一秒掉线两秒卡顿可还行?

微信公开课讲师开发工程师叶轩分享了这一年的优化效果:在小游戏开发者和平台的共同努力下,内存降低了7.7%,启动耗时降低了46%,过滤限帧提高了9%。这几个数据意味着什么呢?

启动性能

首先来看劝退优化第一步——启动性能:

无须多言,对于塑料友谊的小游戏玩家来说,启动速度越快越好,慢则容易带来流失。

如果一个小游戏的启动速度能够从6.4s降到4.1s,流失人数可以减少17.4%,从4.1s降到3.3s,可减少21.8%。

“通过运营10年功,结果流失10秒钟”想要减少用户流失,争取到塑料玩家的塑料友情,你需要再快一点。

那么具体可以怎么优化呢?平台给出了这样几个解决方案:

1. 资源预加载:

2. 分包:尽可能将资源分包,并缩小首包大小

3. 图集:把零散的图片整理成集,方便一次性下载

4. 加快首帧渲染;

5. 引擎插件:

在平台能覆盖大多数小游戏所用引擎的情况下,引擎插件可以通过共享重复的引擎代码部分,减少玩家首次打开需要下载的代码量让玩家更快打开小游戏。

目前,小游戏平台已经实现主流引擎全面覆盖开发者只需前往所使用的引擎官网(目前已全面支持cocos、laya以及白鹭引擎)将所用的引擎更新到最新版本IDE,重新导出并上传即可。

接入门槛与效果:

只需1分钟接入,即可节省单游戏1.5M的下载流量,提升1.14s的启动速度,从而减少23%的用户流失目前,以及由351款小游戏已接入引擎插件。

运行性能

除了启动性能,运行性能也是今年优化的重点:


逻辑与渲染优化

8月份推出的安卓端排查工具Start CPU Profile,可以帮助开发者检验小游戏运行状态,将所有逻辑进行一一记录,快速排查小游戏哪里逻辑最耗时,知道哪里逻辑最耗时之后再去做优化。

优化建议:

1. 尽量使用Worker;

2. 避免同步接口,使用异步接口;

3. 减少过多局部变量使用;

4. 使用SystemInfo.benchmarkLevel;

5. 使用混合渲染模式优化子域排行榜,可减少开放数据卡顿。


内存优化

可使用开发调试接口:Take Heap Snapshot进行优化;

优化建议:

1. 调动wx.triggerGC()接口,可减少不必要的资源损耗;

2. 监听wx.onMemoryWarning,解引用不必要的资源占用,减少被系统杀掉的可能性;

3. 压缩纹理;

收藏
登录 后发表内容