满分小游戏该长啥样?评测标准首次揭秘

创造未来 2020年7月8日10:02:03
评论
已被10 人盯上 4369字阅读14分33秒
“我的小游戏为什么用户流失得那么快?”开发者经常会有这样的疑问。从我们收集到的玩家反馈来看,出现的高频词汇往往聚焦在“进不去、卡顿、黑屏”等,这些现象背后往往隐藏着启动性能、运行性能、网络性能、兼容性等多方面问题可能。那么如何评测小游戏的性能问题,又如何解决和优化它们呢?

1

为什么容易出现性能问题一局小游戏的生命周期大致包含了四个阶段:打开、启动、运行和退出小游戏的性能问题就往往集中在启动和运行两个阶段。启动阶段往往伴随着启动性能的问题,运行阶段又有CPU超载,内存占比过高等运行性能上的问题,也有网络资源加载和上传失败等这些网络性能问题,同时,在一款小游戏的广泛受众群体里又有着一系列兼容性问题。满分小游戏该长啥样?评测标准首次揭秘

2

游戏性能问题分类我们将性能问题归类为四大类,分别是启动性能,运行性能,网络性能和兼容性问题。以下是这四类问题的外在表现: 启动性能:启动耗时过长,导致在小游戏启动阶段,用户大量流失。运行性能:出现小游戏闪退,手机发烫,游戏掉帧卡顿等表现。网络性能:网络数据传输出现问题,比如资源下载失败,数据上传失败等。兼容性问题:可能出现JS错误,或者黑白屏,甚至出现功能上的异常。

3

小游戏性能评测标准

01

性能评判标准关键指标

综合大盘分析以及玩家体验发现,评测小游戏性能,有六项指标十分重要,分别是启动耗时、FPS、内存峰值、Crash、黑屏率、JSError。满分小游戏该长啥样?评测标准首次揭秘优秀的小游戏通常需要满足数值特征,比如小游戏的运行内存应该低于600M,启动时间低于3.5s,在帧率方面,棋牌类或超休闲类30帧,另外一些FPS/APG类需要达到60才足够流畅。开发者可以根据这六项标准值来不断优化,打造属于自己的满分小游戏。我们进一步为每一类性能问题又补充了多种关键指标,比如:启动性能上,由总启动耗时来反映;运行性能上,补充了CPU、卡顿次数、内存异常、退出率,等等,这样一些关键指标;在网络性能上,补充了Request的失败和延迟,DownloadFile的失败和延迟,这样的关键指标;在兼容性上,补充了黑屏率、JS错误数和启动失败这样的指标。满分小游戏该长啥样?评测标准首次揭秘

02

影响性能的客观因素

环境:包括开发测试环境和现网环境在开发测试的环境,我们一般会使用固定的机器进行测试,数据比较稳定,结果比较详细;在现网环境,都是真实的玩家反馈,会出现真实使用过程中的各种情况。 维度:包括机型分档,网络环境,操作系统机型分档涵盖了高、中、低三挡设备;网络环境有WIFI,4G,3G;操作系统主要是iOS和Android。基于这些客观因素,进一步提升了性能评测方法,针对“不同的开发环境”提供了“多种维度”的“性能评测标准”。

03

性能指标的评价等级

为了更全面地提供指导意义,帮助开发者使用评测标准来界定游戏性能的好坏,更准确地分析性能问题,进一步为每个评价指标制定了三种评价等级,分别是“达标,平台建议和优秀”。每个评价等级下有一系列指标的标准值。

04

性能评判举例

我们举个例子看一下我们的评测标准到底是怎么样的。例如“总启动耗时”指标,它有“开发测试环境”和“现网环境”两种不同的开发环境。每种开发环境下有Android和iOS两个不同的操作系统,在每个操作系统下,又区分了高中低档机型,在每档机型下提供了“达标”、“平台建议值”和“优秀”三种评价等级的标准值。满分小游戏该长啥样?评测标准首次揭秘

05

性能评测标准详情

具体的性能评测标准可以描下方二维码查看详情:满分小游戏该长啥样?评测标准首次揭秘

4

性能检测工具

01

PerfDog—人工测试

传统情况下都是使用人工测试,这时候推荐使用PerfDog,这是一款非接入式来查看内存、FPS、CPU、GPU等多项指标的应用。满分小游戏该长啥样?评测标准首次揭秘我们也给大家提供了标准的测试流程,建议大家使用这个标准流程来测试自己的小游戏。比如在测试运行性能的时候,通过模拟游戏的操作,用PerfGog来记录性能指标,测3次取平均值。在测启动性能的时候,使用录屏分帧的方法来获取启动的耗时,测10次取平均值。

02

小游戏云测试—自动化性能测试

在使用传统人工测试的时候,既需要不同的设备来单独测试,而且测试的流程比较繁琐,比如测一次小游戏需要5分钟,测3-10次就非常的麻烦和耗时。“小游戏云测试服务”是微信官方提供的一站式、全方位在线测试服务,接入也非常简单,支持一键提交测试,支持多种测试方式,来保证全面覆盖游戏场景。满分小游戏该长啥样?评测标准首次揭秘小游戏云测试”功能简图原真机集群也覆盖了80%的主流机型,同时提供了非常详细的测试结果报告和专业性能数据分析。测试结果,从上图可以简单看一下,包含了启动和内存专项数据的专项解读,涵盖了全面的启动性能指标、内存运行性能指标、网络性能指标和兼容性指标。开发者使用小游戏云测试服务,可以帮助开发者节省非常多的人力和物力,来更早、更简单、更全面获取性能数据,发现性能问题。

03

小游戏云测试的测试类型

小游戏云测试为开发者提供了三种测试方式,标准化测试、录制回放测试和自定义测试:标准化测试,支持无门槛接入、一键提交,但因为是使用智能探寻算法来自动探索游戏场景,所以对于某些游戏的场景覆盖并不一定完善。 这个时候可以使用录制回放测试,它是通过模拟玩家的操作顺序来对指定游戏流程进行测试,接入门槛很低,测试覆盖率因为是有针对性的,所以是会比较高。稍后会有一个短视频来看一下录制回放测试的整个流程。

自定义测试,因为自定义测试需要开发者来自己编写测试的脚本,所以它的接入成本稍微高一些。但是因为定制化程度最高,所以覆盖率是很高的。

测试类型 运行机制 接入成本 测试覆盖
标准化测试 基于智能探索算法,由程序自动遍历游戏核心场景 无门槛 一般
录制回放测试 基于指令和节点对录制内容进行操作回放 较低 较高
自定义测试 基于测试框架,由开发者编写的测试脚本 较高

5

如何优化小游戏性能

01

优化性能的两款工具

满分小游戏该长啥样?评测标准首次揭秘 微信开发者工具微信开发者工具,它是我们开发小游戏最常用的一款IDE工具,可以帮助我们挖掘性能问题背后深层次的原因。 真机性能监控面板此外,大家可以在微信Android上面使用我们所提供的真机性能监控面板,它的使用也非常方便,只需要在预览小游戏的时候点击胶囊按钮打开就可以,它支持了三个功能,可以在真机中获得JS堆内存数据,同时可以打开内存、CGU、启动耗时等一系列的数据。

6

性能优化具体方案

01

启动时长与打开率优化

一款小游戏的启动过程可以认为包含了三个阶段:下载代码包,游戏代码注入和首屏渲染;在下载代码包的阶段可以通过精简代码包的方式来减少下载耗时。比如可以通过代码压缩混淆,图集合并,减少音频资源多种方式。另外,微信官方也提供了分包加载和引擎插件的能力,来帮助减少下载耗时。在首屏渲染阶段,它的优化原则是尽快让开发者看到游戏场景。典型的方式是降低首屏所需要的资源,另外我们也可以不依赖引擎来绘制,这样就减少了引擎代码的注入耗时。满分小游戏该长啥样?评测标准首次揭秘

02

内存优化

优化内存主要是为了避免小游戏闪退。在前期和开发者交流时,发现内存问题是开发者普遍遇到的问题。不同档型的设备的内存大小不同,稍微重度的游戏很容易在低档机下闪退。这里给大家推荐了一些常用的优化内存的策略,大家可以根据自己的小游戏的需求有针对性地选择一些策略来优化。满分小游戏该长啥样?评测标准首次揭秘

03

CPU优化

针对FPS较低,或者游戏卡顿的优化往往对CPU进行优化。可以使用异步计算的方式,使用worker多线程。将计算放到worker线程中,渲染放在主线程,可以做到一边计算一遍渲染,从而大大降低同步时渲染和计算的等待时间、减少drawcall的方式。各个引擎均提供了一些减少drawcall的策略:合理的算法,比如根据游戏内容设置动态帧率,在moba小游戏中玩家操作少的主界面设置成30帧,而战斗场景中设置成60帧,可以有效减少主界面的cpu占用。减少GC优化CPU,频繁的GC势必会占用大部分CPU资源,从而导致游戏卡顿,所以可以使用对象池减少GC。满分小游戏该长啥样?评测标准首次揭秘

04

GPU优化

GPU的优化主要是想要提升渲染能力。优化的方式主要体现在渲染资源上的调整,比如降低几何体的复杂度,降低像素复杂度,对资源进行压缩和合并等等。满分小游戏该长啥样?评测标准首次揭秘除了以上说到的优化方案外,在微信公开课《商业化实战100天-小游戏开发者学院》直播课中,讲师还进行了在线答疑,以下是部分问题节选:满分小游戏该长啥样?评测标准首次揭秘Q&A 怎么减少GC导致的卡顿?GC会导致卡顿,不GC内存高,很难平衡怎么办?GC触发的时刻一般是两种:堆的内存不足时,会自动触发GC;手动的调用GC(wx.tranggerGC)。针对堆内存不足的情况,可以使用对象池减少频繁的创建和删除对象;在小游戏开发时也要避免频繁地手动触发GC。针对频繁GC会导致卡顿,不GC会内存过高的情况,建议合理地设置GC的时机,比如在一些场景切换的时候触发GC,最大限度减少GC卡顿带来的体验上的影响。对于非重度小游戏,如果内存占用高,可能还是是内存方面出现了问题,建议也针对内存做出优化。 Android首屏打开留存率怎么提升?小游戏Android的打开率和用户进入的场景有很大的关系,比如某次诱导行为导致玩家进入小游戏,就会导致它非常低的打开率。主包大小是对启动速度影响最大的,所以要精简主包。其次,启动过程还包括框架的初始化、代码的注入等步骤,也和机型、代码本身复杂度有一定的关系,不过这里开发者能做的事情比较少。开发者可以前往微信开发文档里面来查看有性能专区的文档,对启动阶段的优化方式有非常详细的说明。 我们安卓首包降到1m了,但代码包加载留存不到50%,可能是什么原因?小游戏的首屏留存率受多种因素影响,启动耗时对留存率影响非常大,但用户进入时的场景有非常大的关系,比如某些诱导行为引入的用户或者较差的导量质量会导致非常低的打开率。 首包之前改成只有200多k,但为什么首屏渲染还是很长?可能和渲染代码有关,建议看看定位一下渲染的问题;也可以在微信小游戏开发者社区中提出问题,或者添加minigamedevop07小游戏助手帮助分析原因。 Cocos空项目跑起来首屏渲染都很长?小游戏启动主要分为代码包加载和首屏渲染两个阶段,请注意游戏启动阶段是否网络或其他较为耗时的初始化逻辑。可以通过云测试进行不同真机设备进行测试,如果问题依然存在可联系minigamedevop07小助手协助分析。 使用分包加载,下载分包太慢了怎么办?可以提供下载分包的策略,比如在游戏场景里面通过动画来提供下载分包的过程。 引擎插件在哪?欢迎关注小游戏开发文档公开课回放及更多答疑精选,请扫码观看回放。满分小游戏该长啥样?评测标准首次揭秘

课程预告小游戏开发者学院第三讲计划于7月16日20点和大家见面,带你了解《小游戏触达能力使用指南》。

课程亮点

首次解读微信小游戏各渠道下触达场景标杆案例数据化指引如何提升触达效率欢迎点击预约满分小游戏该长啥样?评测标准首次揭秘

微信公开课

微信ID:wx-gongkaike

满分小游戏该长啥样?评测标准首次揭秘

1.点击历史信息,查看更多内容

2.长按右侧二维码,关注微信公开课

长按二维码关注


枣庄滕州睿博网络服务工作室专注枣庄和枣庄滕州地区的企业网站建设定制开发服务及各大平台(百度微信支付宝头条抖音小程序开发定制。小程序免费体验。主营各类型软件系统定制开发,各平台各行业类型的小程序定制开发制作,网站系统开发定制及建设、推广,各大知名品牌网站服务器的代理销售,联系方式:微信(qq):541074440,手机号15563204499
继续阅读
weinxin
我的微信
这是我的微信扫一扫
  • 本文由 发表于 2020年7月8日10:02:03
  • 除非特殊声明,本站文章均为网络转载,如侵犯了您的版权请联系QQ:541074440,我处将尽快删除
小程序搭建助手(支持百度、微信、支付宝、抖音-头条等字节跳动平台) 滕州微信小程序产品中心

小程序搭建助手(支持百度、微信、支付宝、抖音-头条等字节跳动平台)

使用微信小程序制作神器,无需懂技术,直接套用微信小程序模板,可视化拖拽编辑,一键快速生成微信小程序。 适合所有无技术支持的中小企业、个人商家和实体店主。 适用范围 平台:百度小程序、微信小程序、支付宝小程序、字节跳动小程序; 类型:官网小程序、电商小程序、预约小程序、多门店小程序、外卖小程序、餐饮小程序、营销小程序、分销小程序、社区小程序、知识付费小程序等。 体验账户 小程序搭建助手登录面板:ma...
如何发起视频号直播? 滕州微信小程序资讯

如何发起视频号直播?

目前该功能还在开发内测中。 第一步:更新微信客户端到最新版本,确认是否开通视频号发表权限; 点击微信下方【发现】->【视频号】,轻触右上角【人物头像】后进入个人信息管理页面; 1)若展示如下图所示则表示你未开通视频号发表权限,你需要点击【发表新动态】按照页面指引开通视频号发表权限; 2)若展示如下图所示则表示你已经开通视频号发表权限,且获得了视频号直播内测功能; 若要直播带货则进入第二步,否...
73岁外婆不会用微信,怎么办? 滕州微信小程序资讯

73岁外婆不会用微信,怎么办?

一直到凌晨2点多,杭州萧山区的@小豆丁(微信昵称)才完成了她的手绘作品。早上,她将作品拍照分享到本地论坛“萧内网”,很快,就被各大媒体所报道,并登上了人民日报、新华社的公众号。她一夜间完成并迅速走红的,并不是什么艺术品,也不是暑假作业,而是一本“微信使用说明书”,送给她的外婆。“小豆丁”73岁的外婆,也是一名微信用户。外婆使用微信主要的用途是聊天和刷朋友圈。据外孙女介绍,在一个五世同堂的大家庭里,...