Houdini 音乐驱动模型动画2笔记

wh_bn 发表于 2021/12/15 23:07:51 2021/12/15
【摘要】 1.实现的效果,通过多通道分别控制各圆柱的高低 2.准备声音文件,注,音乐文件及文件属性中不能有中文 3.受驱动物体的建立 建立line对象,使线条方向朝X轴正方向,为了让线条的中心点居于线条的中心使用属性绑定 ch("/obj/geo1/line1/dist")*-0.5 ...

1.实现的效果,通过多通道分别控制各圆柱的高低



2.准备声音文件,注,音乐文件及文件属性中不能有中文


3.受驱动物体的建立

建立line对象,使线条方向朝X轴正方向,为了让线条的中心点居于线条的中心使用属性绑定

ch("/obj/geo1/line1/dist")*-0.5
  



建立tube,让tube的中心点位于tube的底部

ch("/obj/geo1/tube1/height")*.5
  



通过copy节点拷贝到线条的点上,再通过表达式,使tube的半径贴在一起

1)使rad2的值参考撕1的值,所以在rad2中写入表达式
ch("/obj/geo1/tube1/rad1")
  
2)rad1的值通过线的点数与线的长度计算出来 :
半径=线长度/(线点总数-1)*0.5
ch("../line1/dist")/(ch("../line1/points")-1)*+0.5
  



4.音频文件的导入,详见上一篇笔记

在pitch节点中,pitch divisions的值与圆柱个数一致,即与线的点数一致
ch("../../line1/points")
  
空格+H,最大化显示音频数据

增加lag节点以及filter节点,对曲线做平滑处理



增加rename节点,对通道进行重命名
增加null节点,进行输出,对节点进行重命名“out_music”

5.传入音频数据

回到geo级别下,line1下增加节点“attribcreate1”,注:Local Variable中的数据必须全部大写


在attribcreate1节点下增加channel节点
CHOP选择处理好的数据节点out_music
Channel Scope,写入music
Attribute Scope,写入此节点为的父节点中定义的变量名字,(注:统一小写,上面的Name中tubeHeight改为tubeheight)


Details View面板中可以看到tubeheight属性的值,播放动画,看到其值在不断变化,说明音频数据传入正常



6.将音频数据与圆柱的height值进行绑定


copy1开启stamp,增加variable
cur_h 值$TUBEHEIGHT

tube中height中写入表达式
stamp("../copy1","cur_h",2)
  

如果绑定成功,在视窗中会马上显示出来



如果音频数据值为0那么圆柱的高度就为0,圆片不好看,为其添加一个初始值
out_music节点之前增加“math”节点,

7.为圆柱增加渐变


copy1下增加uvproject节点,uf调成如下图所示


增加vopsop节点,双击进去
1)需要导入属性"importattrib1"节点作为UV数据,Attribute值为“uv”
2)UV是一种矢量型数据,这里只需要它的V方向数据,所以从第二个节点导出
3)V方向数据导入到渐变ramp1节点中,而渐变节点的数据作用对象为输出对象的颜色“Point Color Attribute”

整个的数据流程如下图所示


完成上面的操作之后,回到VOPSOP属性面板,可以看到渐变的显示,调一个渐变颜色观察效果


但是,因为圆柱横向分段数少的缘故,所以看到在同一高度显示的渐变效果不一致

增加圆柱的分段个数
如果给一个给定的分段值,如10或20,那么对于很低的圆柱它不需要这么多的分段,为了优化,使用圆柱的高度对分段数进行控制

tube1属性中Detail面板下,Rows中写入表达式

floor(ch("../tube1/height"))
  

再观看效果


笔记结束!

文章来源: blog.csdn.net,作者:fengda2870,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/fengda2870/article/details/8845712

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件至:cloudbbs@huaweicloud.com进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容。
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。