UE优化性能
参考:风恋残雪的博客
Stat unit
-
启动一个非Debug的游戏进程
-
打开控制台输入
Stat UNIT。PC端 ` , Android 四指点击 -
正常的渲染状态:
![]()
-
名称 功能 Frame 产生一帧的总时间 Game 游戏逻辑线程(Game会与Draw在一帧结束时同步,因此两者会保持相近) Draw 渲染线程 GPU 测量了显卡渲染当前场景所花的时间(与Frame同步) -
非正常渲染状态:
![]()
-
如果Frame与Game相近,那么瓶颈发生在Game(游戏逻辑)
-
如果Frame与Draw相近,那么瓶颈发生在Draw(渲染线程)
-
如果Frame与GPU相近,那么瓶颈发生在GPU(显卡配置)
-
数据摘取
-
可以在非Debug的游戏中,输入指令
Stat StartFile -
此时可以看到游戏左上角出现一些问题,包括了时间(单位为ms)。等待15s左右
-
再次输入指令
Stat StopFile -
找到项目路径:
![]()
-
打开UE项目的Session Frontend(打开时可能有卡顿,不浮躁,等等她~)
-
UE4 的项目请在UE4 打开 Session Frontend。因为UE4 的是 .ue4stats 文件
-
UE5 的项目请在UE5 打开 Session Frontend。但是UE5 的是 .uestats 文件
-
-
选择 Profiler 标签页,使用 Load 查找上面的文件
-
![]()
-
右下角就是消耗性能的部分。
-
Average则是平均帧耗时,而Maximun则是耗时总和(颜色越红,消耗的总量越大)
-
可以选择 Maximun来查看消耗性能最大的部分
-
-
![]()
-
上方的蓝色区域是可以通过鼠标框选的,因此可以自定义查看某部分的高峰值。由于这个例子截图性能优化不错,所以没什么波动。
GPU 分析
在UE中使用快捷键(Ctrl+Shift+ , )打开GPU Visualizer
常用性能优化指令
-
stat unit
-
stat sceneRendering
-
stat engine
-
stat initViews
-
stat game
-
stat Slow
-
viewMode ShaderComplexity
-
Stat UnitGraph
更多指令:





浙公网安备 33010602011771号