粒子系统主模块---Particle System

  • 今天一句不是废话
  • 属性
  • 结语

今天一句不是废话

当你所处已是无边的黑暗,你又怎能不飞蛾扑火。

属性

Duration 系统运行时间。(也就发射完粒子的所占用的时间,周期)


Looping 会让粒子效果循环播放。


Prewarm 仅在上一值被勾选的情况下有效。效果:预热。(就是播放的开始直接以播放完成的状态展现,而不是一个一个的发射)


Start Delay 启用后,会在播放开始延迟几 秒 后来发射粒子。可选择是固定时间,还是在两个常数之间的随机性。(下文将以‘可选代替’)


Start Lifetime 粒子的初始生命周期。(粒子在发射出到消失所占用的时间) 可选。


Start speed 每个粒子的初始速度,应用到发射方向。可选。


3D Start Rotation 开启后粒子开始旋转(start rotation)将被分别从三个轴上分别被控制。


Start Rotation 粒子开始的旋转角度。可选。


Filp Rotation 使一些粒子反向旋转。(0-1)


Start Color 粒子的初始颜色。可选。


Gravity Modifier 缩放粒子系统设置中的重力值。值为零会关闭重力。可选。


Simulation Space 控制粒子的运动位置,是在父对象的局部空间中(随父物体一起移动),在世界空间中还是相对于自定义对象(选择的自定义对象一起移动)。效果。


Simulation Speed 调整整个系统的更新速度。(粒子的播放速度)


Delta Time 选择Scaled将使用Time窗口的Time Scale值,而Unscale值将忽略该值。(该值会影响是否在暂停游戏的时候,暂停特效。而UNscale就是让粒子不受时间的Time.deltaTime影响)


Scaling Mode 如何选择 变换 中的缩放:
Hierarchy,受父节点影响。
Local,仅应用于粒子系统变换缩放,忽略任何父及。
Shape,将缩放应用于粒子起始位置,不影响粒子大小。


Play on Awake 如果启动此属性,则粒子系统会在创建对象时自启动。(创建有粒子的物体时,粒子是否会自动播放)


Emitter Velocity 选择粒子系统如何计算继承速度(inherit Velocity)和发射(Emission)模块使用的速度,系统可使用 刚体组件(如果存在)或者通过跟踪 变换组件 的移动情况来计算速度。


Max Particles 系统中允许存在的最大粒子数。到了最大限制会销毁一些早发射的粒子。


Auto Random Seed 自动随机种子,勾选后,每次播放粒子系统都会不同。


Stop Action 当该粒子系统所有粒子都已经完成时,(当系统中所有粒子 狗待 后,而且系统存活时间超过Duration设定的值,判断系统停止)可使系统执行某种操作:
Disable,禁用
Destroy,销毁
Callback,回调
tip:对回调函数的说明(将以下 固定函数名 的脚本添加到 粒子系统 挂在的物体。不论脚本是否激活,都会调用该方法。)

private void OnParticleSystemStopped()
    {
        Debug.Log("粒子系统结束");
    }

Culling Mode 当粒子系统出了相机视野,在屏幕上看不到,是进行暂停粒子系统,还是继续播放粒子系统。(用来保持更新,同步)
Automatic,自动(循环系统使用“ 暂停”,所有其他系统使用“ 始终模拟”)
Pause and Catch-up,暂停并且赶上(屏幕外时,系统停止模拟。重新进入视图时,模拟将执行一个较大的步骤,以达到不暂停该视图的位置。在复杂的系统中,此选项可能会导致性能峰值)
Pause,暂停(屏幕外时,系统停止模拟)
Always Simulate,总是模拟(无论是否在屏幕上,系统都会在每个帧上处理其仿真)
tip:注意 非程序化的系统则无法这样做,即使是不可见时它也必须持续更新系统,因为它是不可预测的。(什么是程序化?待补)


Ring Buffer Mode 使粒子保持活动状态,直到达到“ 最大粒子数” 为止,此时新粒子将回收最旧的粒子,而不是在其寿命到期时移除粒子。