设为首页收藏本站喵玉殿官方微博

 找回密码
 少女注册中
搜索
查看: 8434|回复: 2

[音频视频] TI 三维美术组 : 低级动画实用教程:骨骼绑定、人物面部变形与动作

[复制链接]
发表于 2015-7-17 23:45:57 | 显示全部楼层 |阅读模式
本帖最后由 TheRebirth 于 2015-7-23 10:59 编辑



教程版本号   : 20150723A
应用难度评估 : 1.4 / 5.0
开放等级     : 不完全开放


    当我们想要制作人物的动画时,稍有经验的建模动画工具(如3DS Max,Maya或Cinema 4D)使用者首先会想到画骨骼。受硬件条件限制,在相当早的游戏(如CS、潜龙谍影等)中,手部上面根本不会有分配给手指的关节,四指一般都是并拢的。到现在,硬件条件大为改观,每根手指上分配四个关节似乎成了必须,到最后甚至连脚上的各个趾头都获得了自主活动的权利。尽管如此,为降低成本,脚上各个趾头的运动一般是不给予考虑的(即使在多数3D里番中也是如此。),追求完全真实的运动的多半是期望追求极致品质的CG动画。与此同时,建立动画的方法也渐趋多元化。火星时代介绍了两种骨骼绑定的方法,但人们实际使用的方法绝对不止这几种。
    这里有一个相对简单的教程,其目的是帮助在动画领域无多少经验的Beginner初步学会绑定骨骼,蒙皮,选择人物面部变形方法,进而有能力做出不太复杂的人物动画,同时降低渲染成本,减轻电脑负担。此处以Maya为例。在看这个教程之前,你至少应该熟悉Maya给完全的新手准备的视频中的操作技巧,只有不到十分钟时间,这总应该忍得了吧。
    要做动画,第一步得先布好关节点(Joint),然后再进行绑定(有时出于某些需要会添加控制器。)。这很容易理解,你得先告诉计算机,“这里是我的手部关节,然后这个关节是控制腿的”,绑定就是告诉计算机,“关节我已经布好了,帮我处理一下,这样我一转关节,模型就能动起来了。”如果不绑定,即使转动了关节,模型依然纹丝不动。
    火星时代中其中一个教程的做法是先将一条曲段移动到脊椎部位,平均布满五个关节点,再克隆这五个关节点形成的骨骼链,对于这五个关节点,教程使用IK Spline Handle(反向动力学仿样控制器),这样,绑定后只要改变那条线段的形状,弄成另一种曲线,人物的脊椎形状也会随之发生变化,且和曲线的形状始终保持一致。对于面部表情的表现,教程中使用了在面部散布关节点的方法。
    对于脊椎,这种骨骼绑定方法可以通过控制曲线形状实现平滑的脊椎弯曲,然而这种做法不适合人类——人不是软体动物。使这法子?除非是蚯蚓,否则拉倒吧。这种方法的弊端在人物身高较高时会非常明显,别用这种方法,除非这个角色是一个美式超级英雄。不仅如此,这种方法还增加了CPU解算的负担,着实有点浪费。
    作为练习,你可以考虑使用这个模型↓
    http://pan.baidu.com/s/1gdvVSzT
    关节点的分布,具体做法如下:
    先将鼠标移至Viewport(场景视口),按住空格键,在原点按住鼠标左键,移至Side View(右边)处松开,点击Joint Tool。
    腿部像这样布置,从腿的根部开始点↓(侧视图)
1.PNG
    然后用上面提到的转到Side View的方法,转到Front View(下边的按钮)。
    移动关节点,如图。
2.PNG
    再次转到Side View,画脊椎,从股骨部位开始点,如图。
3.PNG
    依顺序点选大腿根处关节,股骨处关节,按P(使股骨处关节成为大腿根部关节的父物体以便于控制腿的运动,该功能名为“Parent”。)。选中大腿根处关节,Skeleton -> Mirror Joint(点右边的小方块图标。)设置如图,确定。
4.PNG
    转到Top View。选中手臂,Make Live。(Modify -> Make Live,使其成为构造体,这时在手臂上点击,关节点将落在手臂上,而非零高度面。)分六次创建关节点。    如果你想偷懒的话,这些关节都可以不动了,不过我还是改了位置的。
    之后依顺序选中五根手指(选中根部)处的关节,再选中手掌上关节,通过Parent(快捷键为P)使手掌上关节成为五根手指上的关节的父物体,如图。同理使脖子底部处关节成为肩部关节的父物体。再进行一次Mirror Joint。
19.PNG
    最后选中全身与关节,请确保所有关节点都已被连接上,头发、眼球、牙齿除外,Skin -> Bind Skin -> Smooth Bind(点小方块图标),设置如图,确定。将头发、眼球、牙齿设置为头部关节的子物体。
5.PNG
    我建议你再给这些关节改个名字。
18.PNG
    现在,当你旋转腿上、腰部和手腕的关节时,应该可以发现它的转动可以带动模型变形了。为什么我没说脖子和手臂?你可以试着旋转一下,你会发现一些畸形的变形。该画权重了。
    选中你绑定的Skin,它是一个多面体(Polygon),选中后会显示绿色的布线。
    再点Paint Skin Weights Tool,如图。再找到Gradient选项卡,勾选Use Color Ramp。
6.PNG
    检查关节Arm左和Arm右的权重,重绘其中一侧的权重如图,笔刷选为Solid Brush,Paint Operation设置为Replace,Value设置为0,清除可能出现在背部,腋窝和胸部的权重,然后就可以Skin -> Edit Smooth Skin -> Mirror Skin Weights(最好还是点小方块图标设置一下,检查Mirror Across是否为YZ)查看效果了。接下来解决Forearm,这次的操作是将Paint Operation设置为Smooth,只将手腕末端用半径0.2的Solid Brush抹一下,Wrist和Palm都一样,边缘的颜色至少要是绿色,不必涂成蓝色,注意不要将影响范围扩大过多。这时换成其它的低面模型,手腕关节的旋转都应当可以带来较好的效果,接下来需要对手指上每个关节的权重进行检查,对于非大拇指的手指关节,只需平滑边缘,去除非关联部分权重即可。 8.PNG
7.PNG
大拇指根部关节则要把权重画成这样↓
9.PNG
    最后再进行一次Mirror Skin Weights。
    依照这种方法,重绘其他地方的权重,部分位置权重参考如下图。
10.PNG
11.PNG
12.PNG
13.PNG
14.PNG
15.PNG
16.PNG
17.PNG

    好,现在转一下,效果咋样?
    动是能动了,怎么做面部表情啊?
    啊,这就是我们接下来要讲的内容。
    做面部表情的方法有两类。第一类是拷贝头部数次,每个拷贝都做成不同的表情,用Blend Shape实现表情变换。第二类又分为两种:使用Cluster变形器或在脸上建关节点。这三种方式我先前在做囧仙本的时候都试过了,这里先介绍Blend Shape。
    先点人头,按五遍Ctrl+D,移动到另一个地方。Blend Shape,照字面意思,“形状混合”,其实就是通过调整这五个人头的形状的混合比例来控制表情,于是你应该先把这五张脸变形。这里为方便起见,可以考虑使用Soft Select,先选中下图用红框框出的六个按钮中的一个。
20.GIF
    再点Tool Settings,勾选Soft Select调好半径,选好顶点拖吧。结果如下图。
21.GIF
    经本人验证,这五张脸已经足以表现很多表情了,对于新手来说,要做表情动画,这是一个相对可行的方案。这五张脸做好后,选中六张脸,也算上来源,Create Deformers -> Blend Shape。不过,如果你有更高的要求,并且有足够的毅力,你可以尝试一下前面提到的第二类方法了。
    先介绍一下利用关节点的方法。
    用的关节还是和前面一样,但是得先把脸Make Live,然后在脸上加上这些关节。如下图↓
22.GIF
    (剧透:这人就是出现在囧仙本中的drzzm32)
    蒙皮以后,你是绝逼了要绘制权重的,否则的话,你在拖动脸颊部分对应的关节时,你会发现头顶的头皮也有变形,其他面部关节的运动也伴随着头部的畸形,所以必须重画了。因为这教程的内容是不完全开放的,参考权重就不贴了。
    另外一种方法则是用Cluster,它的本质其实和关节是一样的。首先,你要在点选择模式下(选中一个Polygon,按F9),选中Cluster能影响的点,然后Create Deformers -> Cluster。
    如果你是新手,将它作为首选方法可能会让你失去耐心,因为要判断哪些区域能被这个Cluster控制器影响并不是一件容易的事情,往往要经过反复的练习。
    这个教程我就只把Blend Shape讲得详细点就行了,毕竟是不完全开放的嘛
    教练!我还是做不出动画啊!!!
    嘿,别急嘛,接下来就要讲正事儿了。先从最简单的走路的动作讲起吧。
    你应该能理解这一点,我们在走路时,手臂,腿等都在摆动,且角度表达式近似为正弦函数。这次做行走的动画,也是要从表达式角度入手。打开Attribute Editor(它们是右上角从左往右数第一个按钮(不是最小化啦!)。),选中一个属性,点鼠标右键,你会看到其中一个选项是Create New Expression,你可以在那里创建表达式,注意不要选错属性哦!
23.GIF
    首先,把ArmL,ArmR的rotateZ都设置为-65,让手臂垂下来。在这个模型中,走路时手臂的摆动会使rotateY发生变化,因此左右两手臂的rotateY表达式为
    左臂:rotateY=25*sin(frame/4+3);
    右臂:rotateY=25*sin(frame/4);
    当然,顺序是可以颠倒的,不过如此一来,其他部分的表达式相位也得换(相位就是sin()里面加号后面的数字。)。另外,我们在走路时,摆动的也不止是手臂、大腿部分的关节,肘、膝盖、踝部分的关节也在跟着转动。它们的表达式如下。

    左肘:rotateY=10*sin(frame/4+3)+10;
    右肘:rotateY=10*sin(frame/4)+10;
    腰部:rotateZ=3*sin(frame/2)+2;
    右腿:rotateZ=16*sin(frame/4);
    右膝:rotateZ=8*sin(frame/4)+6;
    右踝:rotateZ=12*sin(frame/4-0.4);
    左腿:rotateZ=16*sin(frame/4+3);
    左膝:rotateZ=8*sin(frame/4+3)+6;
    左踝:rotateZ=12*sin(frame/4+0.4);


    诶?那如果是跑步的话表达式应该是什么?    跑步的动作就要比行走复杂多了,上来就试表达式将会是一个非常痛苦的过程。
    接下来我们将要引入两个新名词:关键帧,曲线编辑器。
    关键帧为何物?假定有一个时间轴,长度是100帧,第8帧和第91帧是两个关键帧,第8帧时和第91帧时某点各处于一个坐标处,在将第8帧和第91帧设置为关键帧后,第8帧到91帧之间任意一帧时该点的位置都可以根据这两个关键帧计算出来,至于结果具体是什么,这还要取决于曲线类型——直线,方波或者平滑。而曲线编辑器内你可以看到所有关键帧处某物体的变换曲线,如平移(Translate),旋转(Rotate),缩放(Scale)等,并且可以方便地编辑它们。
    也就是说,我们要依靠设置关键帧来做出跑步运动。那么如何设置关键帧呢?右上角的按钮,从左往右数第一个Attribute  Editor和第三个Channel Box,点击任何一个,选中一个属性(Attribute),如果你是在Attribute Editor里面选中的,右键->Set Key,如果是Channel Box,右键->Key Selected(如果所有属性都要设置关键帧就点Key All)。
    接下来开始吧——先找到下图中指的这个按钮,再找到Time Slider,将播放速度调为30fps。
    跑步动作先做起跑部分。起跑时,首先有一条腿先先前迈进,同时身子向前弯曲。这时先转到SideView,将Femur向前移,然后Femur就不动了,调整姿势至如下图,同时旋转手指关节使其成握拳状,所有被旋转过的关节都要Key。我先预设她左手里握着个圆柱体。
    Pose1.PNG
    Pose1.GIF
    Pose2.GIF
    Pose3.GIF
    Pose4.GIF
    Pose5.GIF
    Pose6.GIF
    Pose1_1.GIF
    Pose2_1.GIF
    Pose3_1.GIF
    Pose4_1.GIF
    Pose5_1.GIF
    之后再按照下图顺序绑定关键帧(不仅要看下面的当前时间,还要看右边的数据)。
    这里有一些不太容易察觉的细节。比如,每次在前面的腿由左腿换右腿时,腰部实际上也在左右旋转,这个角度控制在4°左右是比较合适的。右腿在前时,腰部朝左转。同时在人成跨步姿势时腰部会向前弯曲,悬空时则相对跨步姿势向后旋转,Waist的RotateZ最好是控制在-10°~2.5°内。
    在做到下图中的46帧以后,你就可以复制+粘贴了(假定38~46帧是一个周期),具体怎么做呢?
    在曲线编辑器中,选中RotateX,RotateY,RotateZ,再圈选38~46帧内的点,Edit -> Copy,移动CurrentTime到46帧,Edit -> Paste(Options),TimeOffset设置为8,Copies自己定,总之足够长就可以。
    下面是已经做好的跑步动作↓
    http://pan.baidu.com/s/1gd932ef
    跑步动作在众多动作里面已经算是相对难做的一个了(仅考虑技术难度,不考虑劳动量),如果这个动作能做好,那么其他动作应该也没有大问题了。

Set.GIF

评分

参与人数 1积分 +10 喵玉币 +60 萌度 +120 收起 理由
drzzm32 + 10 + 60 + 120 Good。

查看全部评分

发表于 2015-7-18 21:07:52 | 显示全部楼层
humanIK大法好
回复

使用道具 举报

 楼主| 发表于 2015-7-18 22:09:59 | 显示全部楼层
白雪纹 发表于 2015-7-18 21:07
humanIK大法好

humanIK吗,之前也试过,确实不错。
不过2011以前的版本貌似没这东西,而且我还有点担心速度。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 少女注册中

本版积分规则

合作与事务联系|无图版|手机版|小黑屋|喵玉殿

GMT+8, 2025-10-31 03:40

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表