UE4 Niagara | 4. 发射器模块参数详细介绍
前言
发射器模块
橙色

绿色

红色

这三部分组成,这些里面使用的一些控制属性,上一节也说了,是公用的一些脚本。

目的
介绍这些模块都可以使用那些属性。
发射器属性


Local Space 是否使用-相对坐标
Determinism 取消是否随机发射
Random Seed 随机数值
扩展:
这里类似unity的这个(加深理解)

Sim Target 是在CPU或者GPU渲染计算
Fixed Bounds 粒子发射器的边界
注意:粒子系统有一个发射器也有一个控制显示边界的。

Is Template Asset 开启是否生成模板
Template 标签 标签可以设置属于哪个模板

发射器生成模块 (单次)

Location(位置模块)
在网格中生成粒子(Spawn Particles in Grid)
此参数根据用户定义的网格分辨率设置生成粒子。
MAXScripts (脚本模块)
生成MS顶点动画工具变换目标(Spawn MS Vertex Animation Tools Morph Target)
此参数生成并采样先前使用顶点动画工具创建的变换目标纹理。顶点动画工具生成表示变换目标混合形状的纹理。此模块为工具采集的每个顶点生成一个粒子。此模块应与 更新MS顶点动画工具变换目标(Update MS Vertex Animation Tools Morph Target) 模块配合使用。
Spawnimg ( 生成模块)
每单位生成(Spawn Per Unit)
此模块根据以虚幻单位表示的传播距离生成粒子。
生成速率(Spawn Rate)
此模块以特定速率持续生成粒子。
其他参考官方文档
https://docs.unrealengine.com/zh-CN/RenderingAndGraphics/Niagara/EmitterReference/EmitterSpawn/index.html
发射器更新模块(循环)

发射器状态

Life Cycle Mode 生命周期模式 ( Self 自生时间 System 系统时间)
Inactive Response 非活动响应 (表示发射器什么时候活动或者停止)
Loop Behavior 发射器循环
once 一次
infinite 无线循环
Multiple 循环次数
Loop Duaration Mode 循环持续时间模式 ( Fixed 固定 infinite 无线的)
Loop Duration 循环持续时间 (0 无限循环)
Loop Delay 发射器延迟几秒发射 (这个属性是默认关闭的需要打开)
理解 类似unity

官方介绍

注意:生命周期模式(System )无参数, 下面详细演示(Self)下的数值使用

示例1: 循环

infinte 循环模式
循环持续时间 表示 1 秒循环一次,
效果 一秒发射一次火星

如果把循环持续时间改成 0 , 效果就类似喷泉

示例2 : 单次
选择单次发射会出现新属性 (Loop Duaration Mode)循环持续时间模式
(目前测试没有效果变化)

问题: 那(Loop Duration)循环持续时间 对单次有影响吗?
有如果循环时间很短,粒子就无法出生就又开始循环了,
这里的时间是控制发射器的存在时间。
效果

可能以后学习的更多会有影响.
示例3 : 几次
设置发射6次, 表现效果是播放完会发射6次粒子.

那(Loop Duration ) 循环持续时间 对有影响吗?
有影响,我们设置1秒, 粒子就会间隔一秒发射一次. 如果设置 3就会间隔3秒发射一次.
在这里可以理解成 间隔时间
效果,间隔时间0.3表现效果


小技巧: 粒子系统按空格快捷键,就可以播放特效效果。

发射器更新
还有那些属性

Audio(音频模块)

Beam(光束模块)

此模块提供光束的 起点、终点 和 切线 设置
Chaos (混乱模块)

从Chaos中生成(Spawn from Chaos),此模块导致粒子在响应混沌事件时产生
Default (违约模块)

Emitter (发射器模块)

这就是我们一开始详细介绍的模块
Location (位置模块)

在网格中生成粒子(Spawn Particles in Grid)
此参数根据用户定义的网格分辨率设置生成粒子。
Max脚本模块

生成MS顶点动画工具变换目标(Spawn MS Vertex Animation Tools Morph Target)
此参数生成并采样先前使用顶点动画工具创建的变换目标纹理。顶点动画工具生成 示变换目标混合形状的纹理。此模块为工具采集的每个顶点生成一个粒子。此模块 应与 更新MS顶点动画工具变换目标(Update MS Vertex Animation Tools Morph Target) 模块配合使用。
Spawning (生成模块)

生成即时迸发(Spawn Burst Instantaneous)
此模块自发生成大量粒子。
每帧生成(Spawn Per Frame)
此模块在各个帧中生成大量粒子。
每单位生成(Spawn Per Unit)
此模块根据以虚幻单位表示的传播距离生成粒子
生成速率(Spawn Rate)
此模块以特定速率持续生成粒子。
其他模块使用到在介绍
经常使用的模块
生成模块
发射器模块

资料参考
https://docs.unrealengine.com/zh-CN/RenderingAndGraphics/Niagara/EmitterReference/ParticleSpawn/index.html
粒子生成模块
粒子初始的一些属性,比较多,介绍一些经常使用到的属性
Color (颜色)

粒子出生时的颜色

效果

Debug (调试)

Force (力模块)



Particle (初始化模块)

包含了 点属性(Point Attributes)
lifetime Mode (生命周期)
Color (颜色)
Position (位置)

Sprite Attributes (材质属性)

注意:这个是对Sprite渲染模式起作用
这里可以控制材质随机大小,随机角度,随机UV等,
Mesh Attributes (模型属性)

设置随机模型大小等数值
具体设置参考下一篇 4.5
扩展 Unset 属性设置
UE4默认数值的设置方式,有4种

Uniform 固定数值

Random Uniform 范围数值

Non-Uniform X和Y的数值不一样。
这个数值可以调整大小不一样。

Random Non-Uniform 类似上面,就是范围值

其他参考
颜色的随机范围

如果上面没有选项,怎么设置随机大小,
示例
位置属性没有随机位置,

解决方法
选择Direct Set (设置数值)选择旁边链条

—选择Random Range Vector 数据

就出现范围值——设置数值。

效果


Location(位置模块)

BoxLocation (盒子位置类型)



注意: 这些是在粒子生成模块增加的,所以是粒子出生的位置

Velocity (速度模块)

增加一个速度模块,自动会在粒子更新增加一个

因为速度会产生买一帧都不一样,所以会每帧更新。
注意: 现在介绍都是在粒子生成模块增加的属性,是在粒子出生状态增加的。
在明确粒子生成是粒子出生的属性,粒子更新是粒子每一帧的状态。
粒子更新模块
Collision 碰撞模块


很多情况是需要碰撞模块的。
Evebts(事件模块)
这个模块适合制作粒子比如生成的时候触发什么,死亡触发什么,


扩展:
类型unity的Sub Emitters 模块

注意: 使用事件模块,需要碰撞模块。没有碰撞模块不能使用事件模块。
Lifetime (生命周期模块)

材质模块

这个节点是可以控制材质里的动态效果,

比如实现一些动态溶解,等等
Physics (物理模块)


其他模块使用到在介绍,
资料参考
https://docs.unrealengine.com/zh-CN/RenderingAndGraphics/Niagara/EmitterReference/ParticleSpawn/index.html
https://www.bilibili.com/video/BV1Vv411C7Vp
https://docs.unrealengine.com/zh-CN/RenderingAndGraphics/Niagara/EmitterReference/EmitterUpdate/index.html
问题1: 一个发射器产生基础粒子都需要哪些节点?

SPAWN RATE 产生的粒子数