创建粒子碰撞事件

 
 
 

可使用“粒子碰撞事件编辑器”(Particle Collision Event Editor)创建粒子与几何体发生碰撞时发生的事件。使用碰撞事件,可以创建发射到场景中的新粒子对象或碰撞时禁用粒子。可为粒子和 nParticle 对象创建碰撞事件。

注意

仅当不同粒子或 nParticle 系统中的粒子发生碰撞时才会发生碰撞事件。当 nParticles 自碰撞时不会发生碰撞事件。

也可以在粒子或 nParticles 发生碰撞时执行 MEL 脚本。接触后发生的动作称为“事件”。请参见为碰撞事件创建 MEL 程序

有关使用发生碰撞事件的 nParticles 的详细信息,请参见 nParticle 碰撞事件

注意

在使用 nParticles 创建粒子碰撞事件时,请注意以下事项:

  • 不支持 nParticles 碰撞事件的 collisionGeometryIndex 输出属性。
  • nParticle 碰撞事件将与 nParticles 对象发生碰撞的 Nucleus 的名称(而非几何体的名称)传递给事件回调。
  • Nucleus 地平面不能是 nParticle 碰撞事件的目标。

创建粒子或 nParticle 碰撞事件

  1. 选择要用作事件源粒子对象的粒子或 nParticle。
  2. 根据源粒子类型,请执行以下操作之一:
  3. 单击“创建事件”(Create Event)

    新事件将在“事件”(Events)面板中显示。

  4. (可选)在“设置事件名称”(Set event name)字段中键入事件名称。
  5. 通过执行下列操作之一来指定事件频率:
    • 如果要在每次粒子碰撞时执行事件,请启用“所有碰撞”(All Collisions)
    • 通过设定“碰撞编号”(Collision number)指定要执行事件的碰撞。
    “事件类型”(Event type)下,通过执行以下操作指定事件设置:
    • 启用“发射”(Emit)“分割”(Split)

      启用“发射”(Emit)后,源粒子对象将在碰撞事件后继续活动。目标粒子年龄在创建对象时开始。

      当启用“分割”(Split)时,源粒子对象将在碰撞后消亡。目标粒子从源粒子继承年龄。

    • 如果要创建随机数量的目标粒子,请打开“随机粒子数”(Random # particles)。请参见随机粒子数
    • 通过设定“粒子数”(Num particles)指定要为每个粒子碰撞创建的目标粒子数。
    • 设定目标粒子的“扩散”(Spread)
    • 通过键入现有粒子或 nParticle 对象的名称指定“目标粒子”(Target particle)。可使用粒子对象的形状节点的名称(particleShape 或 nParticleShape),或者其变换节点名称(粒子或 nParticle)。

      如果未指定粒子类型,目标将为 nParticle 对象。

  6. (可选)若要创建另一个碰撞事件,请单击“新建事件”(New Event)