ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

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

2021-02-17 11:31:35  阅读:681  来源: 互联网

标签:粒子系统 粒子 基础 发射器 Start Rotation 初始


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

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

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(本地坐标系):
如果是Local的话,也就是说粒子还是属于本地粒子发射器的,粒子发射出来后,粒子发射器在哪里粒子就在哪里。
一种时Word(世界坐标系):
在这里插入图片描述

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

在这里插入图片描述

值得注意的是,如果我们可以结合Emission(发射器)和Word模式来制作拖尾效果。
我们可以先调高发射器的Rate(发射速率),然后拖动它。如下
在这里插入图片描述

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)粒子系统死亡时,游戏对象被禁用。
在这里插入图片描述

(2)粒子系统死亡时,游戏对象被摧毁。
(3)粒子系统死亡时,将会该游戏对象上的脚本进行查找,
调用里面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方法");
    }
   }

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

标签:粒子系统,粒子,基础,发射器,Start,Rotation,初始
来源: https://blog.csdn.net/a15970673567/article/details/113822621

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有