【教程】houdini 破碎的艺术 第一季05木头破碎动力学制作II约束优化
从这周开始会更新一个破碎的系列教程:一共有两季,包含了30多套教程,基本上包含了破碎的各个方面,学完这套教程可以对RBD基本上各个方面都有所了解,特别是各种约束,各种使用方法,各种破碎的效,而且课程简洁明朗,是CG猎人强烈推荐的那种教程!
视频教程
学习笔记
设置hard constrain relationship
回到goe中,这时候设置的是木块之间的弹性约束(hard constrain)
assemble是为primitive面添加了name属性,使用promote节点转化为点属性
scatter撒点,并且继承了name属性
添加connect adjacent piece,选择模式为点链接模型。对adjacent piece节点内部进行编辑
直接把connect neraby points链接到入口,把右边红框中的部分删除(因为transfer name to point会报错)我们已经手动转化过了
使用primitive进行缩放,把所有的primitive线在体积上缩小为0,但是他们实际上还是线(primitive)
使用wrangle节点添加属性
最后merge到之前的OUT_con中
在dopnet中添加hard constraint relationship
这时候木块之间就会有碎块弹性关联效果,后面需要依据条件移除
设置条件,在木块倒下的时候删除约束物体,添加sop sovler
进入内部,找到relationship geometry节点(因为要对relationship模型进行删除处理)
添加wrangle节点进行条件判定
这里要找到relationship中的geometry的两个属性
@angle(float)
@torque(vector)
当发生碰撞的时候这两个值会有大小变化
当发生碰撞的时候
angle的值和torque.x的值会数值变化
基于这两个条件我们可以设置
如果满足 @angle大于0.45或者torque.x大于135011的值,那么就把这个约束模型删除;
这两个值要反复更具解算参数进行调整,以达到先要的破碎效果
同时,小球和木板的密度(质量)也非常重要,还有小球的初始速度