Stat 命令

以下是现可输入控制台帮助性能分析的 stat 命令。请注意:如需将内容转存至日志中,则需要结合 -log 命令运行编辑器/游戏,使其获得日志文件:

UE4Editor.exe -silent LOG=MyLog.txt

此操作可从任意“dump”命令中获取有用内容。

命令 spacer.png 描述
stat Anim 显示蒙皮网格体每个标记所需的计算时间。
stat D3D11RHI / stat OpenGL Direct3D 11 或 OpenGL RHI。
stat DumpEvents [-ms=0.1] [-all] 发生事件调用时(如从蓝图调用,或调用 PhysX 任务函数),它们将被写入日志。
stat DumpFrame 接收指令后立即执行渲染的帧信息将被写入日志。
stat DumpHitches 基于 t.HitchThreshold 检测到“故障”时,将其写入日志。
stat Engine 显示总体渲染 stats,如帧长、以及被渲染的三角形数量。
stat Game 反馈诸多游戏标记所消耗的时间。
stat Grouped 禁用 stat Slow。
stat Hitches 设置 t.HitchThreshold,定义故障的时间(以秒为单位)。还将把所有故障转存至 log/visual studio debug,如 [0327.87] LogEngine:Warning:HITCH @ 00m:01s:643ms,1643,72,2.
stat InitViews 显示可视性剔除所花费的时间和效率。关于渲染线程性能,可视部分数量是最重要的个体 stat,它由 STAT INITVIEWS 下的可视静态网格体元素支配,但可视动态原语也对其存在影响。
stat LightRendering 反馈灯光和阴影所需的渲染时间。
stat Memory 显示虚幻引擎中诸多子系统的内存使用情况。
stat Particles 显示粒子计算时间和 sprite 渲染时间。
stat SceneRendering 显示总体渲染统计。可从此处着手寻找渲染过程中性能较慢的大体区域。
stat SceneUpdate 显示更新世界场景的信息,包括添加、更新和移除灯光,以及在场景中添加和移除原语所花费的时间。
stat ShadowRendering 显示阴影计算时间,与实际阴影渲染时间分开(已包含在 stat LightRendering 中)。
stat Slow [-ms=0.3] [-maxdepth=5]

此命令将显示游戏线程和渲染线程的统计。所有 stats 将作为一个 stats 大群组进行渲染。无法访问分析工具或日志文件、或需要测试游戏的基础性能时,此命令十分实用。

以下是运行游戏中的实例:

此命令可进行如下配置:

stat slow [-ms=1.0] [-maxdepth=4]

默认只显示大于 1.0 毫秒的 stat 项目,以及超过 4 个关卡未被套入的 stat 项目。

注意:降低毫秒或增加深度均可能对整体性能产生影响。

Stat slow 对低于 0.1 毫秒的内容进行过滤,以增强性能并避免混乱。以下是减少 -ms 和增加 -maxdepth 所获得的结果:

stat slow -ms=0.3 -maxdepth=5

Stat slow 会占用大量屏幕空间,再次使用 stat slow(或 stat Grouped)将移除所有可视 stats 群组。此外,如启用其他 stats 群组,stat slow 也将被禁用。

stat Streaming 显示流资源的诸多统计,如流纹理使用的内存量、或场景中流纹理的数量。
stat StreamingDetails 流的细节统计,将总体纹理流分解为更细致的群组(光照图、静态纹理、动态纹理)。
stat Unit 整体帧长、游戏线程时长、渲染线程时长、GPU 时长。
stat UnitGraph 查看带统计单元数据的图表,使用 stat Raw 查看未过滤的数据。