Maya 4.0 刚体和柔体-柔体动力学(2)
Maya 4.0 刚体和柔体-柔体动力学在创建柔体时,系统会自动创建一个粒子物体,所以从某一方面来讲,柔体只是粒子的集合体,然而标准粒子和柔体粒子有些不同。一方面,柔体粒子被联接起来有一形状,另一方面,它们以一固态形状而不是点的集合体出现在屏幕上及最终渲染中。因为这两种属性,所以柔体是特殊的,它们可以以固态几何体出现,几何体中的点和粒子物体中的粒子一一对应。当粒子运动时,几何体中的点也会随之运动。它们尽管复杂,但创建柔体还是容易的,只要选择模型,并告诉 Maya 创建柔体便可。
在柔体中加入弹簧效果
在 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 选项的作用效果
[page_break]
● Min Distance 和 Max Distance :在 MinMax 模式下,用于定义柔体距离范围的最小距离和最大距离。
● Wire Walk Length :在 Wireframe 模式下,用于设置物体边缘粒子之间有多少弹簧被创建,设置 Wire Walk Length = 1 ,或者 Wire Walk Length=2 ,效果如图 11-38 所示。该数值设置的越大,柔体的结构越复杂。
[page_break]
图 11-38 设置 Wire Walk Length 的数值
● Rest Length :设置 Spring 静止时的长度,在弹簧物体中,每一个弹簧都具有相同的静止长度。
● Siffness :设置弹簧的坚硬程度,如果弹簧的坚硬度增加过快,那么弹簧的伸展或者缩短也会非常快。
● Damping :设置弹簧的阻尼力,如果该值较高,则弹簧的长度变化就会变慢,该值设置的较低,则弹簧的长度变化就会变快,可以运用低的阻尼值和高的弹力值来创建物体颤动效果。
● End1 Weight :设置应用到弹簧开始点上弹力的大小,当 End1 Weight 值为 0 时,表明开始点不受弹力的影响,当该值为 1 时,表明受到弹力的影响。
● End2 Weight :设置应用到弹簧结束点上弹力大小,当该值为 0 时,表明结束点不受弹簧弹力的影响,当该值为 1 时,表明柔体受到弹力的影响.