为什么要用Matrix节点实现约束功能呢?
- 可以简化你的节点之间的层级结构
- 可以提高节点运行效率
实现方式
这里就拿最简单的两个物体来演示,链接方式如下图,如果没有decomposeMatrix节点的话,需要家在MaxtrixNode插件。
首先从cube出发,用它的worldmatrix和multMatrix节点的matrix in相连,然后再用matrix sum和decomposeMatrix的input matrix相连,decomposeMatrix就会根据前面的矩阵来计算对应的旋转和缩放、位移等,然后再将decomposeMatrix的位移和phere的位移相连,旋转和旋转相连,就实现了用matrix约束的功能,效果和Maya自带的父子约束效果一模一样。
这种链接方式的大纲效果如图:
而Maya的约束效果是:
节点链接方式就更加复杂了:
里面还有cycle存在。
这种链接的方式有个好处是即使一个物体的某个轴向被锁定了也是可以约束的,比如动捕的小臂,有的骨骼数据是三个轴向的,而有的rig的小臂又是只有一个轴向,这时如果再约束的话就稍微麻烦点,而用这种方式则不需要任何而外的处理,直接约束就行,到时候我们只保留想要的值。
欲看更多更全更新更美的TD和尚念经,请直闯TD和尚的微信公众号。