1.
预备
这是这个教程要完成的效果。
注意:本教程主要内容来自虚幻引擎自带的内容示例
。
提示:使用 ⬆️ ⬇️ 可上下翻页。推荐用大屏浏览,以获得更好的阅读体验。
3.
让我们开始重建
右键选择 FX
=> Niagara System
创建。
4.
创建 Niagara System
选择空(Empty)
模板,然后点击 +
按钮,点击 Finish
5.
创建 Niagara System
由此,我们得到一个 Niagara System
的资产,点击打开它。
6.
空 Niagara 系统
可以看到我们有了一个空 Niagara 系统。
7.
生成速率(Spawn Rate)
点击发射器更新(Emitter Update)
右边的 +
号,添加生成速率(Spawn Rate)
模块。
生成速率(Spawn Rate)
: 每秒生成的粒子数目。
8.
生成速率(Spawn Rate)
设置 生成速率(Spawn Rate)
值为 5.0
。
每秒生成 5.0 个粒子。
9.
属性
Niagara 有一个称为属性(Attributes)
的重要概念。这是一些与各种脚本共存的数据。
例如,一个发射器级别的属性,发射器整个阶段可访问的数据。在这个教程中,我们会用到一个Float
,叫做Emitter.SineWave
。
10.
SineWave
点击发射器属性(Emitter Attributes)
右边的 +
号,添加一个 float
属性。
11.
SineWave
把这个新建的属性命名为 SineWave
。
12.
SineWave
拖拽这个属性到 发射器更新(Emitter Update)
下面。
如果把它拖到发射器生成(Emitter Spawn)
中,它的值只能设置一次,在发射器诞生的第一帧。
通过在发射器更新(Emitter Update)
中设置它,该值每一帧都会得到一个新的值。
13.
编辑属性
修改属性的值类型为 Sine
函数动态输入。
14.
编辑属性
设置标准化角度(Normalized Angle)
的值类型为浮点数相乘(Multiply Float)
15.
编辑属性
链接 A
的值到发射器的 Age
属性
16.
编辑属性
编辑 B
的值为 0.2
就这样,我们制作了一个正弦波,发射器中的每个粒子都可以访问这个正弦波。我们在 添加速度(Add Velocity)
模块中对这个正弦波进行采样,以随着时间的推移喷射振荡粒子。
17.
初始化粒子
选择初始化粒子(Initialize Particles)
,然后设置:
1. 存活期(Lifetime)
为 3.0
2. 颜色模式(Color Mode)
为 直接设置(Direct Set)
3. 网格缩放模式(Mesh Scale Mode)
为 统一(Uniform)
,并设其值为 3.0
18.
添加速度
在 粒子生成(Particles Spawn)
部分添加 添加速度(Add Velocity)
模块。
19.
添加速度
点击第一个 Fix issue
按钮添加其依赖的 解算力和速度(SolveForcesAndVelocity)
模块。
20.
编辑速度
设置速度(Velocity)
的值类型为旋转向量(Rotate Vector)
21.
编辑速度
设置旋转轴(Vector To Rotate)
的 Z
值为100.0
。
22.
编辑速度
设置俯仰(Pitch)
的值类型为浮点数相乘(Multiply Float)
23.
编辑速度
设置俯仰(Pitch)
的 A
值为发射器的SineWave
。
24.
编辑速度
设置俯仰(Pitch)
的 B
值为24.0
。
25.
编辑速度
设置速度的时间增量(Delta Time)
为正弦函数(Sine)
。
26.
编辑速度
设置标准化角度(Normalized Angle)
的值类型为浮点数相乘(Multiply Float)
27.
编辑速度
设置标准化角度(Normalized Angle)
的 A
值为发射器的年龄(Age)
。
28.
编辑速度
1. 设置标准化角度(Normalized Angle)
的 B
值为0.2
。
2. 设置缩放(Scale)
的值为0.5
3. 设置偏移量(Bias)
的值为1
29.
初始化网格朝向
在 粒子生成(Particles Spawn)
部分添加 初始化网格朝向(Initial Mesh Orientation)
模块。
30.
初始化网格朝向
设置朝向向量(Orientation Vector
的值为粒子的速度(Velocity)
。
31.
更新网格朝向
在 粒子更新(Particles Update)
部分添加 更新网格朝向(Update Mesh Orientation)
模块。
32.
更新网格朝向
设置旋转向量(Rotation Vector)
的 x
y
值为-0.3
33.
缩放网格大小
在 粒子更新(Particles Update)
部分添加 缩放网格大小(Scale Mesh Size)
模块。
34.
缩放网格大小
编辑 缩放因子(Scale Factor)
值为 Vector 2DFrom Float
。
35.
缩放网格大小
设置值(Value)
的值类型为浮点数曲线(Float from Curve)
36.
缩放网格大小
选中第一个点,编辑其值为:(时间(Time) 为 0.0
,值(Value)为 0.0
)
37.
缩放网格大小
鼠标移到小红圈,右键,选择添加一个点到曲线(Add key to Curve)
38.
缩放网格大小
设置新添加的点的时间(Time)
为 0.25
,值(Value)
为 1
。
39.
缩放网格大小
以同样的方式,添加一个点:时间(Time)
为 0.75
,值(Value)
为 1
。
然后选中每个点,右键,选择 自动(Auto)
。
40.
移除精灵(Sprite)渲染器
选中精灵渲染器(Sprite Renderer)
,右键,选择删除(Delete)
41.
添加网格(Mesh)渲染器
在 渲染器(Render)
部分添加 网格渲染器(Mesh Render)
模块。
42.
编辑网格(Mesh)渲染器
选择粒子网格(Particle Mesh)
的值为S_Gnomon