【微答】houdini16中如何实现maya的晶格路径变形动画

——  微资讯 · 微课程  ——

利用零碎时间,走上超神之路!


今天在CG猎人vip资源群中有同学问道如何在houdini中实现maya的晶格路径形变动画,比如蛇或者鱼之类的沿着路径运动且和路径一起发生形变。这个在maya中非常容易实现,也就是晶格+路径动画,2个命令的事情,而在houdini中实现却比较麻烦。同时也很惊讶这么常用的效果竟然没有看到houdini有类似的教程?

效果

工程文件在vip群共享中,vip群加入条件请查看下面链接

【VIP】CG猎人VIP+CG猎人Q群建立


核心技术:使用wirecapture线绑定和wiredeform线变形技术

1模型准备

这个简单的模型设置,也可以使用一个tube进行设置,需要注意的是1选择一个正方向,这里选择的X轴,2横截面细分一定要够,否则就不能沿着曲线进行变形,相信这个很好理解

2使用线绑定

01这个类似与骨骼绑定原理,使用线充当骨骼。理论上使用多边形线和nurbs线都是可以的,但是为了平滑效果和后面的比例求值需求,这里统一使用nurbs线。

02创建直线,让直线穿过物体,保持与物体长度一直(可以稍微长一点)

03添加basis节点,选择参数化效果为approximate arc length,这个步骤的原因是nurbs线和模型的uv并不是平均分配的,添加了这个节点可以让nurbs线分配更加平均。

04添加measure节点,测量出这个线的长度,获得prim属性perimeter,存储了这条线的长度(而这个长度其实是由模型长度决定的)

05使用wirecapture节点,左边链接输入物体,右边链接处理好的直线。参数设置

min/max weight 权重都是设置为1

uRaidus为捕捉半径,要确保能够包含了模型的所有部分,在视图中可以看到蓝色范围

3曲线路径变形

01绘制运动曲线路径→biasis→measure测量出长度,这些和line的做法一致。

02添加attributewragnle节点,在detail层级创建属性length,使用line中的perimeter长度值/curve的长度值,获得line在curve中的比例(这一步是最核心和重点的的步骤)

03添加wiredeform节点,三个输入口分辨链接

1物体2line直线3curve路径

wiredeform中的参数设置

parameter标签下

blending混合模式修改weight权重模式

tension张力修改为0

deform标签下

U Deform 进行动画设置,比如从1-240帧设置为0-1的动画,把第一个值关联到第二个输入框中,并且+detail("../attriwrangle2","length",0)反问刚才创建的length属性比例值。

解释:

这一步应该是难理解的地方了,其实原理很简单,线的uv只有u向上才有值,并且是0-1的值,那么无论曲线多长,只要设置0-1的变化,那么一定会从线的头部走到尾部;这就是第一个框k动画的原理。

而第二个框的原理就是保留line的长度,类似与line跟着曲线滑动,当时它自身也有长度,而这个长度比例就是之前设置的length中的比例(line的长度除以curve的长度),但是最终结果也是0-1的范围,这就是为什么最后模型会被压缩,实际上是因为line被压缩了,而line是控制模型的。

重点总结

其实这个wirederom和pointdeform还有lattic节点的原理是一样的,用一个简单的变形比如点和线控制要给复杂的模型。houdini没什么神秘的地方,祝大家活学活用。

欢迎加入CG猎人VIP群,共同加速学习

【VIP】CG猎人VIP+CG猎人Q群建立


CG猎人(Hunter_CG)专注于CG微资讯与微课程的分享(10分钟以内)。让广大CG爱好者与从业人员能够利用零散时间了解最新最具前景的资讯,了解国际技术发展动向与前沿市场动向。提供精挑细选实用微课程,从入门到高级循序渐进。通过知识总结与分享,共同进步。

分享教程和学习笔记,同时设计maya,3dsmax,softimage,houdini,cinema4D blender,modo和lightwave等常用三维软件,也包含reallow,naaid专门制作特效的三维软件;包含fumefx,rayfire,karakato和thinkingparticles等插件教程和学习笔记。


—— CG猎人——

微信号:Hunter_CG

QQ-540710114

为您提供最具前景的资讯与最适合的分类技术与学习教程

(0)

相关推荐