在Niagara中重新创建Cascade火花效果

本教程将介绍使用Niagara重新创建Cascade火花效果的方法。

Choose your operating system:

Windows

macOS

Linux

先决条件步骤:

本教程将使用**M_smoke_subUV M_Spark M_Radial_Gradient**材质,它们包含在初学者内容包中。如你尚未将初学者内容添加到项目,请务必进行添加。本教程同时使用 在Niagara中创建Sprite粒子效果 教程中创建FX_Smoke发射器。

初学者内容包中提供了数种粒子效果。在本教程中,你将学习如何在Niagara中创建火花效果。

若要重新创建初学者内容包中包含的火花效果,你需要制作三个Niagara发射器:一个用于火花喷泉,一个用于中心火花,一个用于火花喷泉中冒出的一小股烟雾。因为你可以使用现有发射器的副本创建烟雾发射器,所以你将从该烟雾发射器开始操作。

创建烟雾发射器和火花系统

Niagara发射器和系统是独立的。当前推荐工作流将从现有发射器或发射器模板创建系统。

  1. 在项目的内容文件夹中,为本教程创建新文件夹。

  2. 复制 在Niagara中创建Sprite粒子效果 教程中创建的 FX_Smoke 发射器。

    点击查看大图。

  3. 将此复制发射器拖放到你在步骤1中创建的文件夹中。在弹出的上下文菜单中,选择 移动(Move)

  4. 将复制的发射器重命名为 FX_SparksSmoke

    重命名发射器

  5. 现在,创建火花效果系统。右键点击新蒸汽发射器,然后选择 创建Niagara系统(Create Niagara System)

    点击查看大图。

    有多种方法可以创建新Niagara系统。由于你是从已创建发射器着手,所以此处使用的方法会快速创建包含该发射器的系统。但是,正如你在创建Sprite粒子效果教程中所见,发射器和系统向导提供了许多创建和设置Niagara系统的其他选项。

  6. 将系统命名为 SparkFountain

    命名系统

  7. 若尚未打开关卡,请在关卡编辑器中打开。将 SparkFountain 系统拖到关卡中。

    制作粒子效果时,最好将系统拖到关卡中。这样便可查看每一项更改并在上下文中进行编辑。你对系统所做的任何更改都将自动传播到关卡中的系统实例。

    将系统拖到关卡中

烟雾发射器 - 编辑发射器更新设置

  1. 在系统概览(System Overview)中,点击 粒子更新(Particle Update) 组以在 选择(Selection) 面板中打开。

    点击查看大图。

  2. 打开 发射器状态(Emitter State) 模块。此模块控制此发射器的时间和可延展性。点击下拉列表,并将 生命周期模式(Life Cycle Mode) 设置为 系统(System) 。此操作将使系统能够计算生命周期设置,而这通常可以优化性能。在默认情况下,系统以5秒的间隔无限循环。

    点击查看大图。

  3. 打开 生成率(Spawn Rate) 模块。将 生成率(Spawn Rate) 改为 20

    点击查看大图。

烟雾发射器 - 编辑粒子生成设置

下一步,你将编辑粒子生成组中的模块。这些是粒子首次生成时将应用于粒子的行为。

  1. 系统概览(System Overview) 中,点击 粒子生成(Particle Spawn) 组以在 选择(Selection) 面板中打开。

    点击查看大图。

  2. 打开 初始化粒子(Initialize Particle) 模块。在 点属性(Point Attributes) 下,展开 生命周期(Lifetime) 。将 最小值(Minimum) 最大值(Maximum) 改为下列值。

    点击查看大图。

    参数

    最小值(Minimum)

    2.0

    最大值(Maximum)

    3.0

  3. 找到 颜色(Color) 参数。将RGB值改为下列值:

    点击查看大图。

    参数

    红色(Red)

    .3

    绿色(Green)

    .3

    蓝色(Blue)

    .3

  4. Sprite属性(Sprite Attributes) 下,展开 Sprite大小(Sprite Size) 。将"Sprite大小模式(Sprite Size Mode)"设置为 非统一(Non-Uniform) 。将 最小值(Minimum) 最大值(Maximum) 改为下列值。

    点击查看大图。

    参数

    最小值(Minimum)

    20

    最大值(Maximum)

    40

  5. 打开 添加速度(Add Velocity) 模块。将速度(Velocity)的 最小值(Minimum) 最大值(Maximum) 改为下列值。

    点击查看大图。

    参数

    最小值(Minimum)

    X:0,Y:0,Z:25

    最大值(Maximum)

    X:1,Y:1,Z:35

  6. 打开 球体位置(Sphere Location) 模块。将 球体半径(Sphere Radius) 值改为 5

    点击查看大图。

烟雾发射器 - 编辑粒子更新设置

现在,你将在粒子更新组中更新模块。这些行为将应用于发射器的粒子并更新每一帧。

  1. 系统概览(System Overview) 中,点击 粒子更新(Particle Update) 组以在 选择(Selection) 面板中打开。

    点击查看大图。

  2. 打开 加速力(Acceleration Force) 模块。将 加速(Acceleration ) 值设为 X:0,Y:0,Z:20

    点击查看大图。

  3. 打开 缩放颜色(Scale Color) 模块。点击取消选中 缩放RGB(Scale RGB) 旁的框。将 透明透明度(Scale Alpha) 曲线上的键设为下列值:

    点击查看大图。

    键编号

    时间

    1

    0.0

    1.0

    2

    0.7

    0.0

位系统添加火花迸发发射器

接着,你需要在效果中心创建火花迸发效果。

  1. 右键点击SparkFountain系统的 系统概览(System Overview) 。点击 添加发射器(Add Emitter) ,现有发射器的列表随即显示。

    点击查看大图。

  2. 在可用发射器列表中,点击 查看选项(View Options) 以打开选项列表。勾选 显示引擎内容(Show Engine Content) 显示插件内容(Show Plugin Content) 的复选框。现在,可用发射器列表将显示Niagara中包含的所有发射器模板。

    点击查看大图。

  3. 从发射器列表中,选择 简易Sprite迸发(Simple Sprite Burst) 模板。

    点击查看大图。

  4. 模板发射器的默认名称为 SimpleSpriteBurst ,但你可以对其重命名。点击发射器名称,该字段将转变为可编辑状态。将新系统命名为 FX_SparkBurst

    点击查看大图。

火花迸发发射器 - 编辑渲染器设置

虽然 渲染(Render) 组是堆栈中的最后一项,但你需要更改材质,以便效果按照预期方式显示。

  1. 系统概览(System Overview) 中,点击 渲染器(Renderer) 组以在 选择(Selection) 面板中打开。

    点击查看大图。

  2. Sprite渲染(Sprite Rendering) 下,点击 材质(Material) 下拉框并选择 M_Spark 材质。

    点击查看大图。

火花迸发发射器 - 编辑发射器更新设置

首先,你将在 发射器更新(Emitter Update) 组中编辑模块。这些是将应用于发射器并更新每一帧的行为。

  1. 系统概览(System Overview) 中,点击 发射器更新(Emitter Update) 组以在 选择(Selection) 面板中打开。

    点击查看大图。

  2. 点击 垃圾桶(Trashcan) 图标移除 瞬间Sprite迸发(Sprite Burst Instantaneous) 模块。

    点击查看大图。

  3. 打开 发射器状态(Emitter State) 模块。此模块控制此发射器的时间和可延展性。由于你使用了简单Sprite迸发模板,因此 生命周期模式(Life Cycle Mode) 设置为自身。通常,该模式用于为此特定发射器完全定制发射器生命周期逻辑,但此效果并不需要它。点击下拉列表,并将 生命周期模式(Life Cycle Mode) 设置为 系统(System) 。此操作将使系统能够计算生命周期设置,而这通常可以优化性能。在默认情况下,系统以5秒的间隔无限循环。

    点击查看大图。

  4. 点击粒子更新(Emitter Update)的 加号 ( + ),然后选择 生成(Spawning)> 生成率(Spawn Rate) 。还可在搜索栏中键入"spawn",如下所示。

    点击查看大图。

  5. 打开 生成率(Spawn Rate) 模块。将 生成率(Spawn Rate) 设为 8 ,并将 生成组(Spawn Group) 设为 1

    点击查看大图。

### 火花迸发发射器 - 编辑粒子生成设置 下一步,你将在 粒子生成(Particle Spawn) 组中编辑模块。这些是粒子首次生成时将应用的效果。

  1. 系统概览(System Overview) 中,点击 粒子生成(Particle Spawn) 组以在 选择(Selection) 面板中打开。

    点击查看大图。

  2. 点属性(Point Attributes) 下,将粒子 生命周期(Lifetime) 设为 .2

    点击查看大图。

  3. 质量模式(Mass Mode) 设置为 随机(Random) ,将质量的 最小值(Minimum) 最大值(Maximum) 设为下列值:

    点击查看大图。

    参数

    最小值(Minimum)

    .6

    最大值(Maximum)

    1.0

  4. Sprite属性(Sprite Attributes) 下,展开 Sprite大小(Sprite Size) 。将 Sprite大小模式(Sprite Size Mode) 设置成 随机非同一(Random Non-Uniform) 。将"Sprite大小(Sprite Size)"的 最小值(Minimum) 最大值(Maximum) 设为下列值:

    点击查看大图。

    参数

    最小值(Minimum)

    X: 10, Y: 10

    最大值(Maximum)

    X: 30, Y: 25

  5. 点击 Sprite旋转(Sprite Rotation) 旁的复选框,启用该选项。将 Sprite旋转模式(Sprite Rotation Mode) 设置成 直角(度)(Direct Angle (Degrees)) 。点击值字段旁边的下拉框,并选择 动态输入(Dynamic Inputs)> 随机范围浮点(Random Ranged Float) 。还可在搜索栏中键入"uniform",如下所示。

    点击查看大图。

  6. 最小值 (Minimum)和 最大值 (Maximum)设为下列值:

    点击查看大图。

    参数

    最小值(Minimum)

    -10

    最大值(Maximum)

    30

  7. 点击粒子生成(Particle Spawn)的 加号 ( + ),然后选择 生成(Spawning)> 添加速度(Add Velocity) 。还可在搜索栏中键入"velocity",如下所示。

    点击查看大图。

  8. 打开 添加速度(Add Velocity) 模块。点击值旁边的下拉框,并选择 动态输入(Dynamic Inputs)> 统一范围向量(Uniform Ranged Vector)

    点击查看大图。

  9. 将速度的 最小值(Minimum) 最大值(Maximum) 设为下列值:

    点击查看大图。

    参数

    最小值(Minimum)

    X:0,Y:0,Z:0

    最大值(Maximum)

    X:5,Y:5,Z:5

  10. 点击粒子生成(Particle Spawn)的 加号 ( + ),然后选择 位置(Location)> 球体位置(Sphere Location) 。还可在搜索栏中键入"sphere",如下所示。

    点击查看大图。

  11. 打开 球体位置(Sphere Location) 模块。将 球体半径(Sphere Radius) 设为 5

    点击查看大图。

火花迸发发射器 - 编辑粒子更新设置

现在,你将在 粒子更新(Particle Update) 组中编辑模块。这些行为将应用于发射器的粒子并更新每一帧。

  1. 在系统概览(System Overview)中,点击 粒子更新(Particle Update) 组以在 选择(Selection) 面板中打开。

    点击查看大图。

  2. 打开 缩放色阶(Scale Color) 模块。对于 缩放RGB(Scale RGB) ,将 RGB 值设置如下。

    点击查看大图。

  3. 对于 缩放Alpha(Scale Alpha) ,将alpha停止点设置如下。

  4. 点击粒子更新(Particle Update)的 加号 ( + ),然后选择 大小(Size)> Sprite尺寸缩放(Sprite Size Scale) 。还可在搜索栏中键入"size",如下所示。

    点击查看大图。

  5. 打开 Sprite大小缩放(Sprite Size Scale) 模块。点击 缩放因子(Scale Factor) 值字段旁边的下拉框,并选择 动态输入(Dynamic Inputs)> 随机范围向量2D(Random Ranged Vector 2D) 。还可在搜索栏中键入 random ,如下所示。

    点击查看大图。

  6. 将缩放因子的 最小值(Minimum) 最大值(Maximum) 设为下列值:

    点击查看大图。

    参数

    最小值(Minimum)

    X:1.0,Y:2.5

    最大值(Maximum)

    X:3.5,Y:2.5

添加弧度火花发射器到系统

  1. 右键点击SparkFountain系统的 系统概览(System Overview) 。点击 添加发射器(Add Emitter) ,现有发射器的列表随即显示。

    点击查看大图。

  2. 从发射器列表中,选择 简易Sprite迸发(Simple Sprite Burst) 模板。

    点击查看大图。

  3. 模板发射器的默认名称为 SimpleSpriteBurst ,但你可以对其重命名。点击发射器名称,该字段将转变为可编辑状态。将新系统命名为 FX_SparksRadial

    点击查看大图。

弧度火花发射器 - 编辑渲染器设置

虽然 渲染(Render) 组是堆栈中的最后一项,但你需要更改材质,以便效果按照预期方式显示。

  1. 系统概览(System Overview) 中,点击 渲染器(Renderer) 组以在 选择(Selection) 面板中打开。

    点击查看大图。

  2. 点击 材质(Material) 下拉框并选择 M_Radial_Gradient 材质。此材质来自初学者内容包。

    点击查看大图。

  3. 点击 对齐(Alignment) 下拉列表,然后选择 速度对齐(Velocity Aligned)

    点击查看大图。

    弧度火花发射器 - 编辑发射器更新设置

    首先,你将在 发射器更新(Emitter Update) 组中编辑模块。这些是将应用于发射器并更新每一帧的行为。

  4. 系统概览(System Overview) 中,点击 粒子更新(Particle Update) 组以在 选择(Selection) 面板中打开。

    点击查看大图。

  5. 点击 垃圾桶 图标,以移除 Sprite即时迸发(Sprite Burst Instantaneous) 模块。

    点击查看大图。

  6. 打开 发射器状态(Emitter State) 模块。此模块控制此发射器的时间和可延展性。由于你使用了 简单Sprite迸发(Simple Sprite Burst) 模板,因此 生命周期模式(Life Cycle Mode) 设置为 自身(Self) 。通常,该模式用于为此特定发射器完全定制发射器生命周期逻辑,但此效果并不需要它。点击下拉列表,并将 生命周期模式(Life Cycle Mode) 设置为 系统(System) 。此操作将使系统能够计算生命周期设置,而这通常可以优化性能。在默认情况下,系统以5秒的间隔无限循环。

    点击查看大图。

  7. 点击 粒子更新(Particle Update) 加号(Plus sign) 图标( + ),然后选择 生成 > 生成率(Spawning > Spawn Rate) 。你也可以在搜索栏中输入 spawn ,如下所示。

    点击查看大图。

  8. 打开 生成速率(Spawn Rate) 模块。将 生成速率(Spawn Rate) 设置为 500

    点击查看大图。

弧度火花发射器 - 编辑粒子生成设置

下一步,你将在 粒子生成(Particle Spawn) 组中编辑模块。这些是粒子首次生成时将应用于粒子的行为。

  1. 在系统概览(System Overview)中,点击 粒子生成(Particle Spawn) 组以在 选择(Selection) 面板中打开。

    点击查看大图。

  2. 打开 初始化粒子(Initialize Particle) 模块。在 点属性(Point Attributes) 下,展开 生命周期(Lifetime) 。将生命周期(Lifetime)的模式设置为 随机(Random) ,将 最小值 ( Minimum)和 最大值 (Maximum)设为下列值:

    点击查看大图。

    参数

    最小值(Minimum)

    2

    最大值(Maximum)

    7

  3. 展开 质量(Mass) 。将 质量模式(Mass Mode) 设置为 随机(Random) ,将 最小值 (Minimum)和 最大值 (Maximum)设为下列值:

    点击查看大图。

    参数

    最小值(Minimum)

    .3

    最大值(Maximum)

    .6

  4. 展开 颜色(Color) 。将 颜色模式(Color Mode) 设置为 直接设置(Direct Set) ,将RGB值设为下列值:

    点击查看大图。

    参数

    红色(Red)

    2

    绿色(Green)

    8

    蓝色(Blue)

    20

    Alpha

    1

  5. Sprite属性(Sprite Attributes) 下,将 Sprite大小模式(Sprite Size Mode) 设置为 非统一(Non-Uniform) 。设置以下值: X:.25,Y:.5

    点击查看大图。

  6. Sprite旋转模式(Sprite Rotation Mode) 保留位 未设置(Unset)

  7. 点击 粒子生成(Particle Spawn) 加号(Plus sign) 图标( + ),然后选择 质量 > 按质量计算尺寸和旋转惯性(Mass > Calculate Size and Rotational Inertia by Mass) 。你也可以在搜索栏中输入 calculate ,如下所示。

    点击查看大图。

  8. 打开 按质量计算尺寸和旋转惯性(Calculate Size and Rotational Inertia by Mass) 模块。在 密度(Density) 下,将 按材质类型划分的密度(Density by Material Type) 设置为 水(Water)

    点击查看大图。

  9. 比例(Proportions) 下,将 高度(Height) 更改为 .5

    点击查看大图。

  10. 点击 粒子生成(Particle Spawn) 加号(Plus sign) 图标( + ),然后选择 速度 > 添加速度(Velocity > Add Velocity) 。你也可以在搜索栏中输入速度,如下所示。

    点击查看大图。

  11. 打开 添加速度(Add Velocity) 模块。点击下拉菜单,选择 动态输入(Dynamic Inputs) > 随机范围向量(Random Range Vector) 。将速度 最小值 (Minimum)和 最大值 (Maximum)设为下列值:

    点击查看大图。

    参数

    最小值(Minimum)

    X:-100,Y:-100,Z:300

    最大值(Maximum)

    X:90,Y:90,Z:500

  12. 点击按钮 展示高级(Show Advanced) 。将 缩放添加速度(Scaled Added Velocity) 设为 X:3,Y:4,Z:1

    点击查看大图。

  13. 点击 粒子生成(Particle Spawn) 加号(Plus sign) 图标( + ),然后选择 位置(Location)> 球体位置(Sphere Location) 。你也可以在搜索栏中输入球体,如下所示。

    点击查看大图。

  14. 打开 球体位置(Sphere Location) 模块。将 球体半径(Sphere Radius) 设置为 2.0

    点击查看大图。

弧度火花发射器 - 编辑粒子更新设置

现在,你将在 粒子更新(Particle Update) 组中编辑模块。这些行为将应用于发射器的粒子并更新每一帧。

  1. 系统概览(System Overview) 中,点击 粒子更新(Particle Update) 组,以在 选择(Selection) 面板中将其打开。

    点击查看大图。

  2. 点击 粒子更新(Particle Update) 加号(Plus sign) 图标( + ),然后选择 力 > 重力(Forces > Gravity Force)

    点击查看大图。

  3. 由于Niagara将新模块添加到组堆栈底部,因此你会收到一条显示"模块有未满足的依赖关系(The module has unmet dependencies)"的错误消息。这是因为 重力(Gravity Force) 模块放置在 解算力和速度(Solve Forces and Velocity) 模块之后。点击 修复问题(Fix Issue) 按钮,以移动模块并解决错误。

    点击查看大图。

  4. 打开 重力(Gravity Force) 模块。将 Z 值更改为 -4500

    点击查看大图。

  5. 点击 粒子更新(Particle Update) 加号(Plus sign) 图标( + ),然后选择 力 > 阻力(Forces > Drag)

    点击查看大图。

  6. 打开 阻力(Drag) 模块,将 阻力(Drag) 值设置为 1.7

    点击查看大图。

  7. 点击 粒子更新(Particle Update) 加号 ( + ) 并选择 碰撞(Collision)> 碰撞(Collision) 。还可在搜索栏中键入"collision",如下所示。

    点击查看大图。

  8. 你将收到一条显示"模块具有未满足依赖性"的错误消息。点击 修复问题(Fix Issue) 按钮,以将 碰撞(Collision) 模块移至 解算力和速度(Solve Forces and Velocity) 模块上方,从而解决该错误。

  9. 打开 碰撞(Collision) 模块。在 反射(Bounce) 中,将 恢复力(Restitution) 值设置为 .4

    点击查看大图。

  10. 摩擦力 中,将 摩擦力 值设置为 .2

    点击查看大图。

  11. 点击 垃圾桶(Trashcan) 图标,以移除 缩放色阶(Scale Color) 模块。

    点击查看大图。

  12. 点击 加号(Plus sign) + ),然后选择 大小 > 按速度缩放Sprite大小(Size > Scale Sprite Size by Speed) 。你也可以在搜索栏中输入 size ,如下所示。

    点击查看大图。

  13. 打开 按速度Sprite大小缩放(Sprite Size Scale by Speed) 模块。将 比例因子(Scale Factor) 的最小值(Minimum)和最大值(Maximum)设置如下:

    点击查看大图。

    参数

    数值

    最小值(Minimum)

    X: 0, Y: 3

    最大值(Maximum)

    X: .5, Y: 6

  14. 速度阈值(Velocity Threshold) 值设为 3000

    点击查看大图。

最终结果

祝贺你!在完成上述步骤后,SparkFountain系统将在关卡中产生类似下图的火花喷泉。左侧你可以看到基于Niagara的火花喷泉效果,而在右侧你可以看到基于Cascade的火花喷泉效果。

欢迎帮助改进虚幻引擎文档!请告诉我们该如何更好地为您服务。
填写问卷调查
取消