显示帧率
快捷键Ctrl Shift H;
按键盘左上角 Ese 键下面的 ~ 键打开虚幻命令行输入框输入 stat fps 显示帧率,方向键 上 键显示最近使用的命令选择stat fps回车即取消这个命令
排查影响性能的因素
将不同类型的东西放在不同的文件夹中,通过隐藏显示这些文件夹找出掉帧的元凶再着手处理,
比如某个模型有很多细碎的小模型组成,将他们 工具-合并网格体-替换 成一个模型可以提高性能;
打开虚幻命令行输入框输入 profilegpu,快捷键Ctrl Shift ,看哪个分类占比最大;
关掉统计信息,实时渲染等影响性能分析的其他因素,打开 工具-Unreal Insights-弹出页面右下角勾选auto-start-运行独立进程游戏 自动开始记录游戏运行时每一帧的性能表现,详情见https://dev.epicgames.com/documentation/zh-cn/unreal-engine/unreal-insights-in-unreal-engine/?application_version=5.1
设置LOD,打开Ninite可以实现无缝衔接的LOD效果
视口左上角 光照 下拉页面中选择 优化视图模式 中的 四边形过度绘制,越亮的地方四边形越多,可对其进行LOD设置;
视口左上角 光照 下拉页面中选择 着色细节层次 中的 网格体LOD着色 可观察物体的LOD变化
减少碰撞盒
碰撞盒过多会增加CPU的开销;
显示碰撞快捷键Alt C;
碰撞设置原则:碰撞盒尽量不重合,不细碎
控制灯光
固定灯光一般用于壁灯,蜡烛等;
动态灯光需要控制数量和范围
设置多级关卡流
看不到的关卡就能卸载掉
调整纹理
尽量别用太大的纹理;
视口左上角 光照 下拉页面中选择 优化视图纹理 中的 所需的纹理分辨率 点击想要调试的物体,在纹理(场景选择)中选择该物体的材质可观察物体的纹理是否过大
lumen
Lumen Golobal Illumination-Lumen Scene Detail计算全局光照时需要考虑多小的物体进去;
Advanced-Lumen Scene Lighting Update Speed和Final Gather Lighting Update Speed降低光照更新速度;
对于不同区域有不同的光照效果需求时,可以用多个后处理体积来单独设置Lumen的参数;
关闭Lumen:
项目设置-Rendering-Golobal Illumination-动态全局光照方法 改成 Screen Space(Beta);
项目设置-Rendering-反射-反射方法 改成 Screen Space
修改碰撞预设
碰撞预设默认是BlockAll,可以通过 项目设置-引擎-碰撞-自定义碰撞对象和预设 批量修改
谨慎使用Tick
尽量别用或者改 细节-Tick Interval(secs)为0.05或0.1
用C++代替蓝图
参考视频
[必学必会] UE5 通用场景性能优化技巧—复杂场景的优化思路与解决方案_哔哩哔哩_bilibili
帧率提升50%,虚幻5性能优化之:碰撞篇_哔哩哔哩bilibili
[必学必会] UE5 性能优化的一般性技巧 超实用_哔哩哔哩_bilibili
如何在虚幻引擎5中快速简便的找出影响性能的因素_哔哩哔哩_bilibili