在Niagara中创建条带效果

此文档描述如何使用Niagara创建条带视觉效果。

Windows
MacOS
Linux
Prerequisite Topics

This page assumes you have prior knowledge of the following topics. Please read them before proceeding.

操作前提:本教程将用到Niagara插件中的"默认条带材质"(DefaultRibbonMaterial)。但是,如果你已完成创建网格体粒子效果 教程,则可以使用该教程中使用的M_Balloon材质。

模拟自然现象是很有挑战性的,特别是当使用基于sprite或网格体的粒子来模拟烟雾或蒸汽轨迹时。条带发射器(Ribbon Emitters) 是模拟这些对象的优秀解决方案。在接下来的教程中,你将了解如何设置Niagara发射器以将连续条带状粒子效果发射到世界场景中。

创建系统和发射器

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

  1. 首先,在内容浏览器中点击右键并选择 FX > Niagara系统(FX > Niagara System),以创建Niagara系统。将显示Niagara发射器(Niagara Emitter)向导。

    点击查看大图。

  2. 选择 从所选发射器新建系统(New system from selected emitters)。然后单击 下一步(Next)

    点击查看大图。

  3. 模板(Templates) 下选择 简单Sprite迸发(Simple Sprite Burst)

    使用模板将在新系统中放置发射器实例,且此发射器实例将没有任何继承。

    点击查看大图。

  4. 单击 加号(Plus sign) 图标(+),以将所选发射器添加要添加到系统的发射器列表中。然后单击 完成(Finish)

    点击查看大图。

  5. 将新系统命名为 RibbonSystem。双击以在Niagara编辑器中将其打开。

    Name New System

  6. 新系统中发射器实例的默认名称为 SimpleSpriteBurst,但你可以对其重命名。在 系统概览(System Overview) 中单击发射器实例名称,该字段将转变为可编辑状态。将发射器命名为 FX_Ribbon

    点击查看大图。

更改渲染器

虽然 渲染 组是堆栈中的最后一项,但你需要更改部分内容,以便效果按预期方式显示。原始模板使用了Sprite渲染器,但此效果需要条带渲染器。

  1. 系统概览(System Overview) 中,单击 渲染(Render),以便在 选择(Selection) 面板中将其打开。

    点击查看大图。

  2. 若要创建条带效果,你需要 条带渲染器(Ribbon Renderer) 模块。但该模板具有 Sprite渲染器 模块。单击 垃圾桶(Trashcan) 图标,以删除Sprite渲染器。

    点击查看大图。

  3. 单击 渲染器(Render)加号 图标(+),并选择 条带渲染器(Ribbon Renderer)

    点击查看大图。

  4. 在默认情况下,此所需材质不显示。单击 材质(Material) 下拉列表,并单击 查看选项(View Options) 以打开选项列表。勾选 显示引擎内容(Show Engine Content)显示插件内容(Show Plugin Content) 的复选框。现在,你将能够看到此材质。

    点击查看大图。

  5. 单击 材质(Material) 下拉列表,并选择 DefaultRibbonMaterial

    如果你完成了创建网格体粒子效果 课程,则可以选择 M_Balloon 材质。你可以借此获得不透明条带,而不是由"DefaultRibbonMaterial"创建的半透明条带。

    点击查看大图。

  6. RibbonSystem 拖到关卡中。

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

编辑发射器更新组设置

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

即使是添加Ribbon渲染器并在发射器更新组中编辑设置后,你也不会看到条带出现。这属于正常情况!当你转到本文的"粒子生成"部分后,你将开始看到实际条带。

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

    点击查看大图。

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

    点击查看大图。

  3. 当发射器处于活动状态时,生成速率(Spawn Rate) 模块创建连续粒子流。此模块已经存在于简单Sprite迸发模板中。将 生成速率(Spawn Rate) 设置为 100

    Click image for full size.

  4. 生成速率(Spawn Rate) 设置成 100

    点击查看大图。

编辑粒子生成组设置

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

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

    点击查看大图。

  2. 展开 初始化粒子(Initialize Particle) 模块。单击 垃圾桶(Trashcan) 图标,以将其删除。由于有另一模块用于初始化条带,因此你无需此模块。

    点击查看大图。

  3. 由于 初始化条带(Initialize Ribbon) 将多个参数收集到一个模块中,因此它可以执行与初始化粒子类似的功能。单击 粒子生成(Particle Spawn)加号 图标(+),然后选择 初始化 > 初始化条带(Initialize > Initialize Ribbon)

    点击查看大图。

  4. 点属性(Point Attributes) 下,找到 生命周期(Lifetime) 参数。此参数确定了粒子在消失之前将显示多久。将 生命周期(Lifetime) 设置为 5

    点击查看大图。

  5. 将 *质量(Mass)** 参数设置为 **10**。这会影响条带向外扩散的方式及其下降的速度。

    点击查看大图。

  6. 关于 颜色 参数,将 R(红色)值设置为 1。将其他值保留为 0。如果你愿意,也可以稍后更改颜色。

    点击查看大图。

  7. 点属性(Point Attributes) 下,将 条带宽度(Ribbon Width) 设置为 10

    点击查看大图。

  8. 若要使条带以螺旋方式旋转,你可以添加 环形曲面位置(Torus Location) 模块。位置模块会影响粒子生成时所在位置的形状。单击 粒子生成(Particle Spawn)加号 图标(+),然后选择 位置 > 环形曲面位置(Location > Torus Location)

    点击查看大图。

  9. 形状(Shape) 下,单击 环形曲面模式(Torus Mode) 下拉列表,并选择 环(Ring)

    点击查看大图。

  10. 大半径(Large Radius) 设置为 50。大半径确定了主环形状的大小。

    点击查看大图。

  11. 分布(Distribution) 下,单击 环形曲面分布模式(Torus Distribution Mode) 下拉列表,并选择 直接(Direct)

    点击查看大图。

  12. U位置(U Position) 参数将在环形形状上设置位置。展开 参数(Parameters) 面板的 发射器属性(Emitter Attributes) 部分。将 Emitter.Age 参数拖到 选择(Selection) 面板上;你将看到可使用此参数的字段周围出现绿色虚线。将 Emitter.Age 参数放在 U位置(U Position) 值上。条带现在看起来像在静态环中旋转,但你将在下一步改变这种状况!

    点击查看大图。

  13. 现在,你将向条带添加一些速度。单击 粒子生成(Particle Spawn)加号 图标(+),然后选择 速度 > 从点添加速度(Velocity > Add Velocity From Point)

    点击查看大图。

  14. 速度强度(Velocity Strength) 设置为 50。现在,你将看到条带开始呈螺旋形旋转!出现这种情况是因为位置在围绕大半径旋转,速度将条带从原来的圆环位置向外推。

    点击查看大图。

编辑粒子更新组设置

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

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

    点击查看大图。

  2. 此效果只有一种颜色,因此无需 缩放色阶(Scale Color) 模块。单击 垃圾桶(Trashcan) 图标,以将其删除。

    点击查看大图。

  3. 添加 加速力(Acceleration Force) 模块。正是它在模拟重力而使螺旋条带掉落。单击 粒子更新(Particle Update)加号 图标(+),然后选择 力 > 加速力(Forces > Acceleration Force)

    点击查看大图。

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

    点击查看大图。

  5. 加速(Acceleration)Z 值设为 -200。正Z值会使条带螺旋上升;负Z值会使条带以抛物线形状下降。

    点击查看大图。

最终结果

祝贺你!你已经在Niagara中创建了条带效果。在下方视频中,你可以看到左侧使用 DefaultRibbonMaterial 实现了条带效果,而在右侧看到使用 M_Balloon 纹理实现的相同条带效果。

Tags
Select Skin
Light
Dark

Welcome to the new Unreal Engine 4 Documentation site!

We're working on lots of new features including a feedback system so you can tell us how we are doing. It's not quite ready for use in the wild yet, so head over to the Documentation Feedback forum to tell us about this page or call out any issues you are encountering in the meantime.

We'll be sure to let you know when the new system is up and running.

Post Feedback