网站建设 环讯传媒,wordpress注册目录,滑县网站建设报价,批量更新wordpress文章UE4中关于利用粒子系统做轨迹描绘导致系统流畅性下降的问题 文章目录 UE4中关于利用粒子系统做轨迹描绘导致系统流畅性下降的问题前言假设及验证1. 过多的粒子发射器影响仿真系统2. 粒子数目太多#xff0c;降低粒子发射频率#xff0c;同时增大粒子显示范围3. 把信息输出到屏…UE4中关于利用粒子系统做轨迹描绘导致系统流畅性下降的问题 文章目录 UE4中关于利用粒子系统做轨迹描绘导致系统流畅性下降的问题前言假设及验证1. 过多的粒子发射器影响仿真系统2. 粒子数目太多降低粒子发射频率同时增大粒子显示范围3. 把信息输出到屏幕浪费了太多时间导致系统流畅性变差4. 产生的粒子渲染使得系统压力越来越大从而流畅性下降 小结 前言
之前在利用粒子系统实现轨迹描绘的时候曾提出了“粒子积累后粒子的产生是否会对系统的内存带来压力导致系统运行越来越吃力”的问题当时的解决办法只是简单地减少粒子产生的频率从而降低系统运行压力。本文围绕该问题展开一系列关于利用粒子系统实现物体轨迹描绘的相关问题。
前面两篇文章的链接如下
虚幻引擎4利用粒子系统实现物体轨迹描绘_ADi_hhh的博客-CSDN博客
虚幻引擎4利用粒子系统实现物体轨迹描绘2- 消除轨迹_ADi_hhh的博客-CSDN博客
再次回顾该问题的原因是在仿真中我使用了更多的粒子发射器来产生粒子用以显示物体的轨迹。而我发现简单的延迟已经不能够满足我的要求–既能看清轨迹又尽可能降低仿真系统的压力。因此针对粒子系统的哪些东西影响了仿真系统的流畅性提出了一些假设并进行了验证。
假设及验证
1. 过多的粒子发射器影响仿真系统
首先我们在粒子产生过程中也在不断地生成发射器可能在ue中这是很愚蠢的做法。不过以我当时对虚幻引擎的了解也只能采用这种方式产生粒子。那么自然而然我们也产生了很多”粒子发射器“而这些粒子发射器在之后我们就不会用了因此可能粒子发射器的数量太多了从而影响了仿真系统的流畅性。 验证
因此我在每个粒子产生后经过一段时间就销毁对应粒子发射器以期待降低粒子发射器对仿真系统流畅的影响。 但我们也应该注意到本来粒子发射器就有”自动销毁“的设置。因此在我主动销毁粒子发射器后系统的流畅性并没有显著的改变。
2. 粒子数目太多降低粒子发射频率同时增大粒子显示范围
显然粒子随时间产生的越来越多因此粒子数目一定是影响系统流畅的一个因素。但由于我希望看清楚轨迹因此粒子数目在某种程度上是不能够过少的。但是如果我在降低粒子发射频率的同时增大粒子显示范围那
恰好粒子发射器可以设置粒子显示的范围如下图所示。 验证
增大延迟时间同时增大”创建效果的范围“。
经过测试后系统的流畅性有所提升但是由于粒子数目减少轨迹的显示效果并不佳因此这也不是一个很好的方法。
3. 把信息输出到屏幕浪费了太多时间导致系统流畅性变差
因为我在仿真中使用的py代码计算控制信息并打印出来供我调试使用但py的print是很浪费时间的。 因此可能是因为我在py端输出print在ue端把信息输出到仿真过程中浪费了时间使得大量时间被用在这样的过程中自然使得系统流畅性变差。
验证
因此我尽可能地减少py端和ue端的信息输出经过测试后系统的流畅性有所提升但提升不多。
4. 产生的粒子渲染使得系统压力越来越大从而流畅性下降
因为我使用的是初学者内容中自带的几款粒子如下图所示。 而这些粒子可能需要渲染而不断地产生这样的粒子从而导致系统性能下降。
验证
经过不断修改粒子类型发现其中”P_Fire“的粒子严重影响系统的流畅性可能系统需要针对该粒子消耗的资源比较多而越来越多的该粒子产生从而导致了系统的性能下降。同时发现”P_Fire“与其他的初学者粒子的信息也有所不同可能这就是该粒子消耗资源比较多的原因。之后通过修改粒子类型修改为我自己设计的简单粒子系统的流畅性有着明显的提升。 fire粒子确实也比较逼真。
小结
本文通过几种假设再次解决了利用粒子系统做轨迹描绘导致系统流畅性下降的问题。不过还是能够说明粒子系统做轨迹描绘并不是虚幻引擎中的最佳选择希望以后随着深入的了解能够实现更简单高效的方法。
注本文中所说的仿真系统流畅性下降是仿真系统处理信息和传输信息的速度下降。
如果您觉得我写的不错麻烦给我一个免费的赞如果内容中有错误也欢迎向我反馈。