您的当前位置:首页正文

Maya IK手把手教学

2022-12-03 来源:年旅网


Maya 手把手教学:Maya的FBIK角色骨骼创建及皮肤绑定(基础篇)

默认分类 2010-12-21 14:33:45 阅读50 评论0 字号:大中小 订阅

一.理论介绍

Maya蒙皮Bind Skin(也叫皮肤绑定)分光滑蒙皮和刚直蒙皮,前者适用于肌肉皮肤等会挤压伸缩的物体,后者适用机器人及骨架的刚硬物体。骨骼与模型进行刚直蒙皮,模型点对应的骨骼关节权重为1,即一个点只能被一个关节所影响(光滑蒙皮则可由多个关节控制1个点);但这并不是说刚直蒙皮不能进行生物体的绑定,因为其特有的屈肌控制器,

在某些情况下会比光滑蒙皮的影响物体更有效率。

蒙皮也仅仅是对物体上点进行簇权重的赋值,因此,其与变形器的作用是一样的,即

不能删除历史,否则权重效果消失。

*执行蒙皮操作前,模型必须要进行历史清空操作,如果因为蒙皮前遗留过多的操作历史,在蒙皮后,可执行Edit->Delete by Type->Non-DeformerHistory,即删除非变形

器的历史;但这也不是万能的,有时仍会出现些难以挽回的异常。

Maya对点的控制通常有4种方式:Weighted Deformer(变形权重),Rigid Skins(刚直蒙皮),BlendShapeDeformers(融合变形),SmoothSkins(光滑蒙皮)。因此,

对物体进行蒙皮后,仍可加入变形器进行特殊控制,包括表情制作。

BindSkin(绑定皮肤):将模型与骨骼进行绑定

现在我们就先来了解下Skin(皮肤)菜单的功能。进入Animation模块的

Skin->BindSkin,在BindSkin(绑定皮肤)菜单下,有SmoothBind(光滑绑定)和

RigidBind(刚直绑定)两种。展开各自的设置选项:

光滑蒙皮(Smooth Bind Skin):默认设置以Joint hierarchy(关节层级)进行蒙皮,也就是物体组或整个物体以所有关节为基本进行权重赋值;Selected joints(选择关节)

仅对选择的关节部分进行权重赋值;

Object hierarchy(物体层级):当选择多个物体进行蒙皮,使用该项才能赋值

刚直蒙皮(Rigid Bind Skin):默认的Complete skeletion为对选择的物体进行整个

骨骼的绑定;Selected joints为将当前物体进行对应骨骼的蒙皮。

Coloring:勾选Color joints的话会自动给骨骼进行上色。

DetachSkin(分离皮肤):用来分离蒙皮后的物体和骨骼。

开启设置选项,默认History:Delete history是将物体与骨骼分离后,删除蒙皮历史,

并返回模型绑定前的形态。

而Keep history则在保留蒙皮历史的情况下分离物体骨骼,并返回模型绑定前的形态,常用于给蒙皮后的骨骼增加关节;当再次进行物体蒙皮,可保持之前的权重。

Bake history(烘焙历史):分离物体骨骼,并删除簇权重的历史记录,但保持模型当

前形态。常用于静帧摆Pose。

Coloring(着色):仅针对刚直蒙皮的骨骼着色,定义是否在分离骨骼后移除绑定时设

定的骨骼颜色。默认为移除。

Go to Bind Pose(回到绑定时姿势):选择骨骼或蒙皮模型,执行此功能将返回绑定

时的模型姿势。

*当对骨骼进行IK和约束操作,容易引起此功能失效。遇到这种情况,进入

Modify->EvaluateNodes,将IKSolvers,Constraints,Expressions的勾去掉,再执行Go to Bind Pose即可;不过建议是在调动作之前,给控制器设置一个初始关键帧以便随

时返回。

理论上介绍了蒙皮概念和菜单作用之后,接下来,我们进入实际操作。

二.操作流程(SmoothBindSkin)

1.导入角色模型。此模型最好是在执行多边形Smooth之前的低模,否则在权重分配

(刷权重)时将是个郁闷的过程。

(此例中,因为本人偷懒,临时从Poser中弄了个人物造型)

【步骤8之前为FBIK的创建,如果使用第三方插件或者自定义骨骼,可以跳过】

2.创建FBIK骨骼。进入Maya Animation模块的Skeleton->FullBodyIK->Get FBIK Example,在弹出的Visor窗口中,按住鼠标中建,将两足角色骨骼样本bipedExample.ma

拖入场景中

3.删除FBIK控制器。Window->Outliner,开启大纲管理窗口,选择humanIK1组,

按键盘上的Delete,删除FBIK的所有控制器。

4.调整骨骼方位。进入Front前视图,Top顶视图以及Side侧视图进行骨骼和模型的

对位,要注意避免中央骨骼链的水平偏移。

*为了便于显示操作,开启骨骼透视,视图上方的Shading->X-RayJoints(X射线

关节)。

5.镜像关节。选择肩膀和大腿部位的骨骼,开启Skeleton->MirrorJoint(镜像关节)

后的选项窗口:

(1)将Mirror across(镜像相交线)设置为YZ,即模型以YZ为轴向是面对着用户;

(2)在Replacement names for duplicated joints(对复制关节更名)栏下,在Search for(查找)输入right,Replace with输入left,即将我们当前名字前缀为right(右边)

的骨骼进行复制并改名。

*注意大小写的输入

按下Apply执行操作。

6.增加FBIK控制器。执行了骨骼镜像后,选择根骨骼(盆骨),开启

Skeleton->FullBodyIK->AddFullBodyIK的选项窗口:设置Identifyjoints(识别关节)

为By name(名称),Posture(姿势)为Biped(两足),然后点击Apply

*FBIK有规范的关节标记(jointLabels),完整的做法应该是先修正镜像后的关节标记,然后再将Identifyjoints(识别关节)以By label(标记)的方式进行FBIK控制器的添加。

本例跳过此步骤,以免引起新手更多混乱……

7.调节控制器大小。回到场景视图中,可以看到骨骼已经包含了控制器,不过有点细

小……进入右边的通道栏,将Scale XYZ设为5,将控制器放大5倍。

8.Smooth蒙皮。选择根骨骼(盆骨)并加选模型,执行

Skin->BindSkin->SmoothSkin。现在我们有了一个初步的蒙皮模型。

*蒙皮对物体骨骼的选择顺序无特别要求

9.绘制权重。隐藏衣服(稍后再进行衣服的处理),然后通过控制器使模型摆姿势-动

画需要的正常动作,观察需要更改权重的部位,然后选择模型,执行Skin->EditSmoothSkin->PaintSkinWeightsTool的选项窗口。

*在模型上右键,在弹出的窗口中,执行

Paint->skinCluster->skinCluster-PaintWeights也可直接进入权重绘制模式。

*因为在Maya环境中,骨骼的选择优先权大于模型,为了方便后面的操作,我们先关

闭骨骼的选择功能。

10.笔刷调节。现在,场景转为了笔刷模式,模型上的黑白灰就是对应骨骼的点权重的

分配情况。黑表示无,灰为过渡,白色表示完全控制。

*右边笔刷属性面板下的Brush(笔刷)栏下,Radius(为笔刷半径),场景中按住b和鼠标左键,可快速调整;Opacity(不透明度)影响着PaintWeights的Value值,一般

不做改变。

11.关节选择。在右边笔刷属性面板的Influence(影响)栏下,选择骨骼列表中对应

的骨骼关节进行权重绘制:

(1)关节列表下方的ToggleHoldWeights on Selected(保持所选权重),按下后会在关节名称后加入(Hold)的标记,可固定该关节所控制的点权重不被修改。

(2)模型绘制模式下,在关节上右键PaintWeights(绘制权重)可快速选择骨骼关节

12.绘制方式。PaintWeights(绘制权重)栏下的Paint operation(绘制方式)分为:

Replace(替换):选用该项,Value值将可调,绘制的点权重全部以该Value值进行

替换

Add(增加):选用该项,Value值将可调,绘制的点权重不断加上该Value值,直到

完全为1

Scale(缩放):选用该项,Value值将可调,绘制的点权重不断乘以该Value值,直

到完全为1

Smooth(圆滑):选用该项,Value值不可用,绘制的点权重将进行平均分配,以达

到圆滑的过渡效果

下方的Flood(溢出)则可用于将所选关节控制的点权重散布至整个模型。

其中,Add和Smooth较常用。

13.使用镜像权重。Maya为我们提供了方便的蒙皮权重管理,我们只需要进行模型半

面的绘制,然后再镜像即可:

(1)选择模型或者骨骼,执行Skin->Go to Bind Pose(回到绑定时姿势)

(2)选择模型,开启Skin->EditSmoothSkin->MirrorSkinWeights(镜像皮肤权

重)的选项窗口

(3)在选项窗口中,设置Mirror across(镜像相交线)为YZ轴向,Direction(方向)

勾选。

*勾选Direction(方向),表示权重从X轴正向往负向复制(即Z轴正对用户时,从

右往左进行权重镜像),反之则去掉勾选。

14.完成了人体模型的权重分配,接着是对角色服装的处理。

进入Window->Outliner,选择图中隐藏的模型,然后在通道栏的Visibility中输入1,

即on,显示衣服模型。

15.对服装进行蒙皮。选择上衣模型,加选根骨骼,执行Skin->BindSkin->SmoothBind,裤子也进行同样的蒙皮操作。

16.复制权重。人体和衣服都已经对骨骼进行了蒙皮,接着要将人体的权重复制给衣服,

避免穿插。按顺序先选择衣服,然后加选人体模型,执行

Skin->EditSmoothSkin->CopySkinWeights。

*此方法适用于较贴身的衣服,可将刷好的人体权重复制给临近的衣服模型(当然,多

数情况下会将衣服内的人体删除)。

17.恢复默认权重。如果绘制或者复制权重后出现异常,可以选择模型,执行

Skin->EditSmoothSkin->ResetWeights to Default(重置默认权重)--看个人喜好。

三.流程总结

FBIK的创建->骨骼蒙皮->权重绘制->镜像权重->复制权重

这是一个简单完整的Maya角色骨骼蒙皮的过程,通过以上的步骤,我们完成了一个

通用人物角色的动画前期准备。对于蒙皮的更多知识点(如刚直蒙皮,肘关节的权重问题,

表情的制作等),会在以后的教程中细说。

因篇幅问题不能全部显示,请点此查看更多更全内容