Unity粒子系统(5.x)基础(一)

大家好,首先我们来讲一下粒子系统的基础属性。

目录

首先我们新建一个粒子系统。如图。
在这里插入图片描述
然后点击新创建的粒子,观看右侧基本属性栏
在这里插入图片描述

1.Duration:粒子发射器的生命。

在这里插入图片描述

比如现在Duration为5秒,那么粒子发射器就会持续5秒处于发射状态,但值得注意的是它与单个粒子的持续时间(start Lifetime)毫不相关。
比如我把Duration和start Lifetime都设置为5秒,那么到第十秒,最后一个粒子才消失,如下。
在这里插入图片描述
这是因为粒子发射器最后一秒(第五秒)发射的的粒子它的生命周期是(start Lifetime)是5秒,所以在第十秒的时候它才会消失。

2.Loop(循环播放模式)

如果启用,粒子发射器将在持续时间结束时再次启动,并继续重复该周期。
也就是说,如果启用了的话Duration将变得没有意义了,因为不管Duration为多少,粒子发射器一直都会处于工作状态。

3.Prewarm(预热)

如果启用,粒子系统将被初始化,就好像它已经完成了整个周期一样(仅在以下情况下工作):环化也已启用)。
通俗来讲就是一开始就会有粒子,就好像粒子系统已经运行了一段时间。
如下图:
在这里插入图片描述

4. Start Delay(启动动延迟)

也就是延迟以秒为单位启动粒子系统。这个没什么好讲的。

5.Start Lifetime

单个粒子的初始生命,也就是一个粒子从出生到死亡的持续时间。我们可以看到它右边的小三角。
在这里插入图片描述
(1)Constant :数值,发射的所有粒子的初始生命都是这个数值。
(2)Curve:曲线,相当与以Duration(粒子发射器的生命)为X轴, Start Lifetime (单个粒子的初始生命)为Y轴。曲线上每个点的含义就是:粒子发射器第X秒发射的粒子的初始生命为Y。
如下面这个例子:
在这里插入图片描述

在这里插入图片描述
我们可以看到粒子到达的高度越来越高,这是因为刚开始发射的粒子的生命周期比较低,越到后来越来越来越高。
(3)Random Between Two Constant :单个粒子的生命周期是两个常数之间任意一个值。
(4)Random Between Two Curve:相当与以Duration(粒子发射器的生命)为X轴, Y轴的值 为横坐标切两曲线的两个点,粒子的生命周期就是是这两个点之间任意一个值。

6.Start Speed (初始速度):每个粒子在适当方向上的初始速度。

7.3D Start Size(三维初始尺寸)

如果要分别控制每个粒子在某条轴的大小,就可以使用此功能。如下图。
在这里插入图片描述

8.Start Size(初始尺寸)

整体改变每个粒子的初始尺寸。

9. 3D Start Rotation(三维初始旋转)

如3D Start Size(三维初始尺寸)一样 ,如果要分别控制每个轴的旋转,请启用此功能。

10.Flip Rotation(翻转旋转)

使一些粒子向相反方向旋转。这里为了看出效果你可以随便拖一张照片到粒子上面去。然后它会自动生成这个图片的材质球,可以到Materials文件夹去寻找。如图
在这里插入图片描述

如果Flip Rotation=1,那么就代表所有的粒子都向相反的方向旋转,如果Flip Rotation=0.5,那么就代表所有50%的粒子都向相反的方向旋转。
来看下面的例子:
1)如图,当Flip Rotation=0,3D Start Rotation的z=60度时,所有粒子正常旋转。在这里插入图片描述
2)如图,当Flip Rotation=1,3D Start Rotation的z=60度时,所有粒子都是向相反方向旋转。
在这里插入图片描述

3)如图,当Flip Rotation=0.5,3D Start Rotation的z=60度时,有一半粒子都是向相反方向旋转。
在这里插入图片描述

11.Start Color(初始颜色)

在这里我们来看一下右边的小三角的第二种Gradient(梯度模式),类似与于我们上次介绍的曲线。
在这里插入图片描述
它有两种模式,
一种是Blend(混合模式):就是有渐变效果
一种是 Fixed (固定模式):没有渐变效果。
下面看具体效果。

这里上面是Alpha的值,下面是Color的值,鼠标右键可以加一个控制下标。如图。
在这里插入图片描述

下面是具体效果

在这里插入图片描述
可以看到颜色先是白色,再是红色,然后黑色,最后白色,是不是我们上面调的颜色顺序,也就是说以Duration为横坐标,以我们调的颜色为纵坐标来改变颜色。

12.Gravity Multiplier(重力调节)

这个值越大,那么受到重力越大。当我们模拟冰块,石头炸裂时可以给给其一个重力效果,以达更逼真的效果。

13.Simulation Space(坐标系)

这里有两种选择:
一种是Local(本地坐标系)
一种是Word(世界坐标系)
如果是Local的话,也就是说粒子还是属于本地粒子发射器的,粒子发射出来后,粒子发射器在哪里粒子就在哪里。

在这里插入图片描述

但是World就截然不同,它表示发射出来的粒子是属于世界的,已经不是属于粒子发射器的,所以当你移动粒子发射器,已经发射的粒子还是留在原地。

在这里插入图片描述

14.Simulation Speed

调整粒子系统所有粒子的速度,范围为0-1。
例如为0.1然么Start Speed(初始速度)变为原来的10%。
在这里插入图片描述

16.Delta Time(三角州时间)

这是什么东西呢,我们来看一下这里面的两个可选项
在这里插入图片描述
(1)Scaled:遵循时间比例
我们知道有些游戏时间流速和普通的不一样,而Unity也有一个专门的接口来控制它,我们可打开下面这个(Time)窗口,找到Time Scale属性,这个属性就是时间流速。Time Scale=0代表时间静止,Time Scale=1代表正常时间流速,大于1代表时间流速加快。
在这里插入图片描述
如果我们选择遵循时间比例,然后改变Time Scale为0整个粒子系统就静止了,如图:
在这里插入图片描述

(2)Unscaled:不遵循时间比例
如果不遵循时间比例的话,那么Time Scale属性的改变就不会影响粒子系统的时间流速,即它一直都是正常时间流速。

17.Scaling Mode(缩放模式)

Hierarchy, Local or Shape
Hierarchy: 只应用粒子系统每个粒子变换尺度,受父级影响。
Local :只应用粒子系统每个粒子变换尺度,忽略任何父级。
下面我们通过下面两张动态图看一下Hierarchy和Local具体区别。

(1)Hierarchy放大3倍的效果。

在这里插入图片描述

(2)Local 放大3倍的效果。
在这里插入图片描述

我们看到同样是放大三倍,Hierarchy模式下的明显比Local 模式下的大。这是因为Hierarchy模式下的粒子受其父级的影响,所以它以其父级的大小为基准进行缩放。而Local 模式下不受其父级影响,所以是正常缩放,以其父级缩放三倍的效果一样。

Shape(形状模式):将比例应用到粒子的起始位置,但不影响它们的大小。也就是只缩放形状而不改变粒子大小
如图:在这里插入图片描述

18.Play on Awake

如果启用,粒子系统将在创建对象时自动启动。常用于程序的交互。

19.Max Particles(最大粒子数)

简单来说,就是一个duration内发射粒子最多数量。如果是10的话,一个duration只发射10.

20.Auto Random Seed(自动随机种子)

如果启用,粒子系统每次播放时看起来都不同。当设置为false时,系统每次播放时都是完全相同的。

21.Stop Action

当属于系统的所有粒子都死亡时,就可以让系统执行一个操作。(当一个粒子系统的所有粒子都死了,并且它的年龄超过了它的持续时间时,它就被确定停止了。对于Loop(循环粒子系统),只有在通过脚本停止系统时才会发生这种情况)。

主要有三个选项
(1)Disable:粒子系统死亡时,游戏对象被禁用。
在这里插入图片描述

(2)Destroy:粒子系统死亡时,游戏对象被摧毁。
(3)Callback:粒子系统死亡时,将会该游戏对象上的脚本进行查找,调用里面OnParticleSystemStopped()函数

看下面的例子:
脚本如下:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class StopScript : MonoBehaviour
{
    // Start is called before the first frame update
    void Start()
    {
        
    }
    private void OnParticleSystemStopped()
    {
        print("调用了脚本里的OnParticleSystemStopped方法");
    }
   }

在这里插入图片描述
好,粒子系统的基本属性差不多讲完了。下一节该讲它的子模块了。

下一节

Unity粒子系统(5.x)基础(二)

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值