Unity3D :Sub Emitters 模块
推荐:将NSDT场景编辑器加入你的3D工具链
3D工具集:NSDT简石数字孪生
Sub Emitters 模块
在此模块中可设置子发射器。这些子发射器是在粒子生命周期的某些阶段在粒子位置处创建的附加粒子发射器。

Using the Sub Emitters module
此模块是粒子系统组件的一部分。当您创建新的粒子系统游戏对象,或将粒子系统组件添加到现有的游戏对象时,Unity 会将子发射器模块添加到粒子系统。默认情况下,Unity 禁用此模块。要创建新的粒子系统并启用此模块,请执行以下操作:
- 单击“游戏对象”>“效果”>“粒子系统”。
- 在检查器中,找到粒子系统组件。
- 在粒子系统组件中,找到子发射器模块展开。
- 在折叠页眉的左侧,启用该复选框。
API
由于此模块是粒子系统组件的一部分,因此您可以通过粒子系统类访问它。有关如何在运行时访问它并更改值的信息,请参阅子发射器模块 API 文档。
属性
对于本节中的某些属性,可以使用不同的模式来设置其值。有关可以使用的模式的信息,请参阅随时间变化的属性。
属性 | 功能 |
---|---|
Sub Emitters | 配置一个子发射器列表,并选择它们的触发条件以及它们从父粒子继承的属性。 |
详细信息
许多类型的粒子都会在其生命周期的不同阶段产生一些效果,而这也可使用粒子系统来实现。例如,子弹离开枪管时可能伴随着一缕烟尘,火球可能会在撞击时爆炸。您可以使用子发射器来创建诸如此类的效果。
子发射器是在场景中创建的或来自预制件的普通粒子系统对象。这意味着子发射器还可以有自己的子发射器(这种类型的布置对于像烟花这样的复杂效果很有用)。但是,虽然使用子发射器生成大量粒子非常容易,但这可能非常耗费资源。
要触发子发射器,可使用以下条件:
- __Birth__:粒子的创建时间。
- __Collision__:粒子与对象发生碰撞的时间。
- __Death__:粒子的销毁时间。
- __Trigger__:粒子与触发碰撞体相互作用的时间。
- __Manual__:仅在通过脚本进行请求时触发。请参阅 ParticleSystem.TriggerSubEmitter。
请注意,__Collision、Trigger、Death__ 和 Manual 事件只能使用 Emission 模块中的爆发发射。
此外,还可使用 Inherit 选项将属性从父粒子转移到每个新创建的粒子。可转移属性包括大小、旋转、颜色和生命周期。要控制速度的继承方式,请在子发射器系统上配置 Inherit Velocity 模块。
还可以通过设置 Emit Probability 属性来配置子发射器事件的触发概率。值为 1 可以保证事件将触发,而更小的值则会降低概率。
- 2018–03–28 页面已修订
- 在 2018.1 版中的 Sub Emitters 模块的条件列表中添加了“Trigger”和“Manual”条件
- 在 2018.3 版中向粒子 Sub Emitters 模块添加了 Emit Probability 属性
由3D建模学习工作室整理翻译,转载请注明出处!