Unity粒子系统与性能分析

粒子编辑器概述

1. 粒子系统采用模块化管理,个性化的粒子模块配合粒子曲线编辑器创建复杂的粒子效果。

2. 粒子系统两种方法:

(1) GameObject->Effects->ParticleSystem。

(2) 先Creat Empty Object,再添加组件:Component->Effect->Prticle System。

建立粒子发射器

1. GameObject->Effects->Particle System。右下方Particle Effect可以用来控制播放速度。

粒子系统参数

初始化模块

粒子系统初始化模块为固有模块,无法将其删除或禁用。该模块定义了粒子初始化时的持续时间,循环方式,发射速度,大小等一系列基本参数。

1. Duration:粒子发射的时间(将Looping 循环关闭,否则粒子仍将持续发射)

2. Looping:粒子按照周期时间循环发射。

3. Prewarm:预热模式,在Looping开启时可用。比如说我有一个空间大小的粒子系统,但是粒子发射速度有限,想在最开始的时候让粒子充满空间,此时就应该勾选Prewarm。

4. Start Delay:开始发射延迟,若设定为5,游戏开始后5s的时间才开始发射粒子,预设值为0时无延迟。

5. Start Lifetime:粒子的生命周期,若设定为5,粒子发射后经过5s的时间即消失

6. Start Speed:粒子的初始速度。

7. 3D Start Size:如果开启,则可以单独分别控制粒子在3个轴方向的大小。

    Start Size:粒子的初始大小。与3D Start Size2选1。

8. 3D Start Rotation:如果开启,则可以单独分别控制粒子开始在3个轴方向的旋转。

    Start Rotation:粒子的初始旋转。与3D Start Rotation2选1。

9. Flip Rotaion:翻转粒子方向,设置为0-1,值越大,有越多的粒子会翻转。

10. Start Color:开始时的颜色。

11. Gravity Modifier:重力修改器,预设值0代表粒子不受重力影响而往上移动,数值增加时粒子发射后会往下掉。

12. Simulation Space:模拟空间,相对于某个模拟空间的transform粒子进行运动,包括Local,World,以及Custom自定义空间。选择Local时,粒子会跟随父级物体移动,选择world时,粒子不会跟随父级物体移动,Custom时,粒子会跟随指定的物体移动。

13. Simulation Speed:缩放粒子系统Playback的速度,也即根据Update模拟的速度。

14. MaxParticles:粒子系统可以同时存在的最大粒子数量。如果粒子数量超过最大值粒子系统会销毁一部分粒子。

15. AutonRandomSeed:随机种子,如果勾选会生成完全不同不重复的粒子效果,如果不勾选即为可重复。

Emittion发射模块

在粒子的发射时间内,可实现某个特定的时间生成大量粒子的效果,这对于模拟爆炸等需要产生大量粒子的情形非常有用。

1. RateOverTime:单位时间内生成粒子的数量。

2. RateOverDistance:随着移动距离产生的粒子的数量。只有当粒子系统移动时,才发射粒子。

3. Bursts:爆炸效果。

(1) Time从第几秒开始。

(2) Count:粒子数量范围。

(3) Cycles:在一个周期中的循环次数。

(4) Interval:两次Cycles的间隔时间。

(5) Probability:可能性。

Shape形状模块

Shape模块定义了粒子发射器的形状,可提供沿着该形状表面法线或随机方向的初始力,并控制粒子的发射位置及方向。

1. Shape:定义粒子的发射形状:选择对应的形状,下面的相关参数也会随之变动。

 

VelocityOverLifetime/LimitVelocityOverLifetime

1. 单独设置每个粒子的速度和限制粒子的速度。通过曲线或范围随机数设置。

其他单个粒子控制模块

Collision

1. Type:与一系列平面碰撞,或者与物理世界碰撞

Sub Emitters子发射器

1. 此模块可使粒子在出生,消亡,碰撞等三个时刻生成其他的粒子。设定此粒子系统的子发射器,请勿选择自身的ParticleSystem ,否则会出现Circular References Detected 的讯息。

CustomColor

1.功能:

2. 使用:

Renderer

1. RenderMode定义粒子渲染器的渲染模式:

2. Normal Direction:取值为0到1,1表示法线向量将会指向相机方向,0表示将法线将会指向corner direction。

3. Material:确定用来渲染粒子的材质。

4. Sort Mode:定义绘制粒子的顺序。

5. Sorting Fudge:数字越小,这些粒子月可能出现在另外的透明物体的前面,包括另外一些粒子。

6. Min/Max Particle Size最小/最大的粒子大小。1表示整个屏幕, 0.5表示半个屏幕。

7. RenderAlignment:渲染对齐。指定是否粒子将会朝向相机,对齐世界轴,或者保持本地的系统Transform。

8. Custom Vertex Streams:

9. CastShadows:是否投射阴影。

10. ReceiveShadows:是否接受阴影。

11. Order In Layer:确定同一层中的顺序。

常见用法

1. 常见用法1:烟花释放,按下按键,则释放粒子。

2.玩家碰撞炸弹时发生爆炸。

(1) 将玩家角色的Tag标签设置为Player,物体名称也可设置为Player。

(2) 脚本:

未完待续!!!

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值