unity 之 Particle 内置粒子系统一

  • Particle System 组件通过在场景中生成大量的小2D图像或者mesh来模拟流体实体,如液体, 云和火焰的动画

  • 内置粒子系统模拟粒子在CPU上的行为,这允许以下主要好处: 

       1.在c#脚本里面,可以访问每一个粒子

       2.可以使用unity内置的物理系统来处理例子碰撞

Properties

 粒子系统有很多属性,Inspector将它们组织成可折叠的部分,称为“模块”.

右上角的 Open Editor 可以单独的打开一个编辑器

Scene View中的 Particle Effect panel 面板包含了一些属性和预览

PropertyFunction
Simulate Layers允许你预览未被选中的粒子系统.默认情况下,只有选定的粒子系统在场景视图中播放.就是一个粒子遮罩,只播放选中层级的粒子效果
play automatically, without you needing to select them.这对预览 environmental effects.很有用
Resimulate重新模拟粒子,打开的时候会立马把新的更改应用到已经生成的粒子身上,关闭的时候,只有新生成的粒子才会应用更改
Show Bounds打开时, Unity对选中的粒子效果显示bounding volume. 这些边界决定一个粒子系统当前是否在屏幕上。
Show Only Selected打开时只显示选中的粒子效果

Particle System Main module

Properties

PropertyFunction
Duration粒子系统运行的时间.就是粒子发射的持续时间
Looping循环播放粒子效果
Prewarm预热,相当于一开始就从一个周期后 (only works if Looping is also enabled).
Start Delay延迟几秒发射粒子,这个和during 没关系,是独立的
Start Lifetime粒子的初始寿命。
Start Speed每个粒子在初始方向上的初速度
3D Start Size如果你想控制每一个轴向上的大小,就打开它Enable this if you want to control the size of each axis separately.
Start Size每个粒子的初始大小
3D Start Rotation如果你想控制每一个轴向上的旋转,就打开它Enable this if you want to control the rotation of each axis separately.
Start Rotation每个粒子的初始旋转
Randomize Rotation Direction导致一些粒子向相反的方向旋转,随机旋转方向
Start Color每个粒子的初始颜色
Gravity Modifier重力值。0表示关闭重力。
Simulation Spacelocal下,所有的粒子都会随着父物体的移动而移动,world和custom下,只移动粒子发射点的位置,已发射的粒子位置不会改变
Simulation Speed调整整个系统更新的速度。
Delta TimeScaled and Unscaled两种模式, Scaled 使用的是 Time Scale的值, and Unscaled 不受timescale影响,就是时间暂停了也会播放.
Scaling Mode选择如何使用变换中的缩放比例. 有Hierarchy, Local or Shape. Local 只有本身发生缩放时才会缩放,不管父物体如何. Shape 模式将缩放应用于粒子的起始位置,但不影响它们的大小。
Play on Awake在运行时播放
Emitter VelocityParticle System 计算继承自速度和发射模块Velocity and Emission的速度calculates the velocity used by the Inherit Velocity and Emission modules.该系统可以使用刚体组件计算速度,如果存在一个刚体组件,或通过跟踪Transform的运动
.
Max Particles一次在系统中的最大粒子数. 如果达到极限,一些粒子就会被除去
Auto Random Seed如果打开的话, Particle System每次播放的时候看起来都不一样. 当设置为false时,系统在每次播放时都是完全相同的。
Random Seed当关闭automatic random seed, 它用来创建一个独一无二的粒子效果.
Stop Action粒子播放完完之后执行的操作,对于循环系统,只有在通过脚本停止系统时才会发生这种情况。
    Disable禁用物体
    Destroy销毁物体
    Callback执行挂在粒子系统上脚本中的 OnParticleSystemStopped回调方法,一定是脚本挂在粒子物体上,并且回调方法名是固定的
Culling Mode当粒子离开屏幕时,选择是否暂停粒子系统模拟. 当粒子离开屏幕时剪切掉时最高效的, but you may want to 但是您可能希望继续模拟off-one效果,是停止超出屏幕外的粒子效果,而不是整个粒子系统都停了
    Automatic自动调整  Looping systems use Pause, and all other system use Always Simulate.
    Pause And Catch-up系统在屏幕外停止模拟. 当重新进入视图时,模拟将执行一大步以到达没有暂停的点.在复杂系统中,此选项可能导致性能峰值。
    Pause系统在屏幕外停止模拟。
    Always Simulate无论是否在屏幕上,系统都在每一帧上处理它的模拟。这对于烟花等一次性效果非常有用,因为在模拟过程中会很明显。
Ring Buffer Mode保持粒子的生命,直到它们达到最大粒子数, 在这一点上,新的粒子会循环利用旧的粒子, 而不是在粒子的寿命结束后移除它们
    Disabled禁用环缓冲模式,以便系统在粒子的生命周期结束时删除它们。
    Pause Until Replaced在粒子生命周期结束后暂停它直到到达最大粒子数,在这一点上,系统回收它们,所以它们作为新的粒子重新出现。
    Loop Until Replaced在它们的寿命结束时,粒子会倒回它们寿命的特定比例直到到达最大粒子数,在这一点上,系统回收它们,所以它们作为新的粒子重新出现。

Property details

该系统在特定的时间内发射粒子, 可以使用循环属性设置为连续发射.这允许您设置粒子间歇或连续发射;例如,一个物体可能在短时间内或在稳定的气流中喷出烟雾。

 Start 属性 (lifetime, speed, size, rotation and color) 指定粒子在发射时的状态. 你可以单独指定一个粒子的宽度、高度和深度, 使用3D Start Size property (see Non-uniform particle scaling, below).

所有的粒子系统都是用在 Physics 设置里面设置的重力参数. The Gravity Multiplier value 可以设置粒子重力参数

Non-uniform particle scaling:非均匀颗粒比例

3D Start Size 属性允许您单独指定粒子的宽度、高度和深度。 注意,z(深度)只适用于 3D Mesh
您还可以在两个常量或曲线之间设置这些属性的随机值。

Simulation Space

 Simulation Space 决定了粒子是与粒子系统的父对象、自定义对象一起运动,还是在游戏世界中独立运动. 例如,像云、软管和喷火器这样的系统需要独立于它们的父对象来设置, 因为它们倾向于在世界空间中留下痕迹,有拖尾效果. 另一方面,如果粒子被用来在两个电极之间产生火花,粒子应该与父对象一起移动. For more advanced control over how particles follow their Transform, see documentation on the Inherit Velocity module.

当设置为自定义时,粒子不再相对于它们自己的变换组件移动,它们都相对于指定转换组件的移动而移动. 粒子系统使用Custom Transform来计算发射器的速度,它继承Velocity module和Emission module中的 Rate over Distance属性来控制粒子的速度和发射。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

TO_ZRG

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值