Skip to content

Unity WebGL小游戏适配方案性能标准

为什么需要性能评测标准?

Unity性能评测标准用于开发者优化游戏性能数据,提升用户体验。评测标准根据小游戏整体的性能数据表现,结合操作系统、机型分档等多种维度建立。

评测标准细则

性能基线

评测小游戏性能首先需要确定性能基线, 即先确定机型设备条件,开发者可通过机型档位映射获取机型档位的参考机型。

游戏类型说明

分类定义
重度玩法较复杂,通常包含较多游戏场景或支持多人在线游戏(eg: MMO、SLG品类等)
中度包含一定养成玩法、内置内购商城等(eg: 模拟经营、卡牌等)
轻度仅包含简单操作、无养成体系、无内购,以休闲娱乐为主(eg: 棋牌等)

指标与测量方法

Unity小游戏的启动可参考启动流程与时序

定义测量方法
首资源包游戏首个data资源文件位于导出目录/webgl/md5.webgl.data.unityweb.bin.txt, CDN使用gzip压缩
WASM代码游戏代码压缩包位于导出目录/minigame/wasmcode/md5.webgl.wasm.code.unityweb.wasm.br, CDN使用gzip压缩
核心资源除首资源包外进入游戏核心玩法所需的资源量业务自定下载,通常为AssetBundle
CALLMAIN引擎和首场景(Loading)初始化通过timelog,或日志查看“CALLMAIN耗时”
游戏初始化完成引擎和首场景完成,出现首个业务场景通过timelog, 或日志查看“游戏启动耗时”
游戏可交互完成游戏核心场景完成通常定义为用户可交互的时机,可通过启动留存上报能力上报统计。eg:休闲游戏为核心玩法,RPG游戏为创角
内存峰值内存峰值进程内存峰值,测量方法请参考优化Unity WebGL的内存
内存异常退出运行时长由于内存不足而使小游戏发生Crash时,当前游戏的运行时长,表示游戏的稳定运行时长开发者可通过 小游戏数据助手(数据-性能分析)或 MP-研发工具箱-性能数据 获取游戏的现网玩家的性能采集数据 通过小游戏数据助手查看(仅包含线上用户数据)
帧率核心玩法的平均帧率测量5分钟以上游戏核心玩法帧率,取平均值
卡顿率核心玩法的平均卡顿率测量5分钟以上游戏核心玩法卡顿率,取平均值

开发者需要关注哪些性能指标

阶段重点关注指标
启动1. 游戏初始化完成耗时 2. 游戏可交互耗时
运行1. 内存峰值 2. FPS均值 3. 卡顿率 4. 内存异常退出率(iOS) 5. 内存异常退出运行时长(iOS)
兼容性问题1. 逻辑异常 2. 黑/白屏 3. JS Error

代码与资源体积

能力下载量
首资源包(gzip压缩后)<5MB
WASM代码(br压缩后)<5MB
核心玩法资源<30MB

评测标准

评测标准更新时间:2024-08-13(历史现网标准请查阅历史评测标准

评测标准依赖于 现网真实玩家上报的性能数据云测试批量测试数据 统计得出。

注意:

  • FPS均值为大盘游戏数据计算所得,由于游戏可能会存在限帧逻辑,数据仅供参考,建议游戏依据自身游戏特性,合理控制游戏帧率表现。
  • 设备平台的内存统计口径参考社区公告《小游戏内存口径》
  • 红色指标值表示指标标准下降,未标注颜色指标值则表示当前指标项标准提升(与历史评测标准相比)或 与原有标准一致。

iOS性能评测标准

启动性能

运行性能

重点关注:内存峰值运行10mins内存峰值内存异常退出率内存异常退出运行时长

Android性能评测标准

启动性能

运行性能

评测工具

现网阶段

性能报告

为了能够帮助开发者快速了解游戏整体的性能情况,平台通过对评测标准和游戏性能数据的整合,面向开发者提供一个较为全面的大盘性能监控系统,详细可通过 性能监控系统 进行了解和使用。

性能数据

开发者可通过 小游戏数据助手(数据-性能分析)或 MP-研发工具箱-性能数据 获取游戏的现网玩家的性能采集数据。

开发阶段

使用网络模拟工具1MB/s条件

小游戏云测试

云测试服务是一套完整易用的在线测试服务,以帮助开发者更高效、更全面地进行自动化游戏性能测试、兼容性测试。更多详情可查阅小游戏云测试

性能诊断工具

微信小游戏性能诊断工具用于查看 开发版/体验版 运行时的网络和接口调用、运行性能以及启动耗时等信息,协助开发者更精确地定位问题并提供优化建议,详情可查阅性能诊断工具

Perfdog

使用PerfDog测试,PerfDog记录性能数据并上传,取平均值,每种机型测试3组数据再取平均,内存峰值取最大值。

历史评测标准

更新日期文档
2024.08.13当前标准
2023.05.17评测标准文档

Released under the MIT License.