Maya的Fur系列教程之动力学
- 2022-03-02
- 来源/作者: PS.ONEGREEN.ORG / 佚名
- 37 次浏览
动力学篇或许是大家最期待以久的篇章了,今天终于来了。相信看过创建篇和渲染篇还有控制篇的朋友们,你们的Fur基础应该是很扎实了。
不要得意啊,其实那些全都只是基础,真正的应用和高级控制今天才讲到,这篇教程也是我们Fur教程的大结局篇。
金子总是到最后才发光,那Fur呢。如果你前3篇教程还没有看过,极力推荐回去看一下,有必要时可以回去查阅,因为今天我们的学习内容是建立在你前面学习的基础上的。
学习内容:
1 创建动力学吸引器
2 Dynamic chain(动力学链)的结构和组成
3 弹簧部分试验
4 力场部分试验
5 分吹草地***(超实用的动力学草地)
在本篇学习开始前,我必须说明,由于动力学篇的实例文件较大,所以如果你仅仅是浏览网页而不做练习,那你可能一无所获。
本篇的教程和教材全都是经过多人测试的。如果你只是看,而不去做,那很多隐含的精彩内容你将无法感受的。
启
动Maya,我们真的开始了。1 创建动力学吸引器
在Fur的吸引器创建中,程序为我们单独列出了一个选项,那就是Dynamic chain(动力学链)。新建文件……用这个脚本创建场景。确定选择Dynamic chain选项,保证Attractor length大于毛发长度(推荐3),执行Create。
由于是Dynamic chain,我们不能对于IK进行位移的调整。
以上是创建单一的Dynamic chain,下面我们来创建多个Dynamic chain。首先,让我们先删除上面创建的Dynamic chain,如图操作。
[NextPage]
然后,执行select -r nurbsPlane1;HfCreateAttractor;disable -v 0 gridGrp;disable -v 1 followDelayGrp;设置如图。
这是个多么复杂的场景,让我们来隐藏我们现在不想看到的物体吧。
为NURBS打上关键帧,播放动画;你也可以,当然最好执行这段语言来设置。playblast来观看。
我们发现,其实这个动作并不自然,让我们回去调整FurAttractor的差数吧
setAttr "FurDescription1.Scraggle" 0.2;
setAttr "FurDescription1.ScraggleFrequency" 1.5;
setAttr "FurDescription1.Attraction" 0.65;
setAttr "FurAttractors1.AttractorsPerHair" 8
;setAttr "FurAttractors1.Power" 0;
setAttr "FurAttractors1.StartLength" 0.5;
setAttr "FurAttractors1.EndLength" 10;
setAttr "FurAttractors1.ThresholdLength" 0;
差异还是很大的,我们接下来从理论上来了解Dynamic chain,了理论才能掌握Dynamic chain(动力学链)根本。
[NextPage]
2 Dynam
ic chain(动力学链)的结构和组成看到上面的例子你一定想知道Fur受到吸引器运动的原理,下面我们来看看Fur的Dynamic chain的构成吧:
新建文档,用这个脚本创建场景。
选择grid类型用8×8 ,选择Dynamic chain ,执行Create >继续执行Window->OutlinerWindow ,让我们来看清Dynamic chain 的结构吧。
好复杂是吧,我们先来对它做个了解。
在DynamicFurAttractor下面有分别有:
IK,骨骼,复制曲线,曲线,粒子和弹簧。
它们的关联关系是:
弹簧 控制>- 粒子 控制>- 曲线 控制>- 关联的复制曲线 控制>- 骨骼 受控>- IK
也就是说,弹簧是控制的根源,由于弹簧的运动带动粒子的运动,影响了曲线的变化,才导致骨骼的运动和变化。
有点复杂,如果你还没有明白,继续往下看吧。
由上面的理论我们得出结论要想很好的控制Dynamic chain,其关键是选择Dynamic chain中的粒子和弹簧进行编辑。
的确,如果是个更大的场景有上百个粒子和弹簧,那选择将是一件费力不讨好的工作,并且这样的操作很会引起误选和错误。
Maya强大的Mel这时该出场了,让我们用Mel来帮忙吧。你可以直接 运行这个脚本(此脚本为本人原创)。
脚本运行后将在Shelf上多了两个按钮,分别标注为 “Sl_P” 和
“Sl_S” ,[NextPage]
执行“Sl_P”后,将场景内的所有粒子选择,并放在创建标注为“DCPP”的层中,将层模板化;
执行“Sl_S”后,将只显示出场景内的所有弹簧(原始的场景是看不到弹簧的,只有在运动后才会有弹簧显示出来),方便选择。
执行下面的命令为NURBS打上关键帧
playbackOptions -min 0 -max 120;
currentTime 0 ;
select -r nurbsPlane1 ;
setKeyframe ".tz";
setKeyframe ".rx";
currentTime 20 ;
move -r 0 0 -2 ;
rotate -r
20 0 0 ;setKeyframe ".tz";
setKeyframe ".rx";
currentTime 0 ;
modelEditor -e -allObjects 1 modelPanel4;
modelEditor -e -locators 0 modelPanel4;
modelEditor -e -xray 1 modelPanel4;
DisplayShaded;
performPlayblast 3;
播放playblast。
对比……
currentTi
me 0 ;modelEditor -e -allObjects 1 modelPanel4;
modelEditor -e -nurbsCurves 0 modelPanel4;
modelEditor -e -joints 0 modelPanel4;
modelEditor -e -ikHandles 0 modelPanel4;
modelEditor -e -dynamics 0 modelPanel4;
modelEditor -e -grid 0 modelPanel4;
performPlayblast 3;
[NextPage]
3 弹簧部分试验
其实我们上面所作的所有试验,仅仅是告诉大家弹簧和粒子在动力学中的作用,接下来就让我们来点实用的吧,使用这个脚本创建新的场景。最好将这个脚本用中键拖拽到shelf上做个按钮,以便接下来继续使用。选择grid类型用3×12 ,选择Dynamic chain ,执行Create > ,执行Playblast。
调整:
第一步>-
setAttr "FurAttractors1.AttractorsPerHair" 6;
setAttr "FurAttractors1.Power" 0.5;
setAttr "FurAttract << 上一页 [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] ... 下一页 >>