对于三维人物动画而言,首先是使用建模工具创建模型,然后创建人物模型的骨骼,接下来便是将模型与骨骼绑定在一起,绑定的过程称为“蒙皮”。骨骼被蒙皮后,可以使人物的模型随骨骼一起运动,并在骨骼运动时产生相应的变形。骨骼在蒙皮过程中,所处的姿势称为 bind pose 。蒙皮后,骨骼的运动会引起皮肤的变形。但是,有时会出现不恰当的变形,这就需要对骨骼或皮肤做相应的修改,此时可以运用相关命令使骨骼恢复绑定姿势,然后断开骨骼与皮肤之间的关联。在 maya 中,可以随时把骨骼和皮肤断开或重新连接。
bind skin如果要把模型绑定在整个骨骼上,选择任意的骨骼,系统都会自动把模型绑定在整个骨骼上,如果要把皮肤绑定在部分骨骼上,则需要精确地选择每个绑定的关节。
执行 skin → bind skin → smooth bind
命令或者 skin → bind skin → rigid bind
命令,打开如图 13-32 所示的对话框。
图 13-32 smooth bind options 和 rlgid bind skin options 对话框 ● bind to :此下拉列表中包括 complete skeleton 和 selected joints 两个选项,用户可以根据情况进行执行。
● coloring :迫使关节的颜色与它的“皮肤点组”的颜色相同。
● bind method :选择 closest point 单选按钮,系统自动为每个关节创建一个 jointclusters ,并把每个关节附近的点分配到相应的关节簇中,从而使关节簇可以控制皮肤点组。
选择 parition set 单选按钮,以区域组蒙皮方式进行蒙皮,并且激活 partition 视窗变为有效,从中可以选取蒙皮专用的区域组。对于区域组蒙皮而言,区域中组的数目应与关节的数目相等,这一点是相当重要的。
单击 bindskin 按钮,则模型被绑定在骨骼上,此时皮肤的变换属性被锁定,用户不能移动或缩放皮肤,但可以显示皮肤组点的颜色。
选中作为皮肤的模型,如果皮肤是 nurbs 几何体,则执行 display → nurbs components → cvs 命令。然后运用移动工具移动骨骼,观察皮肤是如何随骨骼运动而变形的。
detach skin有时需要重新修改骨骼,重新设置骨骼的绑定姿势或对皮肤做进一步的建模。这时首先需要将骨骼与皮肤之间的关联断开,然后进行必要的修改,修改完后,再重新连接皮肤与骨骼。
执行 skin → detach skin命令,打开如图 13-33 所示对话框。
图 13-33 detach skin options 对话框 ● history :在 history 下拉列表中可以根据实际的需要执行 delete history 、 keep history 或者 back history 中的任意一项。
● delect history :用于将断开皮肤,将皮肤恢复至未变形时的位置,并且删除所 有未使用的关节簇。
● keep history :用于将断开皮肤将皮肤恢复至未变形时的位置。但不删除未使用的关节簇。
● bake history :用于将断开皮肤并且删除所有未曾使用过的关节簇。但它不能将皮肤恢复至未变形时的位置。
● coloring :选中 remove joint colors 复选框将在断开皮肤与骨骼之间的关联时删除关节的颜色。
单击 detach 按钮,执行断开命令。此时,因为皮肤的变换属性被解锁,所以可以使用变换工具移动、旋转或缩放皮肤。
go to bind pose当骨骼被蒙皮之后,骨骼的运动同时引起皮肤的变形。但是,当骨骼恢复到绑定姿势时,皮肤也会恢复成未变形时的形状。因此用户需要恢复骨骼的绑定的 姿势 ( 如添加网格曲肌时 ) 就可以执行 sking → go to bind pose 命令来恢复绑定姿势。
选择骨骼中的任意关节后执行 skin → go to bind pose 命令,则骨骼恢复至绑定姿势。
有时,因为运用了 constraints 、 keyframed ik handles 或 expresions ,骨骼不能恢复至绑定姿势,此时会弹出一个错误提示信息: error : could not reach bindpose due to constraints , expressions , or keyframed handles
这时,可以执行 modify → disable nodes → all 命令解决这个问题。
对于三维人物动画而言,首先是使用建模工具创建模型,然后创建人物模型的骨骼,接下来便是将模型与骨骼绑定在一起,绑定的过程称为“蒙皮”。骨骼被蒙皮后,可以使人物的模型随骨骼一起运动,并在骨骼运动时产生相应的变形。
骨骼在蒙皮过程中,所处的姿势称为 bind pose 。蒙皮后,骨骼的运动会引起皮肤的变形。但是,有时会出现不恰当的变形,这就需要对骨骼或皮肤做相应的修改,此时可以运用相关命令使骨骼恢复绑定姿势,然后断开骨骼与皮肤之间的关联。在 maya 中,可以随时把骨骼和皮肤断开或重新连接。
preserve skin groups
preserve skin groups 命令是一个“母”命令,其下包含 detach skeleton 、 detach selected joints 、 reattach skeleton 和 reattach selected joints 4 个子命令。这些命令,可以在保持皮肤组的情况下断开或重新连接皮肤,而无需重新进行蒙皮操作。
如果要运用 detach skeleton 命令,可以执行骨骼中任意关节,如果要运用 detach selected joints 命令,则需要精确地执行断开处的关节。
根据实际的需要,执行 detach skeleton 命令或者 detach selected joints 命令,则整个皮肤或被断开关节影响的皮肤将恢复成未变形时的形状。并且皮肤的变换属性被解锁,用户可以运用变换工具移动、旋转或缩放皮肤。
修改完成以后,用户可以使用相应的命令重新连接皮肤。根据断开皮肤时所使用的命令,执行对应的皮肤连接命令。
执行骨骼中任意的关节,执行 preserve skin groups → reattach skeleton 命令连接皮肤。
弯曲的手臂为了能够让用户更了解骨骼蒙皮的使用方法和作用,下面来制作一个骨骼蒙皮的实例。具体操作步骤如下:
(1) 创建一个 nurbs 圆柱体,设置 height to ratio 为 8 , sections 为 16 , spans 为 32 ,其他参数保持不变,如图 13-34 所示。
(2) 为圆柱创建骨骼,这条单一骨骼 ( 关节链 ) 包括 7 个关节,如图 13-35 所示。
图 13-34 创建圆柱体 图 13-35 创建骨骼链 (3) 选取骨骼的根关节,系统默认的名称为 joint 1 ,如图 13-36 所示。
(4) 按住 shift 键,执行 nurbs 圆柱体,然后,执行 skin → bind skin → smooth bind 命令,圆柱体被以平滑蒙皮方式赋予骨骼物体,如图 13-37 所示。
图 13-36 执行骨骼的根关节图 图 13-37 绑定骨骼 (5) 选取圆柱体中心的关节,例如 joint 4 ,设置 rotation z 为 90 ,圆柱体随骨骼发生了弯曲,如图 13-38 所示。
图 13-38 弯曲骨骼 (6) 执行 skin → edit smooth skin → paint skin weights tool
命令,打开 tool settings 对话框。
(7) 在对话框中,打开 skin paint 选项卡。在 influence 卷展栏中,显示所有的关节名称,如图 13-39 所示。
(8) 在 influence 选项组中,选取 joint 3 。在场景视图中可以观测到受关节影响的范围,颜色越白,受影响的力度越大,如图 13-40 所示。
(9) 运用 paint skin weights tool ,涂抹关节的折痕区域,结果如图 13-41 所示。 paint skin weights tool 为改变关节的影响力度提供了一种直观的方法。
图 13-39 tool settings 对话框 在 paint operation 选项卡 add 单选按钮可以增加对邻近关节区域的影响力度; scale 单选按钮,可以减小对远离关节区域的影响力度; smooth 单选按钮,可以平滑关节的影响力度。
图 13-40 受影响区域 图 13-41 使用 paint skin weights tool 之后的效果 本maya教程完。
|