三维动画创作(maya)课程讲稿.pdf





《三维动画创作(maya)课程讲稿.pdf》由会员分享,可在线阅读,更多相关《三维动画创作(maya)课程讲稿.pdf(26页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 三维动画创作(MAYA)课程讲稿 课程名称:三维动画(MAYA2)课程号:1100200 编写日期:2011 年 8月 总学时:54 学时 第一阶段(9学时)Maya 骨骼系统介绍与基础 通过激活具有大量关节的复杂模型,根据决定运动的几个主关节的最终角度可以确定骨架的运动,从而创建精确灵活的人物动画。这是一项高级的动画技术。这项动画技术要求运动的三维模型必须建成分级结构。骨骼就是一种特定类型的分级结构,由不同运动约束的关节连接成链状的分级骨架结构。这种分级骨架结构由许多采用分级方式分组的关键链构成,骨架与其周围的皮肤表面也是相连的。骨骼的所有部分同时运动,但必须遵循特定的等级关系。当对骨骼进
2、行变换时,骨骼的等级关系阻止了部件向各个方向散开。骨骼由根关节、一定数目的关节和反向运动学等级关系(IK Handles)组成。关节是骨骼中骨头与骨头之间的连接点。每个关节可以有一个或多个骨头与之连接。根关节(Root Joint)是关节链第 1 段的第 1 个关节,是关节链所有分段和关节的父母结构;父关节(Parent Joint)可以是任意的关节,只要其下带有子关节(Child Joint)骨骼机构中的反向动力学手手柄,也称为末端效应器。当移动骨骼中的反向动力学手手柄并实施了高级运动学技术时,就可以自动算出关节的转动。例如,就胳膊伸出去操作按钮而言,运动的反向运动学手手柄应该放置在手上或者
3、伸出的指尖上,这与事实是基本相符的。1、Joints Chains(关节链):关节链由一定数量的关节和连接于其上的骨头(Bone)组成。关节链中的关节是线性连接的,关节链的第 1 个关节是整个关节链中层次最高的关节。2、Limbs(肢体链):肢体链由一个或多个连接的关节链组成,肢体是一种树状结 构,其中的骨节并不是线性的,而且链一般是从链中层次最高的关节开始的,如图 13-4 所示。3、Joint Tool(关节工具):该工具主要用于创建复杂的骨骼结构。创建骨骼的具体 操作步骤如下:(1)创建一条关节链。(2)继续添加新的关节或者以原关节链的任意关节作为父关节创建新的关节链。(3)创建出需要的
4、骨骼结构。骨骼结构形成以后,执行 Window Hypergraph 命令或者 Window Outliner 命令,打开相应的窗口观测一下骨骼结构的层次关系。创建骨骼 骨骼是由骨头和关节组成的,选择 Skeleton Joint Tool 命令,只需在建模窗口中单击就可以放置关节,并且该关节由骨头相连。在建立骨骼时,最好先知道可以创建哪几种关节。1、关节能够绕 3 个轴旋转,如颈骨。这是默认的 Joint 工具设置。2、Universal 关节能绕两个轴旋转,如腕关节。3、Hinge 关节能绕一个轴旋转,如膝关节。在制作过程中应根据创建的关节的功能使用尽量少的关节,如反向关节和连接关节。因为
5、,这意味着动画更有效,并且减少 Maya 的计算量。例如,可以对腕关节和踝关节使用反向关节,而对膝关节使用连接关节。创建骨骼的基本方法 创建骨骼的具体操作步骤如下:(1)执行 Skeleton Joint Tool 命令。(2)在视图中的任意位置处单击创建第 1 个关节。(3)移动鼠标指针至第 2 个关节位置处。单击并按住鼠标左键进行拖动,可以调节关节的位置,然后释放鼠标左键创建第 2 个关节。移动鼠标指针至下一个位置处,单击创建第 3 个关节。(4)创建足够的关节后,按 Enter 键结束创建。提示:在创建过程中,单击并按住鼠标中键进行拖动,可以重新定位最近创建的关节。如果要改变其他关节的位
6、置,可以按一下 Insert 键,则在最后一个关节上出现变换操纵器。单击并拖动关节链中除关节外的任意关节,可以改变关节的位置,再次按一下 Insert 键,恢复创建模式,继续创建其他的关节。添加骨骼 骨骼一旦创建完成以后我们还可以用 Joint Tool 工具来继续添加新的骨骼。具体操作步骤如下:1、执行 Skeletion Joint Tool 命令。在关节链上的任意一个关节上单击鼠标左键,然后按照创建骨骼的方法继续创建即可。2、如果要在原来的关节链上继续添加新的关节,只需在原关节链的最后一个关节,也就是关节链中层次最低的关节上单击即可。3、达到要求后按 Enter 键结束创建过程。第二阶段
7、(18 学时)Maya 骨骼动力学 骨骼制作标志着用户已进入到高级特征动画制作的领域,在 Maya 中使用骨骼比较容易,但也有可能变得复杂。在我们为骨骼制作动画之前,首先要了解动力学的一些属性,这对于制作好的骨骼动画至关重要。正向动力学 Forward Kinematics 对于处理诸如行走时手臂的摆动或人转身时脊柱的旋转之类的自由运动是非常有效的。对于 Forward Kinematics,主要关心的是给动画正确建立关节,下面就用 Joint 工具来建立一个人体骨骼。首先要做的是创建有骨骼的腿部,这需要放置腿、膝和足关节。具体操作步骤如下:1、执行 Skeleton Joint Tool 命
8、令,单击 Reset Tool 将所有的选项都设置为默认状态,然后执行 Auto Joint Limits。2、进入侧视图,按住 X 键并单击关节,将它捕捉到栅格上。创建完所有的关节后,按 Enter 键完成制作。提示:在关节创建过程中的任何时候,用户可以用鼠标中键拖动以调整创建的最后一个关节的位置,或者用向上箭头键回到其他关节。注意:如果返回少许几个关节,并用鼠标左键单击的话,就会在关节外得到另一个关节分支。3、分别给关节命名为 Lleg,Lknee 和 Lfoot(L 代表左的意思)。现在没必要考虑关节链中的最后一个关节,因为现在还用不上。4、进入透视图,执行膝或足关节并试着转动它,这时可
9、以发现它仅能绕 Z 轴旋转,且对 Z 旋转还有一个限制。用 Auto Joint Limit 设置可以创建一个 Hinge 关节,这种关节旋转时不会通过父关节或者说该关节弯曲不会超过 180 度。因此,和膝关节一起使用是最好不过了。如果还要使足绕关节 X 或 Y 轴旋转,可以在 Attribute Editor 中进行设置。在 Joint 栏,设置 Degrees of Freedom 为 X 和 Y,继续对 Z 轴应用关节限制,除非在 Limit Information 栏关闭 Rot Limit Z 设置。在创建腿时一定要注意,创建的骨头间是倾斜的,而不是一条直线。因为,在骨头之间的角度决
10、定了骨头弯曲的方式。另外,在 Maya 中默认的关节方向是由该关节与其子关节的关系决定的。是指创建一个关节时,局部坐标的 X 轴沿着骨头方向,Y 轴指向弯曲方向,Z 轴垂直于弯曲方向。执行 Display Components Object Local Rotation Axes 命令,可以显示出一个关节的局部旋转轴。当用默认设置创建一个关节时,Z 轴旋转方向始终是指向弯曲骨头的方向,Y 轴旋转方向就是骨头从一边到另一边的旋转方向。这样,执行要创建关节的窗口就非常重要了,因此应指出要使骨头如何弯曲,然后相应地在正确的窗口中创建这些骨头。例如,模型面向前视图,则可以在侧视图中创建脊椎和腿。这样,
11、当创建其他的骨骼时,就可以在不同的窗口观察创建关节的示例。移动和镜像关节 用户可以使用 Move 工具移动创建的关节。如果执行一个关节并用 Move 工具移动它,该关节层级下的关节也会一起移动。如果执行 Move 工具,然后按 Insert 键显示轴心点控制器并移动该轴心点,则只要移动该执行的关节即可以。当然也可以使用 Maya 的 Skeleton 菜单中的其他工具来编辑创建的关节,通过插入、删除、连接和断开关节 甚至重新创建关节。下面用镜像来创建另一条腿,因为关节的运动与一般物体节点有区别,所以需要使用 Mirror Joint 功能对称地复制右腿,其具体操作步骤如下。1、将腿层级移动到(
12、2,0,0),然后执行 Skeleton Mirror Joint 作为设置,并单击 Mirror。2、试试同时旋转左、右膝盖,这两个膝盖会像彼此的镜像图像一样旋转。3、将被镜像的关节命名为 Rleg、Rknee 和 Rfoot。在镜像关节时,旋转的限制信息应该也拷贝到被镜像的关节上,但用户也许会发现它们并未被激活。如果出现这种情况,可以选择 Attribute Editor 并激活它们(在那里有这些数字信息)。如果有一些 Rotate 域是灰色的但关节仍可以旋转,那么可以在 Degree of Freedom 框中双击鼠标左键以解锁。命令。执行 YZ 如果发现关节镜像得不对,可以在另一个关节
13、下把它们编成组,先镜像它们然后再解散它们。建立人体其余的骨骼 下面是增加脊椎和肩部关节层级的方法,具体操作步骤如下:1、进入侧视图,用默认的 Joint Tool 选项设置创建脊椎链,脊椎关节需要的是 Ball 关节形式。在顶视图中创建左肩骨骼链(记住现在创建的是一个非常简单的骨骼)。2、将脊椎层级命名为 waist、chest、neck 和 head,并将肩部层级命名为 Lshoulder、Larm、Lforearm 和 Lhand。3、在前视图中,将肩部骨骼链向上移至稍稍低于颈骨的位置。4、在 Hypergraph 或者 Outliner 中,将腰以下的腿骨链编为一组,并把胸部下方的 Ls
14、houlder 链编为一组,这时应看到像层级和图片的一些东西。5、要在肩部关节加上旋转限制,打开 Attribute Editor 并执行 Lshoulder 关节。因肩部不需要绕 X 轴旋转,因此可以在 Degrees of Freedom 设置中关闭 X。因为要使 Larm 像 Ball 关节一样旋转,因此它的设置不改变。Lforearm 是一个普通关节,不能绕 Y 轴旋转,因此关闭 Y;Lhand 也是一个普通关节,不能绕 X 轴旋转,因此关闭 X。6、对这些关节和其他关节也可以设置具体的最小和最大旋转范围。下面以 Lforearm 关节为例加以说明。执行 Lforearm,在 Attr
15、ibute Editor 中打开 Limit Information 和 Rotate 属性,这时可以看到 3 个 Rot Limit 域,且 Y 旋转为灰色。选中 4 个 Rot Limit X 和 Z 框,并使 Min 和 Max 域解锁。7、在顶视图中将 Lforearm 绕 Z 轴旋转。当前臂变直时,其度数大约为 28,因此输入 30 作为 Min 值,当前臂弯曲与 Larm(胳膊)重叠时,度数大约为 137,因此输入 130 作为 Max 值。8、对于 X 旋转,假设掌心是朝下的。在这种情况下,Lforearm 应能够旋转 90 度使掌心朝前,在起始位置旋转 45 可以使掌心朝后。输
16、入 90 和 45 作为 Min 和 Max 值。提示:同样,对 Translate 和 Scale 也有限制,这个限制也许有时会用到。Maya 还有 Rotation Limit Damping 设置,该设置允许关节在旋转限制之内或之外移动。9、执行 Lshoulder 关节并镜像该关节,此时可以得到一个虽然非常简单,但是完整的人体骨骼。重定位关节的局部坐标轴。为了得到对关节如何旋转的精确控制,有必要知道如何重定位关节。譬如说在已创建的骨骼中,用轴心点操纵器将肩关节向下平移了 一个单位。如果显示局部旋转坐标轴,则 X 轴不再是指向骨头中心,而是大约偏离了 24。要重定位 X 轴,可以执行 R
17、otate 工具并切换到组件模式。用 RM 执行问号标记按钮(多重表列)并选中 Local Rotation Axes 复选框,然后执行肩关节。可以在前视图旋转 Y 轴手柄直到 X 轴指向肩关节,也可以在命令行中通过输入一条 MEL 命令来输入一个精确的旋转值。例如:可以输入 rotater os 0 24 0 命令以使局部坐标围绕 Y 轴相对旋转 24。反向运动学 使用 Forward Kinematics 工具主要涉及到的是正确地建立关节。在创建关节并将关节编为一组,且给关节加了合适的限制之后,就要转换关节并给它们作关键帧。首先从顶部层级开始,然后向下处理底层关节直到获得所要的姿态。对于定
18、向运动来说(如一个人将脚放到地面或伸手开门),使用正向运动学来实现非常困难和麻烦,一般需用反向运动学(IK)来制作动画。反向运动学包括 IK 手柄和 IK 解算器。一个 IK 手柄贯穿受影响的关节,这些受影响的关节就叫 IK 链,并且手柄线贯穿关节。手柄矢量指的是从起始关节开始指向末端关节的矢量,末端关节是 IK 手柄的末端受动器所在位置,如图 13-17 所示。IK 解算器可以查看 IK 链末端受动器的位置并作一些必要的计算,以使关节能正确旋转。旋转方式是从起始关节开始到 IK 链的末端关节为止,这种方式意味着末端关节在末端受动器所在位置。当末端受动器移动时,IK 解算器就将末端受动器的平移
19、值改为关节的旋转值,关节也会相应地改变。通常,IK 链只使用 3 个关节,但也可以处理更多的关节。Maya 的界面有 3 种 IK 解算器:IKRP(Rotate Plane)解算器,IKSC(Single Chains)解算器和 IK Spline 解算器,每种 IK 解算器都有各自的 IK 手柄类型。使用 IKRP 手柄 IKRP 解算器是 IK 手柄工具的默认设置,其具体操作步骤如下:1、在侧视图中,画一条简单的关节链。2、执行 Skeleton IK Handle Tool 命令,并将工具重置为默认设置。3、单击第 1 个关节,然后单击最后一个关节,一个 IK 手柄已创建起来。顶部的圆
20、复杂,当得到其组件的内容时,设置起来就非常简单。IKRP 解算器仅计算末端受动器的位置值,而忽略了末端受动器的旋转值。通过 IKRP 解算器旋转的关节,其旋转方式是关节的 Y 轴是平的、X 轴指向骨头中心、Z 轴垂直于弯曲方向。这是建立关节的默认局部方向坐标,如果没有看到旋转圆面,则可以执行末端受动器并按 F 键显示 Show Manipulator 工具。沿着关节弯曲方向的平面由平面指示器显示,平面作为关节链平面。用旋转 IK 链的扭曲圆平面可以绕手柄矢量旋转该平面。相对于由手柄矢量和极矢量创建的参考面可以测出 Twist 度,该参考面可以被移动且可以作关键帧。有时,手臂弯曲的方式会引起 I
21、K 链与默认参考平面设置相互转换,为了避免这种转换,可以调整极矢量或作极矢量动画。使用 IKRP 手柄的好处在于能比较精确地控制 IK 链的旋转,缺点在于必须处理较多的组件。使用 IKSC 手柄 IK SC 手柄比 IK RP 手柄要简单些,下面 介绍如何使用 IK SC 手柄。具体操作步骤如下:1、首先进入侧视图并另画一条简单的关节链。2、执行 Skeleton IK Handle Tool命令,进行没置,然后关闭该对话框。3、单击第 1 个关节,然后单击最后一个关节,可以看到 IKSC 手柄了。4、执行 Rotate 并旋转 IK 手柄发现这似乎只对局部 X 和 Y 旋转手柄有效,且释放手
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 三维动画 创作 maya 课程 讲稿

限制150内