目录




  • 1.Emission(发射器模块)
  • 2.Shape Module(发射器形状)
  • 3.Velocity over Lifetime module
  • 4.Limit Velocity Over Lifetime module
  • 5.Inherit Velocity module
  • 上一节
  • 下一节


1.Emission(发射器模块)

unity 粒子跟随路径移动 unity怎么让粒子不动_粒子系统


Rate over Time:单位时间发射的粒子数。当你的Duration是5秒,Max Particles是50的话,你的Rate over Time就是10 个/秒,如果你改成了50个/秒,第2秒就不会发射粒子

Rate over Distance:单位距离发射的粒子数。Rate over Time差不多意思。
值得注意的是,如果我们可以结合Emission的Rate over Time和坐标系的Word模式来制作拖尾效果。

我们可以先调高发射器的Rate over Time,然后拖动它。效果如下:

unity 粒子跟随路径移动 unity怎么让粒子不动_ci_02


Bursts(粒子集):产生粒子的事件

Time:设置触发粒子事件的时间(以秒为单位)。注意不能超过Duration,否则就无效。

Count:为可能发出的粒子数量设置一个值,这里为什么用可能来修饰。这与最后一个参数 Probability有关,后面细讲。注意不能超过Max Particles,否则多出来的那部分就不会产生。

Cycles:为播放粒子事件的次数设置一个值(正整数)。如果是无限次的话可以勾选三角上的Infinite。

unity 粒子跟随路径移动 unity怎么让粒子不动_unity_03


Interval:触发粒子事件的周期(以秒为单位)。什么意思呢? 就是当Cycles大于1的时候,那么如果设置的 Interval的值加上Time的值又在Duration范围内,则这个粒子事件就会进行多次播放。实在不理解可看下面的动态图。

Probability:触发此粒子事件的概率。如果为0的话,就永远不会触发该粒子事件,如果为0.5的话那么每次有一半概率触发,如果为1的话那么一定会触发。最后我们来看一下下面这个例子:

参数设置:

unity 粒子跟随路径移动 unity怎么让粒子不动_粒子系统_04

效果:

unity 粒子跟随路径移动 unity怎么让粒子不动_ci_05


我们看到粒子发射了三次(对应Cycles=3),第一次是第0秒,第二次是第2秒,第三次是第4秒。对应Interval=2。每次发射30个粒子。对应Count=30。每次粒子事件一定触发(对应Probability=1).

2.Shape Module(发射器形状)

这里举个例子,讲个圆锥,其它的形状都差不多。

unity 粒子跟随路径移动 unity怎么让粒子不动_unity 粒子跟随路径移动_06


(1)Angle:控制锥体的角度,如果为零的话就会变成圆柱。

(2)Radius:控制锥体半径,当它趋近于零时

(3)Radius Thickness:控制发出粒子的体积的比例。0的话会从形状的外表面发射粒子。1就会从整个体积中释放出粒子。中间的值将会有一部分在里面,有一部分在表面。在锥体中我们需要把它的Emite from属性改为Volume才能看出效果。

如图:

1)当Emite from=Volume,Radius Thickness=0时。

unity 粒子跟随路径移动 unity怎么让粒子不动_ci_07

2)当Emite from=Volume,Radius Thickness=1时。

(4)Arc:这个不好解释直接看图。

unity 粒子跟随路径移动 unity怎么让粒子不动_ci_08


然后来看一下它下面的两个参数。

1.Mode(产生模式):

(1)Random在Arc的范围内随机产生粒子。

(2)Loop在顺时针环形依次产生。

unity 粒子跟随路径移动 unity怎么让粒子不动_ci_09

(3) Ping-Pong:顺时针环形到达原点后,原路返回,一直循环.如图

unity 粒子跟随路径移动 unity怎么让粒子不动_unity_10


2.Spread(控制下一个粒子产生)

产生粒子的在Arc(弧)周围的离散间隔。例如,0的值允许粒子在Arc附近的任何地方产生,而值0.1只在上一个粒子周围(10%)的间隔产生粒子。如果为1则一直在原弧度上产生。

unity 粒子跟随路径移动 unity怎么让粒子不动_Time_11


(5)Length:这个很简单,就是控制锥体的高度,只在Emit from模式下有效

(6)Texture:相当于一个着色器,只要有粒子通过就会相应的着色。如图

unity 粒子跟随路径移动 unity怎么让粒子不动_Time_12


但是我们需要对图片进行如下设置:

点击选择 Read/Write Enabled 这个选项, 然后应用 (Apply) 即可

unity 粒子跟随路径移动 unity怎么让粒子不动_Time_13


不然会出现如下报错:

unity 粒子跟随路径移动 unity怎么让粒子不动_Time_14


(7)然后下面的Position,Rotation,Scale都是对Shape进行移动,旋转,缩放处理。

(8)Align to Direction:根据它们最初的发射方向来确定粒子的朝向。如图:

unity 粒子跟随路径移动 unity怎么让粒子不动_ci_15


(9)Randomize Direction:向随机方向改变粒子的运动方向。设置为0时,此设置不起任何作用。当设置为1时,粒子方向是完全随机的,当取中间值时则有些粒子粒子随机方向,有些则不是,如图当Randomize Directinotallow=0.5时

(10) Spherize Direction:将粒子向圆形方向的方向混合,它们从变换的中心向外移动。设置为0时,此设置不起任何作用。当设置为1时,粒子方向从中心向外指向。如图:

当为base模式时,Spherize Directinotallow=1;

unity 粒子跟随路径移动 unity怎么让粒子不动_Time_16


(11)Randomize Position:控制粒子初始产生的位置。当此设置设置为0时,此设置不起任何作用。任何其他值都会将一些随机性应用于粒子的初始位置。如10的话,就会让有些粒子的的x,y又或者z的值为10。

如图:

unity 粒子跟随路径移动 unity怎么让粒子不动_ci_17

3.Velocity over Lifetime module

作用:控制粒子在其生命周期内的速度
(1)Linear X, Y, Z:控制粒子在X,Y,Z轴上的速度。
如图,当x=10时:

unity 粒子跟随路径移动 unity怎么让粒子不动_unity_18


(2)Orbital X, Y, Z:控制粒子绕X、Y和Z轴的旋转,值越大旋转速度越大。如图:

unity 粒子跟随路径移动 unity怎么让粒子不动_粒子系统_19


3)Offset X, Y, Z:用于调整Orbital旋转轴的位置。

(4)Radial:粒子离[旋转中心位置]的径向速度,也就是说越到后面的的旋转半径越大。类式于龙卷风。听不懂,下面有演示。

(5) Speed Modifier:倍数调节粒子的速度,沿/绕其当前的行进方向。比如,我们可以通过它来调节龙卷风风的高度.下面是一个小练习:通过结合Shape来制作类似于龙卷风的效果。

参数如下:

unity 粒子跟随路径移动 unity怎么让粒子不动_粒子系统_20


效果如下:

unity 粒子跟随路径移动 unity怎么让粒子不动_unity 粒子跟随路径移动_21

4.Limit Velocity Over Lifetime module

(1)Separate Axes:将轴分裂成独立的X,Y和Z分量,单独控制它们的速度。

(2)Speed:设置粒子的速度限制。

(3)Dampen:当一个粒子超过速度限制时,它的速度受Drag(阻尼)影响的程度,为0时只受50%*Drag影响,为1时,则受100%*Drag影响。

(4)Drag:阻尼,学过物理的都知道,阻尼越大,那么物体运动收到的阻力就越大。

(5)Multiply by Size :当启用时,较大的颗粒受阻尼系数的影响更大。

(6)Multiply by Velocity: 当启用时,速度越快,粒子受阻尼系数的影响更大。

如图:

unity 粒子跟随路径移动 unity怎么让粒子不动_粒子系统_22


总结:这个模块是非常有用的模拟空气阻力减缓粒子运动,特别是当速度限制随着时间的推移而变化时。例如,爆炸或烟火一开始以很大的速度爆炸,但当它们穿过空气时,从爆炸或烟火中释放出来的粒子迅速减速。

我们可以简单的做个示范

参数如下:

unity 粒子跟随路径移动 unity怎么让粒子不动_ci_23


效果如下:

unity 粒子跟随路径移动 unity怎么让粒子不动_unity 粒子跟随路径移动_24

5.Inherit Velocity module

**作用:这个模块控制粒子的速度如何随着时间的推移对其父对象的移动作出反应。当然实际的原理是父对象运作用于子物体,使其发射器有一个速度,进而产生效果。注意:此模块只在下列情况下对粒子产生影响:Simulation Space的模式为Word

**

(1)Mode:指定如何将发射器速度应用于粒子。

1).Current:时时影响。发射器的速度将适用于每一帧上的所有粒子。例如,如果发射器减速,所有粒子也会减速。

效果如下:注意:Simulation Space的模式要改为Word,下面的例子都是。

unity 粒子跟随路径移动 unity怎么让粒子不动_unity_25


2)Initial:只施加一次,当每个粒子产生时,发射器的速度将被施加一次。粒子产生后,发射器速度的任何变化都不会影响粒子。如图

unity 粒子跟随路径移动 unity怎么让粒子不动_ci_26


(2)Multiplier:粒子应该继承的发射器速度的比例。

总结:这种效应对于从运动物体中发射粒子非常有用,例如汽车上的尘埃云、火箭上的烟雾、蒸汽列车烟囱中的蒸汽,这些粒子理论上最初速度应该继承它所在父对象的所有速度。我们可以模拟一下,如图:

unity 粒子跟随路径移动 unity怎么让粒子不动_unity 粒子跟随路径移动_27