游戏卡顿无疑是开发者最需要关注的重要性能问题之一。它影响玩家的游戏进程,并直接对玩家的游戏体验产生不良的影响。为助力开发者应对这一难题,在之前的版本中,卡顿分析页已经陆续推出了重点函数分析、卡顿点分析以及Timeline等功能,以便对单个卡顿点进行剖析。
本次更新中,UWA进一步升级,新增【卡顿帧汇总】功能,对报告中的所有卡顿点进行深度归因,从而精准定位那些导致卡顿现象最为频繁、优化潜力最大的函数,旨在帮助开发者更有效地优化游戏性能。
在最新版本的卡顿分析页面中,我们提供了全部卡顿帧信息。结合卡顿帧汇总中的总CPU耗时曲线和卡顿帧标识,开发者可以快速对游戏中的所有卡顿点的CPU耗时和分布情况进行全面了解。
注:CPU耗时曲线为每10帧取最大值,卡顿帧为每帧CPU实际耗时,图表中点线可能会存在错位情况。
在本次更新中,我们新增了动画卡顿和物理卡顿数据统计,开发者可以在【重点函数分析】页对这两种卡顿情况进行具体分析。同时,我们也可以便捷地对不同类型的卡顿帧进行筛选和定位(如下图右上角)。
在下方的卡顿函数堆栈冰柱图中,开发者可以直观地观察和分析所有卡顿帧函数的耗时占比、所有深度的函数节点,以及它们之间的调用关系,以此分析出对卡顿问题中贡献更大的热点函数,并结合下方的卡顿函数列表进行具体排查。
单击某个函数节点时,冰柱图将高亮显示冰柱图中所有的同名函数节点,开发者即可快速了解同一函数在整个卡顿点汇总冰柱图中的占比情况,及其对不同父函数的卡顿影响。
双击函数节点时,冰柱图会进一步放大该函数的细节,详细显示函数节点的调用和被调用情况。同时,函数堆栈列表中也会自动展开对应的函数堆栈,以便开发者判断哪些节点具有较高的优化价值。
在卡顿函数列表中,除了常见的总耗时、总耗时占比、自身耗时、自身耗时占比等参数外,还需要特别关注函数的分布卡顿点数量和重点卡顿点数量。前者表示该函数在多少个卡顿帧中被调用,而后者则反映了在多少个卡顿帧中,该函数的调用总耗时超过了41.67ms。
如果某个函数的重点卡顿点数量较高,那就意味着它对多个卡顿帧都产生了显著影响,具有更高的优化优先级。
开发者也可以通过反选函数节点的方式,使上方的卡顿帧汇总对卡顿帧情况进行重新计算,模拟出移除该函数后的卡顿帧情况。如果在减去该函数的耗时后,卡顿帧的耗时能够降低到83.33ms以下,这些卡顿帧将被标识为绿色的改良卡顿帧。
通过函数节点反选功能,开发者能够直观地掌握每个函数节点对卡顿帧的影响程度,并模拟出函数优化后的卡顿情况。这不仅有助于开发者更精确地评估函数节点的优化潜力,还能为确定优化的优先级提供有力依据,取得事半功倍的优化效果。
对于需要关注的重要的函数,开发者也可以选择点开操作列的函数详情,查看这些函数的CPU耗时和调用次数情况,或添加至函数组进行更进一步的分析。
以上就是卡顿点分析的新功能介绍。UWA相信,通过对这些功能的综合运用,开发者将能够更加游刃有余地解决游戏卡顿问题,提升游戏的流畅度,为玩家们呈现更高品质的游戏体验。未来,UWA也将继续完善产品和服务,助力开发者们创造出更出色的游戏作品。
UWA也将继续关注开发者的需求,并不断更新和改进工具的功能和服务,帮助开发者更高效地进行性能分析和优化工作。
UWA SDK下载链接如下,欢迎试用体验!
UWA | 致力于游戏VR和AR应用提供项目研发解决方案 | 简单优化、优化简单 | 侑虎科技