智克六关勇夺三倍性能,《呆呆打僵尸》领衔挂机放置游戏
厂商 2018-08-21 18:10:19 浏览 人评论
近期,微信小游戏《呆呆打僵尸》迅速走红。这款由白鹭引擎(Egret Engine)开发的游戏,以H5头部作品为蓝本,项目组在重点优化了4M代码包体积、开放数据域、RES资源加载、战斗场景冗余代码包,缓动动画、eui等六大问题后,游戏性能实现提升三倍。凭借精美画质和良好市场反响,《呆呆打僵尸》入围了阿拉丁小程序6月小游戏TOP30榜单,领衔挂机放置类游戏。
突破4M限制,成功获取开放数据域
作为一款僵尸题材挂机放置小游戏,《呆呆打僵尸》由开发上线到迅速走红,一路走来并不风轻云淡。研发中首要遇到的问题即由于创建新对象池都有较大开销,初始包体积大于4M限制。微信小游戏分为“游戏包”和“本地缓存”两个存储空间,当开发者将微信小游戏在微信开发者工具中发布时,微信开发者工具会将所有微信工程中的源码和资源进行压缩打包,即“游戏包”,其包体积不得大于4M。
《呆呆打僵尸》采用了白鹭引擎提供的AssetsManager灵活定制微信小游戏缓存策略,通过 loadConfig 配置多个 resourceRoot,并将其它资源文件放置到CDN服务器上,这一策略既实现成功生成游戏包,又改善了游戏加载体验。
对于休闲竞技小游戏而言,排行榜是激发分享欲望的重要途径。《呆呆打僵尸》通过创新的排行榜玩法给于用户更多的社交乐趣。但获取社交关系链对于很多开发者而言并不容易。为了保护关系链数据,微信小游戏增加了开放数据域的概念。开放数据域是一个封闭、独立的JavaScript作用域。要让代码运行在开放数据域,需要在game.json中添加配置项openDataContext指定开放数据域的代码目录,且开放数据域只能在离屏画布(sharedCanvas)上绘制。
开发者在将sharedCanvas 绘制到主域上时,必须接触复杂的底层技术,这也成了《呆呆打僵尸》项目组开发中遇到最难克服的技术问题之一。在得到白鹭引擎官方技术团队支持后,利用白鹭开放数据域解决方案,《呆呆打僵尸》成功开发出排行榜,通过这样的方式,使游戏迅速在玩家群中裂变。
优化资源管理,提升三倍性能
《呆呆打僵尸》的画质表现极具视觉冲击力,游戏中使用了大量素材资源,例如5位英雄角色、同屏僵尸、武器弹药、金币等图片与音频素材。这些资源往往在运行时才被加载到内存中,但该游戏在开发中却缺乏有效资源加载模块。为此白鹭为其准备了一套功能完善的资源加载机制,所有资源加载的任务都交给RES模块来管理,省去了关心资源加载细节而耗费的成本。
在成功越过多个开发难题,《呆呆打僵尸》上线后却遇到了性能问题。由于玩家在升级后期,随着5位英雄解锁,同屏僵尸怪物将达40个,子弹连续射击达50发,造成性能吃紧,这一问题特别是在低端安卓机中尤为突出,体验较差。在收到技术支持请求后,白鹭官方派出专项技术小组会同项目组定位问题,制定解决方案。通过代码调优,《呆呆打僵尸》将原有冗余代码例如战斗中存在很多没必要的计算开销裁撤,同时对于战斗过程中缓动动画有可能存在内存泄露问题优化,这一方案精准实现了在低端安卓机上帧频提升三倍。
平滑解决卡顿,引发打僵尸热潮
由于《呆呆打僵尸》是由H5版本移植至小游戏,没有使用EUI,导致很多UI界面性能低下,其中滑动列表表现首当其冲。EUI是一套基于Egret核心显示列表的UI扩展库,它封装了大量的常用UI组件,能够满足大部分的交互界面需求,即使更加复杂的组件需求,也可以基于EUI已有组件进行组合或扩展。在白鹭官方专项技术小组支持下,《呆呆打僵尸》使用了eui.List虚拟布局大幅提升游戏复杂UI的流畅度,平滑的解决了游戏后期战斗场景切换明显卡顿问题。
在项目组持续优化版本后,《呆呆打僵尸》凭借魔性简单的操作玩法和超炫酷的画质带给玩家酣畅淋漓的战斗快感,迅速吸引了众多玩家沉浸其中。而在阿拉丁小程序发布的6月小游戏TOP30榜单中,《呆呆打僵尸》成功入围,也成为首款上榜的僵尸题材作品。值得期待的是,借助微信社交生态,《呆呆打僵尸》这类魔性且极具粘性的小游戏或将在今后带来巨大的商业价值空间。
相关阅读
- 刺激战场波兰M762步枪怎么搭配配件 刺激战场波兰M762步
- 王者荣耀阿轲新皮肤意外曝光 或将是战队专属皮肤
- 王者荣耀梦奇熊猫皮肤将上线 官方预告下一款新皮肤
- 天涯明月刀手游唐门PVE技能搭配 连招顺序详解
- 王者荣耀嬴政皮肤特效预览:摇滚巨星VS暗夜贵公子
- 迷你世界战斗鸡吃什么?战斗鸡饲料怎么做?[多图]
- 我的勇者魔界挑战攻略:魔界boss怎么打?[多图]
- 梦幻模拟战手游战略大师阵容怎么搭配?战略大师阵容推
- 梦幻模拟战手游巴尔加斯转职:巴尔加斯怎么转职好?[多
- 梦幻模拟战手游银狼怎么样?银狼转职选择推荐[多图]
- 王者荣耀星元皮肤召唤活动攻略:星元皮肤召唤活动地址
- 绝地求生刺激战场101降落伞多少钱?101降落伞价格分享
- 第五人格联合狩猎求生者攻略:联合狩猎求生者阵容推荐
- 绝地求生刺激战场粉红m4怎么获得?粉红m4获得方法分享
- 狐妖小红娘手游家族活跃度怎么提升?家族活跃度提升方
- 刺激战场m416皮肤怎么获得?m416粉色皮肤获取方法[多图
- 碧蓝航线布什怎么获得?布什获得方法分享
- superbunnyman手机版攻略大全:新手快速上手攻略[多图
- 剑侠情缘OL8月22日每日一题答案分享
- 王者荣耀历史战绩不显示怎么办?历史战绩不显示解决方
- 梦幻模拟战手游索菲亚转职攻略:索菲亚转职哪个好?[多
- 梦幻模拟战手游克丽丝转职推荐:克丽丝转职选什么好?
- overcooked攻略大全:全关卡通关攻略[多图]
- 绝地求生全军出击训练场怎么玩 训练场玩法技巧
- 王者荣耀s13赛季最强辅助英雄有哪些 s13赛季辅助推荐
- 我叫mt4神庙遗迹老二坎多勒副本打法攻略 BOSS坎多勒打
- 绝地求生刺激战场BerylM762介绍 BerylM762怎么样
- 第五人格机械师小红帽时装图鉴
- 绝地求生刺激战场信号枪在哪里使用 绝地求生刺激战场信
- 楚留香手游8.22日每日修炼打坐点在哪 8.22日修炼坐观万
最新评论
精彩内容推荐
更多+-
谁是MVP大魔王 IC
次元决战,玩转巅峰!8月4日歌手ICE杨长青将...
-
《最终幻想14》7.
《最终幻想14》7.0版本电子典藏包预购开启!...
-
《放开那三国3》星
征战四载,追梦不停。《放开那三国3》四周年...
-
伞舞韶华绘身入画
夏日炎炎寻清凉,新裳翩翩消暑光。夏日商城...
-
《剑侠世界端游》
《剑侠世界端游》年中资料片“与君相伴”7月...