Maya教程-角色装配
作者:网友整理Autodesk mayav1.4 88.36M / 简体中文
点击下载Maya影视安卓版(影音资源播放平台) v1.4 手机版 26.48M / 简体中文
点击下载玛雅maya最新网站地址1.1.71.5.7 38.95M / 简体中文
点击下载绘制骨架和创建IK的所有工具都位于Animation模块的Skeleton菜单中.
如图,选择Skeleton>Joint Tool后的选项盒,保证Create IK Handle选项前的复选框为选择状态,使Current Solver项为
ikRPsolver.在侧视图中绘制IK腿的骨架,并在透视图中调整位置.
选择Window>Hypergraph,我们可以看到刚创建的骨架以及IK手柄.将他们重新命名,使腿关节分别为ltlegroot,ltlegknee,
ltleglow,ltlegend.命名手柄为ltlegik.命名是非常有必要的,它在装配和权重的时候都很重要.
[page]
选择左腿的跟关节,也就是ltlegroot关节,并选择Skeleton>Mirror Joint后的选项盒,把Mirror Across设为YZ平面,
Mirror Function设为Behavior.在Search For 中写入 lt,而Replace With 中写入rt.
单击Apply,我们可以看到骨架被复制到了右腿,而且自动命名拉~
选择Skeleton>Joint Tool选项盒,关闭Create IK Handle,我们先需要绘制FK骨架,在视图中绘制左臀部骨架和左脚骨架.
分别命名为lthiproot,lthipside,lthipend和ltfootroot, ltfootball, ltfootend.如图,
复制并镜象出右臀部骨架和右脚骨架.检查命名.
[page]
在前视图中按住Shift绘制出三个直的向上的关节,在侧视图中调整,使其处于正确的位置.
还是命名,backroot,back2,back3,backend.
在锁骨的位置绘制IK骨架,如图,调整位置.
命名, ltclavicleroot,ltclavicleend和ltclavicleik.镜象出右锁骨.
[page]
用同样的方法,在左肩胛骨位置绘制IK骨架,命名为ltseapularoot,ltseapulaend.镜象.如图.
绘制FK骨架,颈部neckroot和neckend.头部headroot和headend.下颚关节为jawroot,jawlow,jawend.
在正视图中绘制左臂骨架.如图.注意是FK骨架.
调整位置
命名ltarmroot,ltarmlow,ltarmturn,ltarmend.
现在我们为左臂添加IK.不直接绘制IK的原因是就胳膊而言,IK不能放置到整个骨架上.
选择Skeleton>IK Handle Tool或者单击工具架上的卫星图标.
[page]
操作步骤是:选择IK Handle工具,单击左臂跟关节,也就是ltarmroot关节,在单击ltarmturn关节.
最终形成的IK手柄命名为ltarmik.
为左手绘制一段FK关节lthandroot,lthandend.使手的跟关节在胳膊末端,完整的手指将在以后制作.
镜象出右手臂和右手,并查看命名.
选择所有骨架.将它们添加到skeletons层中.
[page]
基本的骨架我们就完成了,现在我们将创建控制图标.使用控制图标能更加有效的设置角色.
创建一个多边形立方体,缩放到合适大小.
在透视图中选择EP曲线工具,把Curve Degree设置为1 Linear.按住V键单击立方体的所有角,要使用单线条创建控制图标,因此需要曲线重叠,以覆盖立方体的所有边,继续单击,直到你的曲线盒子完成.完成后删除多边形立方体.现在就只剩下曲线制作的立方体盒子了.
如果以后还要创建多个控制图标,那么我们要把刚才的创建盒子的操作创建一个工具架按钮.
打开Scriot Editor.如图.
在灰色的history区域,找到创建盒子使用过的MEL,代码就是图中的高亮部分.使用鼠标中键可以把它拖拽到工具架上,并命名.以后就可以直接使用了.
创建4个这样的盒子,把它们放在图上的位置上.
保证骨架层为可选状态,选择其中的一个盒子,按insert键进入物体的轴中心调整状态,按V键将盒子的轴中心吸附到相应关节的跟关节上面,比如左脚的跟关节
调整好所有的控制框后,选择Modify>Freeze Transformations重新设置它们的转换通道.
[page]
如图调整后的状态.
还是命名,它们分别是ltarm,rtarm,ltleg,rtleg.
为头和臀部也添加控制框,转换通道并命名为head和hips.
另一种类型的控制图标是文本曲线,这种图标很容易识别.
这样创建它:选择Create>Text选项盒,把Type 设置为Curves.只能使用单线条就能组成的字母.比如U Z V T L S .
创建一个字母U.
完成后发现它有一对父级组节点
选择曲线节点,在曲线节点上按住鼠标中键不放,然后拖拽到一个空的位置,可以取消它和它的父级节点的关系,删除那对父级组节点.
[page]
将曲线U放置到一个合适的位置,调整它的中心到身体躯干的中部.重设转换通道.它将控制整个身体.命名为upperbody.
用同样的方法创建一个字母S的控制框,使它的中心在双肩之间,它将控制双肩的运动.命名为shoulders.
用曲线在平面上绘制一个箭头图标,也可以是其他的,只要是一根曲线完成的图案.使它位于膝盖前的几个栅格,复制几个这样的图标,放置到如图上的位置.重设转换通道.
[page]
为它们命名,分别是膝盖,ltknee,rtknee.肘部ltelbow,rtelbow.
为了使肘和膝盖的控制能正常使用,必须使用极点矢量约束,使箭头图标控制肘和膝盖的指向.
如图,选择左侧肘部的箭头,然后按住Shift选择左胳膊的IK手柄,并在顶部的菜单栏中选择 Constrain>Pole Vector
可以在透视图中看到一条线连接在IK和箭头之间.
用同样的方法处理其他几地方的极点矢量约束.
这样我们就创建了控制角色运动的所有元素,但是它还不能使用.我们必须把它们装入到角色的装配中去.
现在规范命名的第一个好处就体现出来了,我们可以很清楚的,很有条理的进行装配.
首先我们创建身体下部的层级关系.
操作如下:
把腿和臀部跟关节子化到hips控制框.
把腿的IK手柄,脚的跟关节,膝盖图标子化到相应的腿控制框.
也就是把ltlegik,ltfootroot,ltknee都子化到ltleg.
同样的方式子化右腿.
如图.
装配正确应该可以向下移动hips的控制框,腿将弯曲,而脚不动.
移动腿控制框,脚运动,臀部保持不动.
选择create>Locator.创建一个定位器,命名为feet.使它位于两腿控制框之间,并使它成为两个腿控制框的父物体.
当角色跳跃时可以使用到它.
如图
[page]
使upperbody图标成为hips图标和脊椎跟关节的父物体.
创建另一个定位器,命名为rig.选择upperbody图标再选择rig定位器,选择Constrain>Point命令.
使定位器到正确的位置.然后在Hypergraph视图中删除连接到rig定位器的约束节点.冻结它,
并使它成为feet定位器和upperbody图标的父物体.如图.
创建身体上部的身体层级.
使neckroot关节成为backend关节的子物体.我们可以在透视图中看到,在这两个关节之间产生了新的骨架,
这是我们不愿看到的,为了不产生新的骨架,应该在脊椎和所有子关节之间创建两组节点,
方法是:选择neckroot关节,并按Ctrl+G组合键两次.
为这两组节点命名为backpad1,backpad2.
使下列节点成为backpad2的子物体:
锁骨跟关节,肩胛骨根关节,颈部根关节,head控制框, shoulders图标,胳膊控制框和肘部箭头图标.
[page]
选择neckend关节,按住Shift,选择head控制框,使用Constrain>Point命令.
使head控制框成为headroot和jawroot的父物体.
使两个锁骨IK手柄成为shoulders图标的子物体.
使每个肩胛骨的IK成为同侧锁骨IK的子物体.比如使ltscapulaik成为ltclavicleik的子物体.
使每个胳膊根关节成为相应的锁骨IK的子物体.
使每个胳膊的IK成为相应胳膊控制框的子物体.
[page]
使手的跟关节成为相应胳膊末端关节的子物体
到此基本的骨架设置完成.再次检查一下视图中的层级关系.
并在透视图中测试骨架的运动.
光是这样还远远不够的,我们还要继续添加装配.今天先到这里,以后继续.
继续添加装配.
为角色的左臂创建一个尺骨和桡骨.注意是创建IK骨架.
在角色胳膊肘部一侧的骨架为尺骨,命名为ltulnaroot,ltulnaend.手臂内侧的为桡骨,命名为ltradiusroot,
ltradiusend.IK手柄为ltulnaik,ltradiusik.
镜象出右臂.
使左桡骨IK手柄成为ltarmturn关节的子物体.
尺骨的运动要稍微复杂点,首先我们创建一个新的定位器,使用前面介绍过的点吸附或者约束把它移到尺骨IK上面.命名为ltulnaconstrain.
建议用点吸附比较好~~如果用约束,就必须在位移后删除约束节点,因为我们将在下面的步骤中使用新的约束
[page]
将尺骨的IK约束到ltulnaconstrain定位器.
使ltulnaconstrain定位器成为ltarmturn关节的子物体,并使ltulnaik成为ltarmlow关节的子物体.测试手臂转动是否正常.
同样的方式处理右手臂.
绘制左手的FK手指骨架,并命名.这里可以顺便命名,自己好记好认就可以拉~~其实反复提醒命名的原因是可以在以后蒙皮,写表达式,写MEL控制的时候少花点时间来认骨架.镜象到右边.
选中左手所有的手指骨架的跟关节并成组两次,如图.这两组是为了不形成新的骨架,而且它们将分担手掌的两种旋转.
[page]
接下来我们要使用驱动关键桢来完善角色的控制.
首先是肩膀的运动.
如图打开驱动关键桢的窗口.
选中胳膊控制框,如图.按S键在时间尺上记录下一个关键桢.这个关键桢没有实际意义,只是为了让控制框快速的回到默认位置.
保证胳膊控制框为选择状态下,调入胳膊控制框的Translate Y 通道为驱动器.如图.
调入同侧锁骨IK受柄为从动物体.
点KEY设置一个关键桢.如图.
调整胳膊控制框的位置.
[page]
同侧锁骨IK位置也相应提高些~这是真实手臂的运动方式,手臂过肩后,肩开始上抬.
点KEY再设置一个关键桢,现在我们在Y轴上向上移动胳膊控制框,当超过肩部时,肩就会相应的抬高.
我们还要创建肩部单独耸起,下落的控制.
选中shoulders控制框,如图,为它添加一个新的左肩通道,
设置内容如图.
我们可以看见新的通道在通道栏的最下面.
[page]
当然也可以这样添加.添加一个右肩的控制,参数一样.
驱动物和从动物如图.
通过修改zuojian 通道的数值,对应左锁骨的IK位置,打三个关键桢.
0在默认位置,-3向下移动一点,10时抬高些.
同样的方法处理右肩.
同样,可以用驱动关键桢处理的还有手臂的旋转,方法是在胳膊控制框上添加手臂旋转通道.范围-10到10,默认是0.
驱动ltarmturn关节的X轴旋转通道.
图中是默认位置,打一个关键桢
将旋转参数调到-10
rX调成45
再来一桢
将旋转参数调到10
rX调成100
来一桢.
完成.
处理右手臂~~
还可以用驱动关键桢处理手掌的两种旋转.手指的张开,合并.每根手指的弯曲,下颚的张开.
我在这里就不一一演示拉.今天就到这里,明天继续,写教程还是很辛苦的.
现在,我们将要制作一个手跟随运动的开关.
首先断开两个胳膊控制框和身体的父子关系.
创建一个定位器,命名为hands,使它成为两个胳膊控制框的父物体.
再创建两个定位器.如图.
使backfollw成为backpad2的子物体~
使torsofollow成为upperbody的子物体~
选择backfollw定位器,并按住shift选择hands定位器.
如图创建点约束.
保证两者为选择状态,再创建方向约束.
可以看到hands定位器下面多了两个约束节点.
用同样的方法建立torsofollow定位器和hands定位器之间的两个节点关系~如图:
其中的点约束节点等会儿将作为我们的从动器使用~
[page]
在upperbody图标上面创建一个新的通道.数值如图所示:
选择upperbody图标新建的通道为驱动物,hands定位器的点约束节点为从动物.
如图:在默认位置打一个关键桢~
将通道值调整为1
将两个点约束节点的数值调为0.
并再打一个关键桢.
测试一下,当通道值为1时~移动upperbody图标,可以看到手不跟随身体运动.
当通道值为0时~移动upperbody图标,可以看到手会跟随身体运动.
(这个手跟随运动的开关本来不打算做的,后来加进来,所以会出点小问题.这个开关最好是在给肩膀设置驱动关键桢以前创建,如果之后创建会导致肩膀的自动运动失效.)
接下来我们要使用表达式来创建一些简单的身体自动运动.
我们将使用到Expression Editor,如图.
首先我们要将躯干约束到脚.
为upperbody图标创建两个父级组节点.如图:
[page]
我们使upperbody图标在水平方向上的移动距离为两腿移动距离的一半,既使身体的重心永远保持在两腿之间。
用图中的表达式可以X轴上upperbody图标保持在两腿之间。
如果表达式正确,可以看到图中显示的文字出现。
在透视图中测试一下。在X轴上移动腿控制框,身体将跟随运动。
再编辑Z轴上的表达式。
测试。
在Y轴上我们也要使用一个表达式,使角色举步时,身体重心跟着下降。这才符合真实的运动。
因此我们使用如图的表达式,该表达式通过X轴和Z轴中从一只脚减区另一只脚来确定它们之间的距离。
abs是绝对函数,而除以15中的15是一个常数,可以根据模型的大小调节的。
测试。看到角色向前移动时,重心有所下降,比较符合真实的人体运动。
下面介绍另一种高级表达式,条件表达式。
使用的条件可以是任何的判断条件真与假的数学语句。我们要用到if和else两个命名。
如图,该表达式可以使躯干重心在脚抬高时能够自动从一侧移动到另一侧。
[page]
测试,我们可以看到,当角色的重心可以随脚的抬高而移动。
同样的方式,我们先为臀部控制框添加一个父级节点。
用条件表达式控制臀部在腿向前移动时有轻微的转动。
测试,看到当左腿向前移动时,臀部发生了轻微的旋转。
我们还可以创建一组呼吸控制。
在胸腔位置绘制FK骨架。命名如图
将这组关节成组两次,使最上面的组成为back3的子物体.
在upperbody图标上创建两个通道。breathspeed和breathsize,设置参数如图:
表达式如图。该表达式使用了cosine函数和time 函数。cosine函数创建波动。time 函数可以在时间尺上播放时自动产生缩放运动。
调整两个参数,并单击播放按纽观察效果。
我们要为脚添加新的控制,让它的运动更加真实,也更容易调整~~
如图~以左脚为例~~这是以前装配好的,我们现在要完善它~
在脚控制框和脚跟关节之间创建3组节点~~~~
命名~~~
[page]
选择IK Handle工具~~
在ltfootroot到ltfootball创建ik.
在ltfootball和ltfootend创建另一个IK
调整位置~~
命名这IK为ltfootik和lttoelik
下面调整三组节点的位置~~首先是ltheel~~把它的轴中心移到如图位置~脚后跟位置~
lttoe的轴中心在脚趾位置~
[page]
ltfoot的轴中心吸附到ltfootball关节上~
如图~~将ltlegik子化到ltfootroot关节~
两个新的ik子化到lttoe节点~
如图~~层级关系~
下面~~我们在脚控制框上创建一个新的通道~~
加载全部内容