使用 nParticle 碰撞

nParticle 在被创建或发射到场景中时,能够与其他指定给同一 Nucleus 解算器的 nParticle、nCloth 或被动碰撞对象进行碰撞。请参见为 Nucleus 对象创建被动碰撞对象

它们还能通过自碰撞相互碰撞。nParticle 对象的“碰撞”(Collisions)属性决定了 nParticle 与其他 Nucleus 对象碰撞时的行为方式。

如果要禁用 nParticle 对象与特定 Nucleus 对象之间的碰撞,可以设置碰撞层或者使用“禁用碰撞”(Disable Collisions)“排除碰撞对”(Exclude Collide Pairs)约束。请参见创建 nParticle 禁用碰撞约束创建 nParticle 排除碰撞对约束

您可以使用“粒子碰撞事件编辑器”(Particle Collision Event Editor)创建和编辑 nParticle 碰撞事件。请参见创建粒子碰撞事件

编辑 nParticle 碰撞属性

  1. 选择要编辑“碰撞”(Collisions)属性的 nParticle 对象。
  2. “属性编辑器”(Attribute Editor)中,单击“nParticleShape”选项卡。
  3. 若要禁用或减弱 nParticle 的碰撞和自碰撞,请在“属性编辑器”(Attribute Editor)“碰撞”(Collisions)区域中执行以下操作:
    • 关闭“碰撞”(Collide),禁用 nParticle 对象与其他 Nucleus 对象之间的碰撞。请参见 nParticle 碰撞属性
    • 关闭“自碰撞”(Self Collide),禁用 nParticle 的自碰撞。
    • 设定“碰撞强度”(Collide Strength),指定 nParticle 与其他 Nucleus 是发生完全碰撞还是部分碰撞。

      使用默认值 1 时,nParticle 与其他 Nucleus 对象发生完全碰撞。“碰撞强度”(Collide Strength)值介于 0 和 1 时,将减弱完全碰撞,值为 0 时将关闭 nParticle 碰撞(相当于关闭“碰撞”(Collide)属性)。

      您也可以使用“碰撞强度比例”(Collide Strength Scale)渐变按每个粒子设定“碰撞强度”(Collide Strength)

  4. 若要调整 nParticle 对象的碰撞体的厚度,请执行以下操作:
    • 设定“碰撞宽度比例”(Collide Width Scale),调整 nParticle 对象与发生碰撞的其他 Nucleus 对象之间的碰撞体厚度。
    • 设定自碰撞宽度比例,调整 nParticle 对象的自碰撞粒子之间的碰撞体厚度。
  5. 编辑“碰撞”(Collisions)属性值,调整 nParticle 的基本行为:
    • 调整“反弹”(Bounce)增大或减小 nParticle 在碰撞时的反弹度或偏转量。
    • 调整“摩擦力”(Friction)增大或减小 nParticle 在碰撞时对相对运动的阻力大小。
    • 调整“粘滞”(Stickiness)增大或减小 nParticle 在碰撞时粘贴到其他 Nucleus 对象的倾向。

设定碰撞层

您可以使用碰撞层来指定属于同一 Maya Nucleus 系统的特定 nParticle、nCloth 和被动碰撞对象是否可以互相碰撞。nParticleShape 节点上的“碰撞层”(Collision Layer)属性决定了每个 nParticle、nCloth 和被动对象放置在哪个碰撞层,Nucleus 节点上“碰撞层范围”(Collision Layer Range)属性决定了不同层上的 nParticle、nCloth 和被动碰撞对象如何发生碰撞。

注: 碰撞层中的 nCloth 和被动碰撞对象仅与位于同一碰撞层或更高碰撞层的 nParticle 对象发生碰撞。