暴雪国际动漫教育
  • 暴雪国际2022招生简章
  • 暴雪国际2022招生简章
  • 暴雪国际2022招生简章
  • 暴雪国际2022招生简章
在线咨询 预约课程 网上报名
Maya建模教程

maya建模教程:谈谈链条的制作方法

编辑:Penny来源:发布时间:2010-06-28

    近来难得有空,给大伙门编个教程。教大家怎样在Maya里做出真实感的链条出来。希望我的Maya培训教程能给大家带来一定参考作用。

    开始我们从最简单的开始做起,慢慢,我就会跟大家逐步深入去探讨更复杂的制作方法,实现更复杂的效果。

    首先,我做的是最基本的动画片效果--------用时间来驱动链条的转动

    准备如下的场景。制作单节的链头。 

 

    假如我们设计的这条链子是由60个链头绞合在一起组成的,那么我们首先就必须要知道这条链子的长度。用Shift+D复制链头和绞头59次。

    从链条的尾端至头端划一条直线。

 

    在Maya的命令输入栏里输入如下命令:

    createNode curveInfo

    Maya会创建一个叫curveInfo的节点,该节点主要就是用于测量曲线长度的。
打开connection Editor,点击connection Editor 右边的Reload。然后选择刚才的直线的Shape节点,Reload进connection Editor的左边。连接直线的World Space到 curveInfo的Input Curve上面。

    选择直线,打开属性编辑器,如下图。

    里面的Arc Length就是这条直线的长度了,没错,就是51.318

    我已经写了一个Mel,只要选择了曲线,运行这个Mel就可以得出曲线的长度,并且显示在通道栏上了。

string $sel[]=`ls -sl`;
string $arcLength=`createNode curveInfo`;
eval ("connectAttr -f "+$sel[0]+".worldSpace[0] "+$arcLength+".inputCurve");
eval ("addAttr -ln arcLength -at double |"+$sel[0]);
eval ("setAttr -e -keyable true |"+$sel[0]+".arcLength");
eval ("connectAttr -f "+$arcLength+".arcLength "+$sel[0]+".arcLength");
select -r $sel[0];

 

    现在划如下的曲线。

 

    想要60个链头刚好配合在这条曲线上,那么这条曲线的长度就必须为51.318,选择曲线,执行刚才的Mel,我们就可以看着通道栏,缩放这条曲线,知道它的长度差不多为51.318为止,其实这样子缩放是很难精确的,但大小0.1都没所谓的。
选择一个链头,Shift选这条曲线,执行如下的Mel:

string $sel[]=`ls -sl`;
string $obj=$sel[0];
string $cur=$sel[1];
float $ib=0;
for ($i=1;$i<=60;$i++)
{
select -r $obj;
string $tempOje[]=`duplicate`;
select -tgl $cur;
string $pathProd=`pathAnimation -fractionMode 1 -follow 1 -followAxis x -upAxis y -worldUpType "object" -worldUpObject locator1`;
selectKey -add -k $pathProd;
cutKey -animation keys -clear;
float $ic=$ib/60;
string $id=$ic;
expression -s ("uValue=fmod(time+"+$id+",1);") -o $pathProd;
$ib=$ib+1;
}

    得到


 

    同样的方法作用到绞头上。


     更多动画制作教程,请关注http://www.0516cg.com/

上一篇:maya建模教程:使用Maya制作鱼的模型

下一篇:maya建模教程:古代门环的制作过程

招生热线   

招生热线:0516-66666888

咨询电话:0516-66666999

快速导航   
学生作品   
在线客服
在线客服系统