UE5Niagara粒子系统性能优化

减少发射器数量

粒子系统的发射器数量越多,消耗越大,在正常游戏里,尽量减少那些效果不明显的发射器

可以看出,当前粒子系统里,包含了太多的发射器,那么,我们需要一个个的去查看当前在系统运行时,它的表现效果。

我们可以为每个发射器启用孤立,查看左边的预览,看看在整体表现里,它的效果是否明显,如果不明显,可以考虑隐藏,可以去掉一部分的发射器。

点击后,发射器会改变颜色,其它发射器会变黑色

减少粒子生成数量

对于效果明显的发射器,我们接下来还能控制粒子的数量,加大尺寸,我们可以在细节这里查看实时粒子数

我们可以通过调整Spawn Burst Instantaneous的参数,来调整生成数量

或者Spawn Rate 调整每秒生成的频率

设置CPU还是GPU

如果粒子数量过多,超过1000,推荐使用GPU渲染,如果数量稀少,推荐使用CPU渲染,可以通过在发射器属性里修改模拟目标

如果你无法确定使用CPU还是GPU,可以在场景里批量放置,查看哪个帧率高用哪个。

查看渲染器

最后,我们还需要查看一下渲染器,查看材质复杂度以及使用的渲染器,减少光线渲染器使用,性能消耗大。

网格渲染器注意查看一下使用的网格面数,如果数量多了,也会增加渲染消耗

模型优化可以在DCC里修改,也可以使用UE简化设置,静态网格体的三角形百分比是0-100,基于原始模型按比例减少数量

使用粒子对象池

使用粒子对象池可以减少一次性粒子系统的创建和销毁时的性能消耗。而UE里也内置了对应的功能,我们可以将对象池修改为自动释放来实现此功能,记得将自动销毁取消,因为自动销毁和自动释放功能是相排斥的。

Niagara调试器

在工具栏下面调试里,有个Niagara调试器

在界面里,我们要开启Debug界面,这样可以在界面上查看调试的内容

接着,我们运行查看效果,可以看到同样类型的粒子做了统一罗列,我们可以在测试时,打开界面进行调试功能。下图可以看到,我们激活了64个粒子系统,拥有256个粒子发射器,以及13520个粒子,占用内存39.54M,另外一个是拖尾也是同样的64个。

调整可延展性

通过测试,我们发现,即使粒子不处于可渲染范围内,它还是消耗性能一直在渲染,所以,我们可以通过调整粒子系统的可延展性来节约性能。

首先创建一个Niagara效果类型

在类型里,我们可以对粒子可延展性的更新频率,剔除时的反应以及设置可视性剔除,这样,在粒子不存在相机视口内时,将不再更新消耗性能。

接着,我们应用它,在粒子系统里,选择根节点

在细节里找到效果类型的配置,保存即可。

接着,我们还是对之前的场景进行测试,发现粒子不在相机视口时,激活数为0 。

相关推荐
1204157137 肖哥14 小时前
UE5.7 Procedural Vegetation分析
ue5
半天法师16 小时前
Bug 记录:UE 结构体转 JSON 时 Key 字段大小写异常 (Editor 与打包后表现不一致)
ai·ue5·json·bug
邪修king18 小时前
UE5 零基础入门第四弹:UMG UI 系统入门,从静态界面到逻辑联动
c++·ui·ue5
HAPPY酷2 天前
UE5 开发工具链配置清单
ue5
晴夏。2 天前
UE5第三人称模板实现及相关引擎源码分析
unity·ue5·游戏引擎·ue
HAPPY酷3 天前
UE5 C++ 避坑指南:暴力移除 Electronic Nodes 插件,回归纯净开发
开发语言·c++·ue5
晴夏。3 天前
UE原生第三人称相机源码分析
游戏·ue5·ue4·相机·ue·3c
郑寿昌5 天前
UE5中FBX材质丢失终极修复指南
ue5·材质
郑寿昌5 天前
AI生成的FBX格式导入UE5模型的兼容性优化指南
ue5
2601_957190906 天前
超元力悬浮玻璃剧场:当光影踏空而来,重构沉浸式文旅新体验
ue5·旅游