• GOT Online For Unreal 功能更新发布


    GOT Online For Unreal测评服务一向以详细的性能统计指标、方便的运行时数据和直观的截图查看功能而受到开发者好评。通过重要的性能指标走势和函数堆栈信息,结合报告截图,开发者可以快速定位性能问题,并得到对应的分析建议。在引擎自身数据之外,还支持测试设备的硬件信息获取,以帮助大家更加全面地分析运行时性能情况。

    近日,UWA更新迭代了GOT Online For Unreal报告的部分功能,包括支持Overview模式下详细堆栈分析等。进一步增加了引擎各模块的重要统计指标,新增了CPU调用堆栈各子线程的耗时统计,以及运行日志模块。此外,Overview模式还支持了性能评分功能,便于开发者了解每个阶段版本的性能评级。

    请前往https://www.uwa4d.com/#download 更新/下载最新支持Unreal引擎的SDK 2.1.1版本。

    Part1、引擎模块数据项更新

    大幅增加了测试过程中采集的数据项。UWA提取了各引擎模块的重要统计指标,方便开发者全面了解项目的运行时情况,并进一步定位项目各个模块的性能瓶颈。

    以渲染模块为例,除了原本的DrawCall峰值和Triangle峰值外,此次更新中还新增了渲染线程场景渲染均值、RHI线程渲染指令执行均值和eglSwapBuffers耗时均值这三项指标。

    在渲染线程场景渲染均值指标下,还包括了场景可见性计算、不透明渲染、半透明渲染和同步RHI线程这4项数据。通过运行时走势,可以直观地找到整体开销较高或者引起渲染峰值的函数,从而快速定位渲染压力,并针对性地进行优化。

    除渲染模块外,我们可以在总体性能趋势下进入各个模块的页签,通过各个模块的专项性能指标,定位项目的性能压力源头。

    各模块具体参数如下:

    渲染模块性能:包括渲染线程场景渲染均值,RHI线程渲染指令执行均值,eglSwapBuffers耗时均值,DrawCall峰值和Triangle峰值。

    物理系统性能:包括主线程物理模块耗时峰值和主线程物理模块耗时均值。

    动画模块性能:包括动画逻辑耗时峰值,动画逻辑耗时均值,渲染线程蒙皮计算耗时峰值和渲染线程蒙皮计算耗时均值。

    粒子系统性能:包括粒子系统主线程耗时均值,粒子系统渲染线程耗时均值,粒子系统DrawCall峰值,粒子系统组件数量峰值和粒子发射器数量峰值。

    UI模块性能:包括主线程UI更新耗时均值,渲染线程UI更新耗时均值,UI输入事件耗时均值,UI渲染批次峰值,UI渲染顶点峰值和UI控件数量峰值。

    加载模块性能:包括加载主线程耗时峰值、渲染线程Shader加载耗时峰值、RHI线程Shader链接耗时峰值、GC耗时峰值、GC调用次数和Actor实例化耗时峰值。

    Part2、CPU调用堆栈新增子线程耗时

    除了已经支持了的GameThread和RenderThread外,最新版本还新增了RHIThread和FAsyncLoadingThread两个线程的函数耗时情况。

    RHIThread主要负责与GPU设备的API交互。其中的eglSwapBuffers反映了CPU等待GPU耗时情况,当eglSwapBuffers函数耗时较高时,侧面说明项目的GPU压力较大。

    FAsyncLoadingThread转移了主线程资源异步加载相关的众多任务,减少了加载对游戏流畅度造成的影响。

    UWA建议项目开启这两个线程,能够有效地减轻主线程的压力,提升游戏体验。

    Part3、支持性能评分

    继Unity报告之后,GOT Online For Unreal的Overview模式测评报告也提供了项目性能评分。评分参数主要是基于FPS均值、Jank均值、设备内存峰值、每万帧耗电均值和温度变化量5项数据,并佐以其它子类指标计算得出。

    在性能简报页,在对项目的总体情况有所了解的同时,还可以通过子类指标的函数耗时和特殊标识,快速定位项目的性能压力集中在哪些模块,大幅节省定位项目的性能瓶颈的时间。

    Part4、新增运行日志模块

    Overview报告新增了项目运行日志功能。页签中包括项目运行截图、运行帧数、运行场景、Log类型、Log内容、Log查询和堆栈信息等多项信息,以便及时掌握项目运行时的关键日志信息,及时洞察和修复运行项目的潜在问题。


    以上就是这次版本更新主要内容,UWA将继续研发更多支持Unreal引擎性能优化的功能,提高开发者发现问题、解决问题的效率。很快,GOT Online For Unreal报告还将支持卡顿分析等功能,敬请期待~

  • 相关阅读:
    MySQL学习笔记之单行函数
    解决cscript打开excel时宏互不可见的问题
    Linux下C++编程-进度条
    密码(6)
    【试题028】C语言关于逻辑与&&的短路例题
    无人机无刷电机理论教学培训课程
    python实现 合并相同编号的证书名称
    校招期间 准备面试算法岗位 该怎么做?
    信息收集——ip信息(DNS解析、CDN)
    Java基础 - 练习(一)打印等腰三角形
  • 原文地址:https://blog.csdn.net/UWA4D/article/details/126360724