提高 nCloth 模拟的质量
 
 
 

虽然裙子的行为与真实裙子大致相同,但您会注意到一些碰撞(裙子与自身或角色相交的地方)显示不正确。具体而言,在某些区域中,角色的网格透过裙子或者裙子聚成一团并在陷入该状态。

提高 nCloth 碰撞的质量

  1. 转到播放范围的开始处。
  2. 选择裙子。
  3. 打开“属性编辑器”(Attribute Editor)并选择“nClothShape1”选项卡。
  4. “质量设置”(Quality Settings)区域中,执行下列操作:
    • “最大自碰撞迭代次数”(Max Self Collide Iterations)设定为 20。

      “最大自碰撞迭代次数”(Max Self Collision Iterations)值指定每个子步执行的最大数量的自碰撞相关的 nCloth 计算。增加该值会使 Maya 识别更多自碰撞,从而模拟更真实的布料,但会降低速度。

    • “碰撞上一阈值”(Collide Last Threshold)设定为 1.0。

      增加“碰撞上一阈值”(Collide Last Threshold)有助于阻止 nCloth 顶点穿过碰撞对象。

    • 启用“陷阱检查”(Trapped Check)
    • 启用“自身陷阱检查”(Self Trapped Check)

      启用“陷阱检查”(Trapped Check)“自身陷阱检查”(Self Trapped Check)会使 Maya 监视碰撞交叉。当点彼此交叉时,Maya 会尝试将它们推开。该操作会防止裙子聚成一团粘在一起。

    • “向外推”(Push Out)设定为 0.280。

      设定“向外推”(Push Out)会应用一种力,将相交或穿透的对象推动到当前 nCloth 对象的曲面上的最近点。

    • “向外推影响半径”(Push Out Radius)设定为 5.0。

      设置“向外推影响半径”(Push Out Radius)指定与“向外推”(Push Out)属性影响的当前 nCloth 对象的曲面的最大距离。

  5. 选择“nucleus1”选项卡。
  6. “解算器属性”(Solver Attributes)下,将“子步”(Substeps)设定为 4,将“最大碰撞迭代次数”(Max Collision Iterations)设定为 20。

    增加子步会增加 Maya 在每帧上计算 nCloth 的位置的次数。通过增大该值,Maya 会更频繁地更新布料的位置;因而将以更慢的速度生成更精确的模拟。

    “最大碰撞迭代次数”(Max Collision Iterations)值指定每个子步执行的最大数量的碰撞相关的 nCloth 计算。增加该值会使 Maya 识别更多碰撞,从而模拟更真实的布料,但会降低速度。

  7. 选择“nCache > 创建新缓存”(nCache > Create New Cache)

    Maya 将自动播放 nCloth 模拟,并将其保存到磁盘。

  8. 播放场景。

    这些碰撞现在看起来更加精确,角色的身体不再显示穿透衣服,裙子不再聚成一团或变为受限制。

可以在以上步骤中增大该值,以进一步改进模拟。但请牢记,随着这些值的增大,缓存动画变得越来越慢。