maya 7.0 刚体和柔体-柔体动力学
在创建柔体时,系统会自动创建一个粒子物体,所以从某一方面来讲,柔体只是粒子的集合体,然而标准粒子和柔体粒子有些不同。一方面,柔体粒子被联接起来有一形状,另一方面,它们以一固态形状而不是点的集合体出现在屏幕上及最终渲染中。因为这两种属性,所以柔体是特殊的,它们可以以固态几何体出现,几何体中的点和粒子物体中的粒子一一对应。当粒子运动时,几何体中的点也会随之运动。它们尽管复杂,但创建柔体还是容易的,只要选择模型,并告诉 maya 创建柔体便可。如图 11-25 所示为用柔体创建的一面旗。
图 11-25 柔体作用效果 柔体的创建方法
在一新场景中创建基本 nurbs 球体。选择 dynamics|bodies → create soft body
,出现 soft options 对话框,如图 11-26 所示。
图 11-26 soft options 对话框 下面是它的参数:
● creation ooptions :该下拉列表中包括 3 个选项:
make soft :该选项直接将选中的物体转换成柔体。
duplicate , make copy soft :在不改变原物体的情况下,以复制出的副本作为柔体。
duplicate , make original soft :使用该选项可以直接将物体转换成柔体,并且另外复制一份原始物体。
duplicate upstream graph :当选中此复选框时,系统会自动复制原始几何体,并且把复制的几何体转换为柔体。
● hide non-soft object :选中此复选框时,系统可以自动将原始的几何体隐藏起 来,以节省有限的工作空间。
● hide non-soft a goal :如果取消选中此复选框,当创建柔体时必须为粒子创建目标。
● weight :设置目标物体的权重,当该值为 0 时,柔体可以自由地变形;当该值为 1 时,柔体将尽量匹配目标物体的形状。
在该对话框中,确保在 creation options 下拉列表中选择 make soft 选项。单击 create 按钮,然后单击 close 按钮,将原始几何体 ( 球体 ) 转为一个柔体。这时出现一个看上去像球体的物体,由一群粒子包围着,粒子的数目由原始几何体中的等参线 ( 或多边形表面 ) 数值决定。若想要更多的点,可以使用更多的等参线创建初始形状。选择 makenurbssphere1 节点并改变段数 ( 或块数 ) 为 8 ,柔体粒子数目随之改变。如图 11-27 所示。
提示:
在开始动画后不要再添加或提取段和面,这样会得到不可控制的柔体效果。
图 11-27 转换成柔体 maya 除了可以把 nurbs 物体转换成柔体之外,还可以将 ik 样条曲线和运动路径转换成柔体,转换的方法相同。
在开始使用柔体之前,先在 outliner 窗口中看一看柔体的结构。
打开 outliner 窗口,并执行 options → display → shape nodes 命令,窗口将出现图 11-28 所示的内容。
图 11-28 outliner 窗口 在该窗口中,可以看到 nurbssphere1particle 和 nurbssphere1particleshape 节点处于选中状态,这两个节点是新建的柔体变形和形状节点,这些节点附加到你的原球体中。
为柔体加入一个对其有影响的动力场。
重新选中球体,再执行 fields → create gravity 命令。这时重力场将出现在工作区中心。当播放动画时,球在重力影响下下落。
定制动画的播放,并回到第 1 帧,将球体向上移动,在场景中到建一个 nurbs 平面,大小和网格大小相近。
提示:
在播放前一定要回倒动画,否则在播放时会产生奇怪的效果。
选择球体,按 shift 选择平面,再选择 particle → make collide 命令。现在,当重力使柔体下落时,组成柔体的粒子将与平面发生碰撞,当播放动画时,将看到如图 11-29 所示的内容。
图 11-29 碰撞效果 柔体碰撞与刚体碰撞是不同的。首先,刚体将自动与另一刚体碰撞;而柔体则必须定义碰撞,就象使用标准粒子群一样。另外,每个粒子 —— ( 而不是作为一个整体的固体表面 ) 在不同的时间与平面碰撞,引起球体发生变形。
在柔体中加入弹簧效果
在 11.2 用户节中的粒子中,可以看到球体的上半部分产生了的剧烈运动,这种运动状态有可能是你不需要的。 maya 中的弹簧功能就是用于这一问题的。通过在柔体的粒子之间添加 spring( 弹簧 ) ,可以改善柔体内部的结构和变形控制。这是因为它向各个方向延伸。换句话说,柔体没有维持其长度;没有一种帮助其维持长度和体积的“骨架”。如果为柔体创建了 spring ,当柔体与地面等物体碰撞时,柔体就会自动发生弯曲,这种效果看起来很真实,如图 11-30 所示。
图 11-30 弹簧效果 并不是所有的物体之间都能建立 spring ,一般情况下,弹簧效果总是作用于粒子之间,另外,柔体的可控点或者顶点、曲线或者多边形曲面上的可控点、多边形的顶点和晶格点之间也可以创建弹簧。
每一个 spring 至少有一个端点是粒子或者柔体顶点。在图 11-31 所示的例子中,粒子矩阵中的粒子与圆环物体的可控点是通过 springs 连接的。
图 11-31 spring 与物体 cv 点 在特殊的物体元素上,也可以创建 spring ,如图 11-32 所示,在两个不同的粒子物体之间,分别选择一对粒子,并且创建 spring 。
图 11-32 在两个物体之间创建弹簧 粒子在发射出之后也可以创建 spring ,利用这种功能可以制作出类似于烟云的效果,如图 11-33 所示。
图 11-33 弹簧作用于粒子发射之后 场景窗口中选择柔体物体,再选择 soft/rigid bodies → crease springs
命令,便可以打开 spring options 对话框,如图 11-34 所示。在这个对话框中可以对弹簧作一些调整。
图 11-34 spring options 对话框 下面是它的具体参数:
● add to existing spring :在带有弹簧的柔体上添加新的弹簧。
● don`t duplicate spring :用于避免在带有弹簧的两个粒子之间创建新的弹簧。
● set exclusive :当一个以上的物体处于选中状态的时候,物体中的所有点都会被弹簧连接起来。
● creation method :选择 minmax 选项时,可以使用 min distance 和 max distance 文本框来定义柔体中的一个范围,在此范围内的所有点,都将被 spring 连接起来,如图 11-35 所示。
选择 all 选项可在选中物体的所有点之间创建弹簧,这样可以形成一个统一的弹簧体系结构,也可以将它看作为一个弹簧物体,适用于创建一个跳动的球体或者石块,效果如图 11-36 所示。
图 11-35 定义范围 图 11-36 all 选项的作用效果 选择 wireframe 选项可在柔体物体的最外层创建弹簧,此选项非常适用于曲线构成的柔体或者不规则曲线的柔体,如图 11-37 所示。
图 11-37 wireframe 选项的作用效果 ● min distance 和 max distance :在 minmax 模式下,用于定义柔体距离范围的最小距离和最大距离。
● wire walk length :在 wireframe 模式下,用于设置物体边缘粒子之间有多少弹簧被创建,设置 wire walk length = 1 ,或者 wire walk length=2 ,效果如图 11-38 所示。该数值设置的越大,柔体的结构越复杂。
图 11-38 设置 wire walk length 的数值 ● rest length :设置 spring 静止时的长度,在弹簧物体中,每一个弹簧都具有相同的静止长度。
● siffness :设置弹簧的坚硬程度,如果弹簧的坚硬度增加过快,那么弹簧的伸展或者缩短也会非常快。
● damping :设置弹簧的阻尼力,如果该值较高,则弹簧的长度变化就会变慢,该值设置的较低,则弹簧的长度变化就会变快,可以运用低的阻尼值和高的弹力值来创建物体颤动效果。
● end1 weight :设置应用到弹簧开始点上弹力的大小,当 end1 weight 值为 0 时,表明开始点不受弹力的影响,当该值为 1 时,表明受到弹力的影响。
● end2 weight :设置应用到弹簧结束点上弹力大小,当该值为 0 时,表明结束点不受弹簧弹力的影响,当该值为 1 时,表明柔体受到弹力的影响。
好消息:纳金网开设网站专题,整合提供maya教程、maya软件、maya金属材质等专题,有需要的朋友可自行免费下载!
|