Max制作走动着的动画

修改
鏉ユ簮: 上帝宝贝 浏览 6579 日期 2011-09-08 0

朱峰社区评论:本节课使用Max骨骼制作走动的动画,制作游戏动作,为了提高效率,尽量制作最简单而出效果的架设。

接下来开始吧!

打开MAX……

首先,请用鼠标点击这两个按钮~~此主题相关图片如下:这个是就是这一讲的核心,曲线工具,旁边就是配套工具,快速选取骨骼,我一般就把他们两兄弟放到副屏上,就像这样

此主题相关图片如下:

我习惯在下面的那个选择工具把骨骼按照生物形态摆设,方便选择,这样我觉得比加控制器方便。选择相应的骨骼他们的曲线就会显示在上面的曲线编辑器上~~你就可以用曲线编辑器上面的一些功能进行制作~~上下左右平移曲线上的关键帧~~平移关键帧的时候尽量用移动工具下拉后的锁定左右或锁定上下!!!用的比较多的几个是这些此主题相关图片如下:具体用法不懂再问~~~

就像我一直说的,走路或者跑步的LOOP屁股上的动作很重要,再整个运动过程中屁股会完成所有轴向上的位移和旋转,这点一定要注意,因为屁股是中心,会影响 腰部以上和手脚的动作,所以对它的在最开始的认识很重要!!!

还有点在制作走路跑步上很重要的就是第一帧的POSE

此主题相关图片如下:第一帧是左脚或右脚抬起,我习惯右脚~~为什么这样,一是考虑到游戏需要从待机姿势融合到走路,所以要取一个中间的姿势,当然这不是最重要的,最重要的是注意屁股的轴向,也就是图中旋转手柄的轴向,它在红轴 也就是X轴上的旋转正好是零,也就是屁股正对观众,这样就对曲线调节上有帮助,曲线就会清晰明了~~

以下曲线以屁股的为主

[next]

首先 屁股的X轴和腰部对应的曲线比较

此主题相关图片如下:此主题相关图片如下:从曲线上就能看出,整个动画在这个轴上只有4个关键帧 ,这是动画流畅的保证~~在编辑的时候也比较方便

下面是表现脚部从跺地到支撑的时候屁股和腰部的主要曲线变化,也就是屁股的y旋转轴~

屁股

此主题相关图片如下:

腰部

此主题相关图片如下:这里面其实腰部的旋转是和屁股相反的,但是MAX恶心的架设在曲线上看好像是是同样方向的旋转,其实不是~~注意曲线中的突起的部分就是为了模拟脚踩地之后对于胯关节的作用力~~但是一般男性这个曲线值就不太明显,女性一般在走性感步子的时候就要扭的厉害啦!!!

[next]

下面是屁股上下位移时候弯腰动画的曲线 ,这里有个新的知识点 ————曲线偏移

屁股

此主题相关图片如下:

腰部

此主题相关图片如下:上面的旋转都是很关键的部分, 至于位移我就发个曲线,大概看一下,原则就是每个方向都有~~

屁股位移

X轴 上下的位移

此主题相关图片如下:Y轴 前后的位移

此主题相关图片如下:Z轴左右的位移此主题相关图片如下:

上面位移的曲线,可以看出每个曲线上的关键帧都很少,只要能够足够表现在当前轴向上的效果就行了~~

开始脚丫子的曲线讲解~~

首先分析一下腿部和脚部的运动 写实的LOOP其实也是在每个轴向上都有变化的,但是这个角色有点点卡通,所以我只制作了 最关键的3个轴向上的变化,分别是 positon  Y轴(前后位移) positon Z轴(上下位移) 和 rotation Y轴 (脚踝的旋转) 可以说每个走路或跑步的loop 都不可缺少这三个轴向上的变化,至少!!

[next]

下面看曲线(左右脚做比较)

positon  Y轴(前后位移)左脚

此主题相关图片如下:

右脚

此主题相关图片如下:

positon Z轴(上下位移)左脚

此主题相关图片如下:

右脚

此主题相关图片如下:

rotation Y轴 (脚踝的旋转)左脚

此主题相关图片如下:

右脚

此主题相关图片如下:

此主题相关图片如下:

注意帧的间隔,这个我没有做帧的偏移,所以很正~~但是就像前后位移上的帧只有3帧一样,不是每个关键帧都必须在每个轴向上都KEY,这样可以有效的保持动作的流畅,连贯~~

下面是右脚的其他3个轴向的曲线,左脚一样~~在这个动画里面他们完全没有变化,这样制作在用编辑曲线的方法作动画的时候就不会弄乱,我想让它走远点我就平移前后位移的点,向让脚拍地狠一点,我就调解脚踝旋转的曲线,这样做动画就心理有数,不会为了改一点点动作就不得不在每一个关键帧上KEY,而我用曲线作动画,这个行走的LOOP大概一个小时就可以了,并且用曲线的编辑 我还可以衍生出N种不同的走路.

[next]

此主题相关图片如下:

这节课的内容就到这了!希望大家能喜欢,想了解更多的教程请登录:www.zf3d.com

,

评论

{{ username ? username.charAt(0).toUpperCase() : '?' }}
Ctrl+Enter 发布
{{ (c.username || c.author_name || '?').charAt(0).toUpperCase() }}
{{ c.username || c.author_name }} {{ Utils.formatDate(c.created_at) }}