Skip to content

Latest commit

 

History

History
87 lines (63 loc) · 3.04 KB

PerfMeasure_old.md

File metadata and controls

87 lines (63 loc) · 3.04 KB

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

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

性能评测标准希望能引导开发者优化相关性能数据,提升用户体验。

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

从小游戏的运行周期来看,主要由启动和运行两个阶段产生性能问题。

启动阶段:启动时长,该数据将显著影响用户打开留存率 运行阶段:内存峰值、流畅度、CPU占用、网络等 其他兼容性问题,包括逻辑异常、黑屏等严重问题

评测标准细则

性能基线

机型档位

能力 Android参考机型 iOS参考机型
高档 ⼩⽶10(⾼通骁⻰865) iPhone13
中档 VIVO S7(⾼通骁⻰765G) 红米k30 iPhone11
低档 OPPO r9s(通骁⻰625) iPhone7/8/X

指标与测量方法

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, 或日志查看“游戏启动耗时”
游戏可交互完成 游戏核心场景完成 业务自定义,典型地:休闲游戏为核心玩法,RPG游戏为创角
内存 内存峰值 进程内存峰值,测量方法请参考优化Unity WebGL的内存
帧率 核心玩法的平均帧率 测量5分钟以上游戏核心玩法帧率,取平均值

评测工具

启动性能: 使用网络模拟工具1MB/s条件,使用Unity适配提供TimeLog窗口或运行日志获取性能数据。

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

代码与资源体积

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

Android 评测标准

高档机 中档机 低档机
首资源包下载 <3s <4s <5s
callmain <3s <5s <7s
游戏初始化完成 <8s <10s <12s
游戏可交互完成 <12s <15s <20s

运行性能

高档机 中档机 低档机
内存 <1.5G <1.2G <1G
帧率 >50 >40 >30

iOS 评测标准

高档机 中档机 低档机
首资源包下载 <3s <4s <5s
callmain <2s <4s <5s
游戏初始化完成 <6s <8s <10s
游戏可交互完成 <10s <12s <15s

运行性能

高档机 中档机 低档机
内存 <1.4G <1.2G <800MB
帧率 >50 >40 >30