nCloth 衬衫

本示例将介绍如何使用 nCloth 模拟一件扣上纽扣的衬衫。

扣上衬衫的纽扣

在本示例中,目标是扣上衬衫的两片衣襟,而不让它们散开。

创建纽扣模板

  1. 打开大纲视图
  2. “大纲视图”(Outliner)中选择 hairSystem1Follicles。
  3. 在主菜单中选择“显示 > 对象显示 > 取消模板”(Display > Object Display > Untemplate)

    纽扣更改为线框显示。如果单击纽扣,则将无法对其进行选定。在扣衬衫的纽扣并需要选定指定顶点时,此操作很有用。

将衬衫的两襟扣在一起

  1. 转到播放范围的开头。
  2. 在衬衫上单击鼠标右键,然后从显示的标记菜单中选择“顶点”(Vertex)

    Maya 即会显示 nCloth 的顶点。

  3. 选择衬衫上纽扣之一正下方的顶点,然后按住 Shift 键并单击衣襟下方最近的顶点,以将其包含在选择中。
    注:

    如果按照如上所述方式选择两个顶点有困难,可以将显示模式更改为“线框”(Wireframe)模式”(热键:4),以便顺利进行选择。

  4. 选择 nConstraint > 组件到组件(nConstraint > Component to Component)
  5. “属性编辑器”(Attribute Editor)中,选择“DynamicConstraint1”选项卡。
  6. “动态约束属性”(Dynamic Constraint Attributes)部分中,将“约束方法”(Constraint Method)设定为“橡皮筋”(Rubber Band)
  7. 选择“nCache > 创建新缓存 > nObject”(nCache > Create New Cache > nObject)

    Maya 会自动播放 nCloth 模拟,并将其作为缓存保存到磁盘中。

  8. 播放模拟。

    现在衬衫已松散地穿在身体上,但衬衫的两襟已在所约束的纽扣处扣在一起。

  9. 转到播放范围的开头。
  10. 打开大纲视图
  11. “大纲视图”(Outliner)窗口,选择 DynamicConstraint1。
  12. 按 Delete 键删除约束。
  13. 在衬衫上单击鼠标右键,然后从显示的标记菜单中选择“顶点”(Vertex)
  14. 与步骤 3 和 4 中对第三个纽扣所做的操作相同,按住 Shift 键并单击每个纽扣下的每个顶点以及衣襟下方各自最近的顶点。
  15. 选择nConstraint > 组件到组件(nConstraint > Component to Component)
  16. “动态约束属性”(Dynamic Constraint Attributes)部分中,将“约束方法”(Constraint Method)设定为“橡皮筋”(Rubber Band)
  17. 在“大纲视图”(Outliner)窗口中,选择 hairSystem1Follicles,然后选择“显示 > 对象显示 > 取消模板”(Display > Object Display > Untemplate)

    纽扣将再次在场景视图中显示。

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

    Maya 会自动播放 nCloth 模拟,并将其作为缓存保存到磁盘中。

  19. 播放模拟。

    衬衫的两襟在每个纽扣处仍扣在一起。

改进衬衫的行为

虽然衬衫已扣上纽扣,但用户会注意到整体外观看起来还有些不对。布面看起来拉伸过度,两片衣襟在某些点互相穿透。现在,需要进行一些调整,来解决此问题。

改善 nCloth 衬衫的外观

  1. 转到播放范围的开头。
  2. 选择衬衫。
  3. “属性编辑器”(Attribute Editor)中,选择 nClothShape1。
  4. “碰撞”(Collisions)部分,如下所述设置属性:
    • 自碰撞标志(Self Collision Flag)顶点面(VertexFace)
    • 自碰撞宽度比例(Self Collide Width Scale):1
    • 厚度(Thickness):0.017
  5. “动力学特性”(Dynamic Properties)部分,如下所述设置属性:
    • 拉伸阻力(Stretch Resistance):100
    • 压缩阻力(Compression Resistance):40
    • 弯曲阻力(Bend Resistance):1
  6. 选择“nCache > 创建新缓存 > nObject”(nCache > Create New Cache > nObject)

    Maya 会自动播放 nCloth 模拟,并将其作为缓存保存到磁盘中。

  7. 播放模拟。

    现在,衬衫的两襟正确碰撞,不再互相穿透。

绘制衬衫的特性

用户可能会注意到,尽管现在碰撞是正确的,但衬衫的某些部位仍不能像真实的布料般做出反应。最明显的是,衣领和袖口显得太宽松,而真实的衬衫则是笔挺的。通过绘制顶点特性可以修复此问题。

加固衣领和前襟

  1. 转到播放范围的开头。
  2. 选择衬衫,然后选择“nCloth > 绘制顶点特性 > 输入吸引”(nCloth > Paint Vertex Properties > Input Attract)

    光标将变为 Artisan 笔刷。

  3. 打开“工具编辑器”(Tool Editor)
  4. 如下所述调整工具设置:
    • 半径 (U)(Radius(U)):0.3
    • 半径 (V)(Radius(V)):0.3
    • 值(Value):0
  5. 单击“整体应用”(Flood)

    为衬衫整体应用黑色,表示对输入网格没有吸引力。

  6. “值”(Value)设定为 1。
  7. 使用 Artisan 笔刷,绘制衬衫的衣领。
  8. “值”(Value)设定为 0.2。
  9. 使用 Artisan 笔刷,绘制衬衫的袖口。
  10. 选择“nCache > 创建新缓存 > nObject”(nCache > Create New Cache > nObject)

    Maya 会自动播放 nCloth 模拟,并将其作为缓存保存到磁盘中。

  11. 播放模拟。

    现在,衣领已足够笔挺,袖口轻微下垂,但均保持其各自的形状。

改进衬衫的外观

平滑衬衫外观

  1. 转到播放范围的开头。
  2. 选择衬衫。
  3. “建模”(Modeling)菜单集中选择“网格 > 平滑”(Mesh > Smooth)
  4. FX 菜单集中选择“nCache > 创建新缓存 > nObject”(nCache > Create New Cache > nObject)

    Maya 会自动播放 nCloth 模拟,并将其作为缓存保存到磁盘中。

  5. 播放模拟。

衬衫的韧性更好,并且其流动方式也如同真实布料一般。