Niagara快速入门

一份帮助你快速掌握虚幻引擎4 Niagara视觉效果系统的指南。

Windows
MacOS
Linux
前置主题

此页面假定您已掌握以下主题的前置知识。请在继续之前先阅读它们。

目标

Niagara快速入门旨在帮助用户了解如何使用Niagara在虚幻引擎中创建视觉效果(VFX)。

目的

  • 如何利用Niagara使用网格体和材质设置项目。

  • 如何使用Niagara发射器和系统创建基础效果。

  • 如何将Niagara效果附加到角色,使该效果在动画中显示。

1 - 项目设置

在本指南中,使用的是已启用 初学者内容包(Starter Content)蓝图第三人称模板(Blueprint Third Person Template) 项目。若你尚未在虚幻引擎中创建过项目,请参见创建项目 了解如何创建项目。

在创建Niagara效果前,你需要在先项目中设置一些基础材质和资产,以便在接下来的指南中使用。在完成此部分学习后,你将拥有创建Niagara效果所需的一切。

创建网格体形状

首先,你需要为效果设置网格体形状。你将创建一阵尘土,作为角色奔跑时产生的效果。你可在3D建模应用程序中创建此形状并导出,然后导入UE4项目。

  1. 在内容浏览器(Content Browser)中,右键点击并选择 新建文件夹(New Folder),创建用于此快速入门指南的文件夹。将所有资源都放入此文件夹。将该文件夹命名为 Quickstart

  2. 在3D建模应用程序中创建一个小型云朵形状,如下图所示。

    如果你无法使用高级3D建模应用程序(例如3DS Max或Maya),也可选择开源3D建模应用程序,例如Blender

网格体形状

创建材质

现在将制作用于尘云的基础材质。执行以下步骤。

  1. 内容浏览器(Content Browser) 中点击右键并选择 材质(Material)

    点击查看大图。

  2. 将新材质命名为 M_DustPoof。双击新材质,在材质编辑器(Material Editor)中打开它。

命名材质

  1. 选中主要材质节点后,在 细节(Details) 面板中找到 材质(Material) 部分。将 混合模式(Blend Mode) 更改为 半透明(Translucent)。选中 双面(Two Sided) 复选框。将其他设置保留为默认。

    点击查看大图。

  2. 右键点击图表,然后在搜索栏中输入 particle。选择 粒子颜色(Particle Color),添加Particle Color节点。将Particle Color节点的顶部输出插入到主材质节点上的 底色(Base Color) 输入。

    点击查看大图。

  3. 创建 Texture Sample 节点。按住T并在节点图表内进行点击即可完成此操作。

  4. 选中Texture Sample节点后,在 细节(Details) 面板中找到 材质表达式纹理基础(Material Expression Texture Base) 部分。点击下拉列表,然后在搜索栏中输入 噪点(Noise)。选择 T_Perlin_Noise_M 纹理。

    点击查看大图。

  5. 右键点击图表,然后在搜索栏中输入 dynamic。选择 Dynamic Parameter 以添加该节点。

    点击查看大图。

  6. 选中Dynamic Parameter节点后,在 细节(Details) 面板中找到 材质表达式动态参数(Material Expression Dynamic Parameter) 分段。在 数组0 中,将名称更改为 Erode

    点击查看大图。

  7. 右键点击图表,然后在搜索栏中输入 step。选择 Value Step 以添加该节点。

    点击查看大图。

  8. 从Texture Sample节点的 R 输出连出引线,并将其插入Value Step节点的 梯度(Gradient) 输入。

    点击查看大图。

  9. 从Dynamic Parameter节点的 Erode 连出引线,并将其插入Value Step节点的 遮罩偏移值(Mask Offset Value) 输入。

    点击查看大图。

  10. 从Value Step节点的 结果(Results) 输出连出引线,并将其插入主材质节点的 不透明度(Opacity) 输入。

    点击查看大图。

  11. 点击 应用(Apply)保存(Save),然后关闭材质编辑器(Material Editor)。

阶段成果

现在你已拥有网格体形状和基础材质。你现在已具备了创建Niagara效果所需的一切条件。

2 - 创建效果

创建系统和发射器

接下来将创建Niagara系统。与Cascade不同,Niagara中的发射器和系统相互独立。目前推荐的工作流程是从现有发射器或发射器模板创建系统。

  1. 首先,在 内容浏览器(Content Browser) 中右键点击,创建Niagara系统(Niagara System),并在显示的菜单中选择 FX > Niagara系统(FX > Niagara System)。这样会显示Niagara发射器(Niagara Emitter)向导。

    点击查看大图。

  2. 选择 来自选定发射器的新系统(New system from selected emitters)。然后点击 下一步(Next)

    点击查看大图。

  3. 在模板(Template)中,选择 简单Sprite喷发(Simple Sprite Burst)。点击 加号 图标(+),将发射器添加到要添加到系统的发射器列表中。然后点击 完成(Finish)

    点击查看大图。

  4. 将系统命名为 FX_FootstepDustPoof。双击并在Niagara编辑器(Niagara Editor)中打开它。

    点击查看大图。

  5. 新系统中发射器实例的默认名称为 SimpleSpriteBurst。新系统中发射器实例的默认名称为SimpleSpriteBurst。但它可以重命名。在系统总览中点击发射器实例的名称,其将变为可编辑。将发射器命名为 FX_DustPoof

    点击查看大图。

  6. 除非在渲染器中设置网格体和材质,否则在预览中看不到任何内容。因此,在 系统总览(System Overview) 中,选择 渲染器(Render),在 选择(Selection) 面板中将其打开。

    点击查看大图。

  7. 点击 垃圾桶 图标,删除Sprite渲染器(Sprite Renderer)。

    点击查看大图。

  8. 点击 加号+)图标,然后从列表中选择 网格体渲染器(Mesh Renderer)

    点击查看大图。

  9. 点击 粒子网格体(Particle Mesh) 旁边的下拉列表,然后选择在 项目设置(Project Setup) 部分中创建的网格体。

    点击查看大图。

  10. 点击启用 覆盖材质(Override Materials)。默认值为 0数组元素。点击 加号+)图标添加 数组元素。点击 显示材质(Explicit Material) 旁边的下拉列表,然后选择在 项目设置(Project Setup) 部分中创建的材质。

    点击查看大图。

  11. 对于 面向模式(Facing Mode),请点击下拉列表,然后选择 速度(Velocity)

  12. 内容浏览器(Content Browser) 中,将Niagara系统拖入关卡。将其放置在玩家角色的脚部附近,检查角色相关效果的大小和形状。

制作粒子效果时,最好将系统拖入关卡。这样你就能了解每项更改的效果并在情境中编辑。

阶段成果

完成本部分后,你就拥有了Niagara系统和发射器实例,并且已将系统拖入关卡(Level),以便在玩家角色(Player Character)旁边预览。在下一部分中,你将在Niagara系统中编辑设置,创建尘云效果。

3 - 编辑模块设置

Niagara编辑器会以堆栈形式显示发射器中的内容;每个发射器都拥有若干组设置。你将逐个编辑各组设置中的模块。

在某些效果中,发射器生成(Emitter Spawn)组或系统(System)组可能会拥有一些模块。但在你创建的这个效果中,并没有这些内容,因此你将跳过这些组。

发射器更新设置

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

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

    点击查看大图。

  2. 展开 发射器状态(Emitter State) 模块。默认情况下,生命周期模式(Life Cycle Mode) 应设为 自身(Self)

  3. 发射器状态(Emitter State) 设置更改为以下值。这样就能让尘云只产生一次然后就消散。

    点击查看大图。

参数

生命周期模式(Life Cycle Mode)

自身(Self)

无效响应(Inactive Response)

完成(Complete)

循环行为(Loop Behavior)

一次(Once)

循环时长模式(Loop Duration Mode)

固定(Fixed)

循环时长(Loop Duration)

1

  1. 展开 Spawn Burst Instantaneous 模块。将 生成数量(Spawn Count) 设置为 10。生成数量为10将生成大小合适、足够可见的尘云。

    点击查看大图。

粒子生成设置

然后,在粒子生成(Particle Spawn)组中编辑模块。此为首次生成粒子时应用于粒子的行为。

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

    点击查看大图。

  2. 展开 初始化粒子(Initialize Particle) 模块。在 点属性(Point Attributes) 中,找到 生命周期(Lifetime) 设置。点击 生命周期(Lifetime) 旁边的小箭头,然后选择 动态输入(Dynamic Inputs)>统一范围浮点(Uniform Ranged Float)。此操作将 最小值(Minimum)最大值(Maximum) 域添加到生命周期(Lifetime)值。这会让每个粒子的显示时间产生一些随机变化。将 最小值(Minimum)最大值(Maximum) 域设置如下。

    点击查看大图。

    设置

    数值

    最小值(Minimum)

    4

    最大值(Maximum)

    6

  3. 找到 颜色(Color) 设置。在范例中,颜色(Color) 看起来类似于灰尘的浅棕色。将 RGB 值设置如下。

    点击查看大图。

    设置

    数值

    红色

    1.0

    绿色

    .85

    蓝色

    .57

  4. 网格体属性(Mesh Attributes) 中,找到 网格体范围(Mesh Scale) 设置。其拥有 XYZ 值域。点击Z值域旁边的小箭头,然后选择 动态输入(Dynamic Inputs)>统一范围向量(Uniform Ranged Vector)。此操作将 最小值(Minimum)最大值(Maximum) 向量添加到网格体范围(Mesh Scale)值。此设置会让粒子的大小产生随机变化。将X、Y和Z值设置如下。

    点击查看大图。

    设置

    最小值

    最大值

    X值

    1.0

    2.0

    Y值

    1.0

    2.0

    Z值

    1.0

    2.0

  5. 点击 已生成粒子加号+),然后选择 朝向(Orientation)>初始网格体朝向(Initial Mesh Orientation)。其中包含粒子网格体的旋转设置。你需要给形状添加一些旋转效果,避免它们过于雷同。这样会使尘云看起来更自然。

    点击查看大图。

  6. 因为不需要此效果,在 朝向(Orientation) 中点击禁用 朝向向量(Orientation Vector)。在 旋转(Rotation) 中点击启用 旋转(Rotation)。点击 旋转(Rotation) 旁边的向下箭头,然后选择 动态输入(Dynamic Inputs)>统一范围向量(Uniform Ranged Vector)。这样能让你获得少许的随机旋转效果。将 最小值(Minimum)最大值(Maximum) 值保留为默认值。

    点击查看大图。

  7. 点击 已生成粒子加号+),然后选择 位置(Location)>圆柱体位置(Cylinder Location)。圆柱体位置将粒子生成限制为圆柱体形状。

    点击查看大图。

  8. 要使尘云靠近地面,请将 圆柱体高度(Cylinder Height) 更改为 1。若不希望尘云比脚大太多,请将 圆柱体半径(Cylinder Radius) 更改为 10

    点击查看大图。

粒子更新设置

最后,在粒子更新(Particle Update)组中编辑设置。这些行为会应用到粒子上并且每帧更新。

  1. 点击 垃圾桶 图标,删除 缩放色阶(Scale Color) 模块。此效果不需要该模块。

  2. 点击粒子更新(Particle Update)加号+),然后选择 材质(Materials)>动态材质参数(Dynamic Material Parameters)**。这是连接到材质中的Erode动态参数(Erode Dynamic Parameter)的方式。

    可以通过拖动来重新排列系统概述中发射器节点内的模块。但无法在选择(Selection)面板中重新排列模块。

    点击查看大图。

  3. 动态材质参数(Dynamic Material Parameters) 模块中,你应该会看到我们在材质中设置的 Erode 参数。点击Erode的向下箭头,然后选择 动态输入(Dynamic Inputs)>来自曲线的浮点(Float from Curve)

    点击查看大图。

  4. 在曲线中,右键点击直线中间位置,然后选择 将键添加到曲线(Add Key to Curve)。现在曲线上应该有三个关键帧。你可以设置关键帧,使尘云在生命周期初期为不透明,然后慢慢变稀薄然后散开。

    可点击曲线(Curve)旁边的图标,将曲线复制到Niagara曲线(Niagara Curves)面板。下图中该图标以箭头突出显示。

    点击查看大图。

  5. 将曲线中的三个关键帧设为以下值。结果应类似于下图。

    点击查看大图。

    关键帧编号

    时间

    1

    0

    1

    2

    .75

    .75

    3

    1

    0

  6. 点击 粒子更新(Particle Update)加号+)图标,然后选择 速度(Velocity)>从点添加速度(Add Velocity from Point)。来自点的速度使粒子以指定速度从指定位置向外移动。利用此项,可使尘云粒子从脚部开始,并从该处向外移动。

    在添加速度或力模块后会显示错误,因为新添加的模块始终位于组堆栈底部。该位置设定使该模块位于解算力(Solve Forces)和速度(Velocity)模块之后。点击 修复问题(Fix Issue) 可解决此问题。

    点击查看大图。

  7. 在从点添加速度(Add Velocity from Point)模块中,将 速度强度(Velocity Strength) 设为 2.5。不要让粒子散布得太远,只要能够表现奔跑时脚步扬起的尘土即可。这就是为何你应该让速度强度的数值相对较小。

    点击查看大图。

  8. 点击 粒子更新(Particle Update)加号+)图标,然后选择 力(Forces)>加速力(Acceleration Force)。可使用该功能给尘云提供少量的向上动力,以便尘云从脚步处向上向外扩散。

    因为添加的模块始终位于组堆栈底部,添加速度或力模块后会显示错误。该位置设定使该模块位于解算力(Solve Forces)和速度(Velocity)模块之后。点击 修复问题(Fix Issue) 可解决此错误。

    点击查看大图。

  9. 在加速力(Acceleration Force)模块中,将 加速(Acceleration) 设置为 X:0、Y:0 和 Z:200。现在尘云会向外向上扩散,但是向上的动力稍微大了一些。因此要为尘云添加一些阻力。

    点击查看大图。

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

    因为添加的模块始终位于组堆栈底部,添加速度或力模块后会显示错误。该位置设定使该模块位于解算力(Solve Forces)和速度(Velocity)模块之后。点击 修复问题(Fix Issue) 可解决此错误。

    点击查看大图。

  11. 在阻力(Drag)模块中,将 阻力(Drag) 设为 12阻力(Drag) 设置会与加速力相互作用,防止尘云的向上运动看起来不够真实。

    点击查看大图。

阶段成果

你已创建了尘土效果,现在你应该能在关卡中的玩家出生点模型旁边的位置看到此效果。若你觉得效果不合适,你可以调整各种模块设置,直到达到满意的效果。

4 - 将Niagara效果附加到角色

现在要将此效果添加到角色的奔跑动画中。在此示例中,你将把效果添加到第三人称模板中的通用型假人模型上。不过,你也可以用这些步骤将Niagara效果添加到虚幻引擎中的任意角色身上。

  1. 在内容浏览器(Content Browser)中,导航到 人体模型(Mannequin)>动画(Animations)。双击 ThirdPersonRun 动画,将其在动画编辑器中打开。

    点击查看大图。

  2. 动画时间轴(Animation timeline) 中点击 暂停Pause 可暂停循环动画。使用滑动指针找到角色右脚接触地面的瞬间。你需要在该位置添加尘土效果。

    点击查看大图。

  3. 找到 通知(Notifies) 分段。借助通知,你可以在动画上的某个位置进行标记,以便播放粒子效果。会看到一条位于时间轴拖动条下方的直线。右键点击该直线,然后选择 添加通知(Add Notify)>播放Niagara粒子效果(Play Niagara Particle Effect)。这样就能在动画中的该点位置上放置一个标记,并且带有默认标签PlayNiagaraEffect。

    点击查看大图。

  4. 选中 PlayNiagaraEffect 通知后,在 细节(Details) 面板中找到 动画通知(Anim Notify) 部分。在此处选择要添加到动画中的Niagara系统。

    点击查看大图。

  5. 点击 Niagara系统(Niagara System) 旁边的下拉菜单,然后选择在Niagara中创建的 FX_FootstepDustPoof 系统。通知上的标签更改为 FX_FootstepDustPoof

    点击查看大图。

  6. 对左脚重复上述步骤。

阶段成果

你已成功将Niagara效果添加到角色的奔跑动画中。祝贺你!

5 - 最终效果

最终效果

6 - 自行尝试!

在创建完基础效果并将其添加到角色身上后,你可以接着尝试一些其他的操作方法,为该角色执行更多操作。你还可以在Niagara中制作更多效果。

  • 你可以使用条带 来创建角色奔跑时身后的尾迹。

  • 查看动画指南 ,了解如何为角色创建或修改其他动画。

  • 你可以学习如何使用动画蓝图 为角色添加更多效果。

Select Skin
Light
Dark

欢迎来到全新虚幻引擎4文档站!

我们正在努力开发新功能,包括反馈系统,以便您能对我们的工作作出评价。但它目前还未正式上线。如果您对此页面有任何意见与在使用中遭遇任何问题,请前往文档反馈论坛告知我们。

新系统上线运行后,我们会及时通知您的。

发表反馈意见