文章转自(山中传奇工作室):
啦啦啦,我又来啦~这次为大家带来UE4中OD线的开发流程讲解:

OD流动效果
支持功能:
- 支持基线(绿色那条线)的半径控制、颜色、亮度控制
- 支持流动物(玫红色粒子)的大小和颜色控制(本省自带发光)
- 支持OD流动速率的控制
- 支持自定义OD流动路径(可接入json数据生成)

可配置的自定义参数

自定义效果参考
主要面对的核心问题
- OD回到起点的粒子拖尾问题
- OD基线的圆柱半径控制
- OD高频率流动状态的质量控制
开发流程&思路
首先,思路上是基于UE的Spline和Niagara。具体实现步骤如下:

分别添加Niagrar和Spline组件

制作基线材质,颜色和亮度暴露出来,并生成材质实例

在构造脚本中控制基线实例的颜色和亮度

制作一个圆柱体模型,其坐标轴定在模型中心位置

添加SplineMesh组件节点并赋予圆柱体模型,然后设置动态材质实例
通过这套节点:即可实现OD基线的全部功能模块,设置圆柱半径,颜色。做到这里你会发现我们才完成了整个样条线的前半部分基线的显示,按照同样的节点我们设置Spline的Point1&2来实现后半段的基线效果。

到此为止基线部分已经完成

从Niagrar插件目录中找到DefaultSpriteMaterial并创建材质实例

新建空的Niagara粒子,并添加空的Emitter

在空的Eimitter中分别添加state、rate、color、size等参数
设置材质为DefaultSpriteMaterial材质实例

其中LifeState具体设置如下:

并设置SpawnRate的值大于0(根据需要设置)


对其中的属性设置用户公共参数
最终Niagara的系统公共参数设置如下:


动态控制粒子的颜色和大小
最后在Actor的构造函数中控制粒子的颜色和大小。
以上是OD粒子效果部分功能开发的全部流程,下面将开展OD线开发过程中面对的核心难点以及如何优化的解析:

具体实现就不展开了,大体思路是使用粒子的透明结合Delay实现拖尾的消失,并附加一定长度的收尾距离来触发再一次的循环,最后再通过速率来配置粒子的SpawnRate就大功告成了。
OD模块拓展

根据起点和终点,结合角度自动求中位点高度

控制OD的发射方向
Niagara粒子资产
项目中的应用

结合放射物的OD效果展示
Over!
本文详细介绍了在UE4中实现OD线开发的流程,包括基线的半径、颜色和亮度控制,流动物的大小和颜色控制,以及流动速率的调整。通过Niagara和Spline组件,实现了OD流动效果,并解决了粒子拖尾问题。此外,还讨论了OD流动路径的自定义和优化方法,展示了在项目中的实际应用。
https://zhuanlan.zhihu.com/p/423539801
https://pan.baidu.com/link/zhihu/7NhUzTuahZikboF2xkSKl1k0SyVJZzaQUhh0==
1万+

被折叠的 条评论
为什么被折叠?



