总体性能

(1)iOS设备的CPU性能普遍高于Android设备;

(2)Android设备上项目性能普遍偏低,CPU达标(超过33ms帧数比例<10%)比例仅为38.6%。

相较于MMORPG游戏,ARPG游戏的渲染和UI模块比重明显下降,自身逻辑代码的开销基本一致,加载模块比重明显上升。这是出于以下原因:

(1)相对于MMORPG来说,ARPG游戏的场景一般较小,UI界面相对简单,因此,渲染模块和UI模块的压力要小于MMORPG游戏;

(2)ARPG游戏重点突出打斗的丰富性和爽快感,所以ARPG游戏研发团队会为角色创建非常复杂的动画状态机,并且为了保证游戏副本打斗的流畅性,研发团队更倾向于在场景切换时将大量资源一次性载入,因此,ARPG游戏的自身逻辑代码和加载模块的压力更高。

下面我们就来具体分析下这些主流模块的开销情况。

主流模块性能

一、渲染模块

严重程度:噩梦

Draw Call的主体使用范围为32~166,峰值平均为209;

渲染三角面片的峰值集中在68.8K~268K,峰值平均为90.2K面。

UWA推荐:渲染三角面片峰值< 100K,目前达标比例: 55.2%。

不透明物体的渲染耗时平均为2.9ms,半透明物体的渲染耗时平均为4.6ms。

54.4%的项目使用了相机后处理特效,其具体分布如下:

(1)ARPG游戏无论是在Draw Call上还是在渲染的三角形面片数量上,均小于MMO游戏;

(2)但ARPG游戏的场景渲染三角形面片数量依然较高,仅55.2%的游戏能够将场景的渲染三角形面片数控制在10w以下。

二、加载模块

严重程度:地狱

(1)GC触发频率很高,是造成卡顿的主要原因之一;

(2)90%以上的游戏团队需要对GC的调用进行进一步规划,对代码的堆内存分配进行大力优化。

(1)Instantiate实例化操作平均每次调用的CPU耗时主要分布在: 2.6~44.1 ms,均值为9.4ms,每1万帧总调用次数主要分布在: 139~1941 次;

(2)Instantiate的频繁实例化是大多数研发团队非常容易忽视的问题。

Log输出操作平均每次调用的CPU耗时主要分布在: 3.0~33.1 ms,均值为9.8ms。

(1)Shader解析操作平均每次调用的CPU耗时主要分布在: 4.3~146.8 ms,均值为25.1ms;

(2)Shader解析时间较高,且大多数情况是相同Shader的重复开销,值得研发团队密切关注。

三、UI模块

严重程度:地狱

(1) 使用NGUI作为UI解决方案的项目占据了相当高的比例,NGUI目前仍然是研发团队对于UI系统使用的主要解决方案;

(2) UI模块的性能开销很高,QQ账号出售平台将近70%的研发团队都面临较为严重的性能问题;

(3) 与MMORPG不同的是,ARPG游戏UI模块的性能压力相对较小,优化难度相对较低。

四、粒子系统

严重程度:普通

五、动画模块

严重程度:普通

经过统计,目前仅使用Mecanim动画系统的ARPG游戏项目占比为45.3%,仅使用Unity3.x老版本动画系统的ARPG游戏项目占比为17.7%,两种系统混合使用的项目占比为37.0%。

内存模块

内存泄露几乎是所有手游都难避开的问题,其在ARPG手游中出现的情况占比为34.9%。

总体内存

严重程度:地狱

总体堆内存

严重程度:地狱

纹理资源

严重程度:地狱

网格资源

严重程度:普通

音频资源

严重程度:普通

Render Texture资源

严重程度:噩梦

字体资源

严重程度:普通

Shader资源

严重程度:普通

动画片段资源

严重程度:普通

希望以上数据能给大家的开发提供帮助。之后侑虎科技将不断与大家分享其他类型的数据,如ACT,SLG等

ARPG手游性能分析报告:加载、GC、内存需重点关注相关推荐

  1. Unity手游性能测评报告——MOBA篇

    MOBA移动游戏性能分析报告:渲染.UI和逻辑代码是性能头号杀手! UWA曾经发布过MMORPG 和 ARPG 的Unity手游性能测评报告,延续该系列,最近UWA对提交测试(登陆 www.uwa4d ...

  2. UWA发布|Unity手游性能蓝皮书

    作为游戏行业的服务商,UWA不仅为游戏开发者提供高效的性能优化工具,也致力于为行业提供更全面.更具体的信息和服务.为此,UWA今天发布2019-2020年度手游蓝皮书,从总体性能数据.引擎各模块开销. ...

  3. 如何做Unity手游性能优化的

    Unity性能优化参考: http://gameinstitute.qq.com/article/detail/39757 https://blog.uwa4d.com/archives/allino ...

  4. 腾讯是如何做Unity手游性能优化的

    他山之石-腾讯是如何做Unity手游性能优化的 本文转载自:http://www.taidous.com/thread-44045-1-1.html?_dsign=ba1258b9 俗话说,用户体验不 ...

  5. 腾讯大咖说:战术竞技类手游性能如何管理?

    MPD是Make Professional Discovery的缩写,MPD工作坊是一个围绕岗位角色发展的实践课堂,是由全球软件.互联网企业教练.一线研发团队带头人联合开发的角色胜任能力模型,是一种持 ...

  6. MMORPG的一份Unity手游性能蓝皮书

    https://mp.weixin.qq.com/s/iEs-1O3wTntaTrrCnOBn-A 这可能是针对MMORPG最全的一份Unity手游性能蓝皮书 2017-07-21 侑虎科技 游戏葡萄 ...

  7. 如何快速优化手游性能问题?从UGUI优化说起

    WeTest 导读 本文作者从自身多年的Unity项目UI开发及优化的经验出发,从UGUI,CPU,GPU以及unity特有资源等几个维度,介绍了unity手游性能优化的一些方法. 在之前的文章< ...

  8. 【cocos2d-x 大型ARPG手游研发----地图活起来了】

    谈到地图不少人都说要做地图编辑器了,但是我暂时绕过这一步,如果不用寻路地图就不能移动?寻路就是会绕过障碍物的算法. 我做了一个简单的地图的思想,就是地图分层3层:背景层.可行区域层.遮罩层,但是地图就 ...

  9. Unity 手游性能优化

    Unity 手游性能优化 物理 减少射线频率.长度.layer: 善用 Physics Matrix: 不要移动静态 Collider,需要移动的话加 RigidBody: 尽量使用简单的 Colli ...

最新文章

  1. 方向:AI研究方向历史性转变!从机器学习到人类研究
  2. Dispatcher.Invoke方法
  3. TensorFlow 从零到helloWorld
  4. 量化框架zipline--分钟回测改写
  5. Git图形化管理工具
  6. 论文笔记(SocialGCN: An Efficient Graph Convolutional Network based Model for Social Recommendation)
  7. 【DL】一文读懂深度学习中的N种卷积
  8. 苹果12可以双开微信吗 iPhone 12双开微信教程「iphone技巧」
  9. 计算机系统具有运行可靠性,计算机系统的可靠性技术
  10. MySQL与MariaDB性能比拼
  11. linux 使用 repotrack 下载 rpm 程序包及其所需依赖
  12. YTU 3795 GCD 和 LCM
  13. 计算机视觉领域摄像头布置,几种深度摄像头简介 | 增强视觉 | 计算机视觉 增强现实...
  14. 实验——一阶RC电路(试验记录)
  15. 前端HTML学习总结
  16. Linux—vmstat命令详解
  17. ajax上传图片java6,java ajax上传图片返回json数
  18. 爬取招聘数据 | scrapy 前程无忧51job
  19. orleans remote call error
  20. mysql练习-学生信息管理系统

热门文章

  1. DeepMind刚向星际争霸 II 的玩家们下了战书!你的对手可能是只AI,而你毫不知情...
  2. 程序员如何用Python了解女朋友的情绪变化?
  3. devexpress内置图片的位置_向微思WGIS中叠加位图图片
  4. leetcode-11-盛最多水的容器
  5. SpringMVC拦截器HandlerInterceptor使用
  6. (扫盲)RPC远程过程调用
  7. struts中如何查看配置文件中是否存在某个返回值
  8. [Oracle 学习] Oracle中将查询语句执行结果导入文本文件
  9. 练习系列 - 5、求子数组的最大和
  10. 构建通用类型- 继承 VS 聚合