版本:4.26, English
创建:2021-02-09,更新:2021-03-25
作者:Cyanhall
👉  Cyanhall@GitHub 如果有用请点赞。
1. 预备 这是这个教程要完成的效果。

注意:本教程主要内容来自虚幻引擎自带的内容示例

提示:使用 ⬆️ ⬇️ 可上下翻页。推荐用大屏浏览,以获得更好的阅读体验。
Preparation
3. 介绍 瞬态(Transient)变量只在指定模块的范围内有效(例如粒子更新(Particle Update)),并且每一帧都会从头开始重新计算,它们的值不会从一帧到另一帧持久化。

这使得它们与保存在 粒子(Particle) 中的变量不一样. 粒子变量保存在粒子的载荷(payload)中,并且一帧到另一帧是持久的。后者是以内存和性能为代价的。
Introduction
4. 目标 在这里,我们制作一个瞬态变量(transient variable),代表当前与发射器原点的距离,并用它来驱动颜色和比例曲线。
Goal
5. 让我们开始重建 右键选择 FX => Niagara System 创建。
Let's start the reconstruction
6. 创建 Niagara System 选择空(Empty)模板,然后点击 + 按钮,点击 Finish
Create Niagara System
7. 创建 Niagara System 由此,我们得到一个 Niagara System 的资产,点击打开它。
Create Niagara System
8. 空 Niagara 系统 可以看到我们有了一个空 Niagara 系统。
Empty Niagara System
9. 生成速率(Spawn Rate) 点击发射器更新(Emitter Update)右边的 + 号,添加生成速率(Spawn Rate)模块。

生成速率(Spawn Rate): 每秒生成的粒子数目。
Spawn Rate
10. 生成速率(Spawn Rate) 设置 生成速率(Spawn Rate) 值为 8.0

每秒生成 8.0 个粒子。
Spawn Rate
11. 瞬间巨量生成(Spawn Burst Instantaneous) 点击发射器更新(Emitter Update)右边的 + 号,添加瞬间巨量生成(Spawn Burst Instantaneous)模块
Spawn Burst Instantaneous
12. 瞬间巨量生成(Spawn Burst Instantaneous) 设置生成数量(Spawn Count)的值类型为随机范围整数(Random Range Int)
Spawn Burst Instantaneous
13. 瞬间巨量生成(Spawn Burst Instantaneous) 1. 设置最小值为 3
2. 设置最大值为 10
3. 设置运算类型为 每一帧(Every Frame)
Spawn Burst Instantaneous
14. 初始化粒子 选择初始化粒子(Initialize Particles),然后设置:

1. 存活期(Lifetime)8.0
2. 颜色模式(Color Mode)直接设置(Direct Set)
3. 精灵大小模式(Sprite Size Mode)统一(Uniform),并设其值为 5.0
Initialize Particles
15. 在点添加速度(Add Velocity from Point) 粒子生成(Particles Spawn) 部分添加 在点添加速度(Add Velocity from Point)模块。
Add Velocity from Point
16. 在点添加速度(Add Velocity from Point) 点击第一个 Fix issue 按钮添加其依赖的 解算力和速度(SolveForcesAndVelocity) 模块。
Add Velocity from Point
17. 在点添加速度(Add Velocity from Point) 设置速度强度(Velocity Strength)的值类型为随机范围浮点数(Random Range Float)
Add Velocity from Point
18. 在点添加速度(Add Velocity from Point) 设置最少值为 10.0,最大值为 85.0
Add Velocity from Point
19. 点吸引力(Point Attraction Force) 粒子更新(Particle Update)添加点吸引力(Point Attraction Force) 模块。
Point Attraction Force
20. 在点添加速度(Add Velocity from Point) 1. 点击第一个 Fix issue 按钮修复 解算力和速度(SolveForcesAndVelocity) 模块的依赖顺序问题。
2. 设置吸引力强度(Attraction Strength)的值为1.8
3. 设置吸引力半径(Attraction Radius)的值为256.0
Add Velocity from Point
21. NormalizedDistanceFromCenter 阶段瞬态值(Stage Transients) 模块添加一个 浮点数(Float) 变量
NormalizedDistanceFromCenter
22. NormalizedDistanceFromCenter 将这个新创建的变量命名为:NormalizedDistanceFromCenter
NormalizedDistanceFromCenter
23. NormalizedDistanceFromCenter 拖拽 NormalizedDistanceFromCenter粒子更新(Particles Update)
NormalizedDistanceFromCenter
24. NormalizedDistanceFromCenter 设置NormalizedDistanceFromCenter的值类型为标准化距离范围(Normalize Distance Range)
NormalizedDistanceFromCenter
25. NormalizedDistanceFromCenter 设置开始位置(Start Position)粒子位置(Particles.Position)
NormalizedDistanceFromCenter
26. NormalizedDistanceFromCenter 设置结束位置(End Position)模拟位置(Simulation Position)
NormalizedDistanceFromCenter
27. NormalizedDistanceFromCenter 设置 距离(Distance)145.0
NormalizedDistanceFromCenter
28. 颜色(Color) 粒子更新(Particle Update)添加颜色(Color) 模块。
Color
29. 颜色(Color) 设置颜色(Color)的值类型为线性插值颜色(Lerp Linear Color)
Color
30. 颜色(Color) 1. 设置开始颜色为:(3, 0, 0, 1),结束颜色为:(0, 0, 2, 1)
2. 设置插值因子为 NormalizedDistanceFromCenter
Color
31. 缩放精灵大小(Scale Sprite Size) 粒子更新(Particles Update) 部分的添加 缩放精灵大小(Scale Sprite Size)模块。
Scale Sprite Size
32. 缩放精灵大小(Scale Sprite Size) 编辑 缩放因子(Scale Factor)值为 Vector 2DFrom Float
Scale Sprite Size
33. 缩放精灵大小(Scale Sprite Size) 设置值(Value)的值类型为浮点数插值(Lerp Float)
Scale Sprite Size
34. 缩放精灵大小(Scale Sprite Size) 1. 设置 A 为 0.5, B 为 2.75
2. 设置 Alpha 为 NormalizedDistanceFromCenter
Scale Sprite Size
35. 🎉 完成了! 🎉 👉  Cyanhall@GitHub  如果有用请点赞。

支持我: Patreon
关注我: TwitterReddit知乎Bilibili
🎉 Finish! 🎉
Comments
Preparation