幼麟棋牌技术分享系列:H5棋牌游戏加载速度优化

转自:http://forum.cocos.com/t/h5/52893

HELLO,大家好。 由于业务繁忙,很久没在论坛发技术相关的贴子了。
今天想和大家一起讨论一下当下最重点的问题。《H5加载速度》

我们把幼麟麻将进行了一次优化,地址如下:http://h5.babykylin.com/h5/100z192
本以为可以轻松发版本,但在H5这个版本制作的期间也面临了许多问题, 列表如下。

1、引擎首加。
目前已经处理,引擎模块裁剪后是900KB+, 但settings文件有300KB. 还有一些其它加载。

2、场景/prefab等节点解析慢
根据官方解释,场景或者prefab的解析相对较慢。 建议把重复的节点删除,改为代码创建。
试过了,这个确实有效,但Cocos Creator的可视化编辑基本上就没卵用了。
另外,有一些复杂的界面,即使不重复的节点也很多的。 有点心累。

3、动画加载慢
这算是最大的一个效率优化点。 简单的动画要经过动画文件加载解析,动画相关资源加载,组装动画。。 最后才得已显示。 我们之前的动画是挂接到节点的Animation上的。 导致进场景很卡。
现在改为了第一次播放时加载。 进游戏房间快了很多。
但很明显这个动画组件的提升空间非常大。

4、合理规划图片资源结构,自动Atlas
加载时间过长最大的一个开销就是发起了太多的HTTP加载请求。 使用Atlas可以大大减少这个开销。 但为了避免前期不必要的加载。 最好做资源分类。 比如, 大厅的资源就放到一个Atlas中。 游戏的资源就放到另一批Atlas中。

4、资源压缩
我们使用了pngquat命令行,把web-mobile/res整体压缩了。 可以使加载量减少50%左右

以上就是我们做的优化。
目前看来,要想做到很好的加载体验。必须将场景分拆。 并且prefab的加载效率决定了我们不能大批量的使用。

比较期待Creator能从H5方向再发一点力。。。 
先去解决DDOS问题了,晚上来和大家聊。


展开阅读全文

没有更多推荐了,返回首页