Time offset for particle instance animation in Maya

所以我觉得这应该是一个很基本的功能,动画的instance很自然的想要动作随机一些,不然效果差很多,跟做广播体操似的。上面的视频里设了3个稍微不同的开始时间,懂我意思吧。
因为instancer只是把你加入列表里的虫子模型调整位置显示,无法直接偏移时间,所以思路是copy多个虫子,逐个调整时间后把它们随机附着在粒子上。

对模型的烹饪

如果你的模型很简单,用Trax编辑器就可以,很方便,跳过这一步,和下一步,和这整篇文章.. 我的虫子在生成低模以后还是有两千多个面,低模(重新对vertex烹饪动画)后+trax用作instance仍然画面无比卡,寸步难行。很奇怪的渣算法,我停留在一帧上动动视野都卡的不行,算bug吧。

总之如果你的籽模型比较精美,就降低多边形数(Mesh – Reduce)后对vertex写入动画(Edit – Keys – Bake Simulation 勾选 Control Points)。

对模型动画的时间调整

Trax都不能用的话显然要用比较底层的方法,运气很好试了Bonus Tools里的一个对个体扭曲时间的node (Time Warp Animation) 成功了,如图:

Maya instance animation time offset(3个模型重叠在一起了)对虫子模型使用并且勾选Include Hierachy以后会给模型的每一个点套上时间曲线,然后把玩这条线就可以,把节点【按住shift+拖动】到你需要的地方,还可以玩一些高端play比如我中间加了两个点把某一段加速撸过,相当直观。

后事和一些笔记

把虫子模型加入Instance以后不会自动随机或者顺序使用几个不同的虫子,需要手动加入一个per particle变量以后(比如instanceID=rand(0,3);)然后在particle的instancer设置里择之为object index。

选择timeWarp节点在outliner里显示DAG object,或者直接select timeWarp; 在动画曲线视图里选不了..

可以同时对material套用timeWarp,同时选择timeWarp和material以后勾选Use Existing Timewarp Curve,非常好用,比如我在虫子变化的同时改变它的颜色(VRay Blend Material)。要克隆一个matrial,不要对blend amount的时间曲线套用,没用,直接用在material node上。

好了说完了,看晕就对了。

2 thoughts on “Time offset for particle instance animation in Maya

  1. 我之前做一个东西的时候,也是用粒子替代,考虑到让动画播放有点错桢,想了两种办法,一个就是把动画每桢都bake成一个实体,然后表达式用序号读取,另一个就直接本文说到的这种,不过当时因为镜头的原因,如果直接用原本的动画,某些属性控制就不方便,感谢分享,哈哈

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *