虚幻引擎游戏性能优化秘笈(笔记)
笔记来源:虚幻引擎游戏性能优化秘笈(官方字幕)_哔哩哔哩_bilibili讲师的个人网站:ari.games
<hr/>分析的概念
何时优化
[*]过早的优化是万恶之源,在开发过程中要注意性能,不要牺牲代码的可读性
[*]在方针硬件上以60fps运行,不优化
[*]当呈此刻分析东西上时,优化
实用优化
[*]只在你没有达到你的帧时间时进行优化
[*]用最少的努力获得最大的影响
[*]不要盲目地优化,弄清楚是什么,为什么 ,怎么做
虚幻引擎中的分析
Unreal Insights
[*]从编纂器中启动Unreal Insights
[*]Tools → Run Unreal Insights.
[*]启动unreallsights .exe
[*]虚幻自动连接到当地进程。
[*]使用-trace命令行参数覆盖通道。
[*]默认是cpu,帧,日志,书签
[*]-trace=default,gpu,memory,file,loadtime
[*]制作一个快捷方式/bat文件很便利
ProfileGPU
[*]使用Ctrl + Shift + ,
[*]使用ProfileGPU控制台命令
[*]在编纂器中打开GPU可视化东西
[*]打印到打包生成中的控制台输出
实际用例
编纂器帧率过低
1.查看当前的fps
[*]点击show fps按钮
[*]在控制台输入stat fps
2.查看当前的消耗时间
[*]点击按钮Unit查看
[*]在控制台输入stat unit
3.分析是哪项导致的GPU消耗过高
打开ProfileGPU窗口,按照Duration分析是哪项的消耗过高
4.修复因为点光源导致的消耗过高问题
[*]点光源衰减半径缩小
[*]点光源不再投射暗影
加载资源导致卡顿
1.打包项目为Windows版本,创建快捷方式,覆盖检测通道
2.打开Unreal Insights分析卡顿问题,发现是加载资源问题,会刷新异步加载资源
3.进入对应蓝图,改削加载资源为异步加载,这样就不会刷新异步加载了
人物转身导致卡顿
1.按照stat unit显示的信息,判断出是GPU呈现问题
2.在打包版本中输入控制台命令 ProfileGPU,然后在Saved->Logs下打开日志文件
3.按照日志判断出是哪个东西导致的GPU异常
4.找到材质,并优化材质(增加alpha,降低噪点节点的级别,使用贴图来制作)
解决内存泄漏
1.在控制台输入gc.CollectGarbage,运行一会之后关掉
2.打开Unreal Insights,先删除带LLM标签的图标,在右边窗口的Rule选择 Memory Leaks (A*B C*) 【感化是:标识在时间A和时间B之间分配,在时间C之后释放的分配】,再点击 Run Query
3.找到问题发生地址,是某个Actor的Tick时造成的内存泄漏
4.按照代码发现是在堆上创建了对象,而且没有删除,建议打消使用new关键字
页:
[1]