开启左侧

[教程] 胖僵尸锁链绑定分析与改进

  [复制链接]
本帖最后由 thunderkid 于 2017-9-1 14:39 编辑

在下载了XXO兄弟的锁链绑定文件研究了下,终于发现了其原理所在,同时也发现了其简化方式。原教程链接如下:http://www.cgjoy.com//forum.php?mod=viewthread&tid=194224

fat zombie.png
上面是动图的截图

chain test.png
这是源文件绑定和我的绑定(蓝色)的对比,可见功能是相同的,但我的骨骼链只有一条。

现在简述下原绑定的原理:
1、蒙皮------把锁链蒙皮到28节骨骼上。(这个步骤也可以在骨骼链绑定完成后再做。)
1-skin.png

2、为线条1创建样条线IK控制(注意:线条1应该是与骨骼链分段一致的直线段,图中的线条是我动过控制器了)
2-spline ik.png

3、蒙皮用的骨骼链通过链接约束连接到新的骨骼链上。(由图中可见bone1是链接约束到bone29上的,新骨骼链负责链接传递,其实没有必要用。)
3-link constrain.png

4、为新骨骼链(红色)的每节骨骼添加位置约束和注视约束。
4-position constrain.png

5-look at constrain.png

5、将线条1的虚拟体路径约束到线条2上。(每约束一个虚拟体都要调节其路径百分比来矫正位置,数据栏的红框表示系统自动生成了路径动画帧,却不是我们需要的,把这些帧都删掉。
6-path constrain.png
删掉时间轴上的帧,确保每个虚拟体都没有动画帧。
path key.png

6、为线条2添加样条线IK控制。(线条2的分段数要少些,可在线条1的基础上删掉一些,源文件里只剩下12个控制点)
7-spline ik2.png

通过上述分析可以看到,此绑定的特点的精髓在于通过位置约束和注视约束来将每节骨骼约束到虚拟体上,再通过把虚拟体约束到新的路径上,最后通过操控路径线条的控制虚拟体来间接控制骨骼的运动。最后的路径约束的意义在于减少控制虚拟体的数量,提高操控效率,又不影响骨骼链比例和曲线形态。
       了解了原理,那么上述过程能否简化,或者直接在骨骼链上添加样条线IK控制然后通过虚拟的约束控制来实现目标呢?经过测试,是可以的。看图就知道了:
only spine ik.png
上图中上面的骨骼链是只添加了样条线IK控制的,除了第一个虚拟体外,其它虚拟体的运动都会与骨骼的运动有位移差这是因为此时的骨骼都没有专门的位置约束和方向约束。而下方的骨骼链就是参考了上文中的绑定方法,为骨骼添加位置约束和注视约束后,再为虚拟体添加路径约束的结果。

       仓促成文,如有不足,望见谅。     
补充:
        上述步骤只是完成了锁链的绑定,但是锁链与运动主体(譬如角色)间还缺少连接关系,要实现相互关联,显而易见要把路径线条链接到运动主体上,我测试时把路径链接到一个总虚拟体上,但是光这样做路径上的辅助物体并不会跟随。如图:
only path follow.gif

路径上的辅助物体都要链接给总虚拟体,完成结果如下:
follow body.gif

补充2:关于骨骼旋转的问题
先上图,再说明:
rotation-1-2.gif
可见,即使是双骨骼也无法解决末端旋转问题。

rotation-2-2.gif
双骨骼的唯一优势在于操纵倒数第三个控制器时骨骼不会自转,而单骨骼绑定的拉扯越远反转越彻底,从倒数第四个控制器开始,两种绑定就基本没区别了。到底是否需要这第二条骨骼,希望大佬们指点一二。




点击标签,内容一促即达。

thunderkid
自我介绍空空的,快来写点什么吧~
未设置城市
其他作品 (38)

胖僵尸锁链绑定分析与改进

11004 44 6年前
您需要登录后才可以回帖 登录

全部评论
楼主分享,菜鸡感激不尽。。→_→
6年前 回复
谢谢楼主分享~
6年前 回复
QQ截图20170901101339.png
试了双骨骼绑定,很麻烦!还是简化一点好
6年前 回复
这个也很麻烦的说
6年前 回复
你这种方法绑定好了做动画的时候骨骼会不会不受控制的自己瞎旋转啊,上个帖子他说解决了骨骼瞎旋转的问题。
6年前 回复
资源甚好,且阅且珍惜!
6年前 回复
谢谢楼主分享~
6年前 回复
谢谢楼主分享~
6年前 回复
对啊 我也在想为啥原作者要用2条bone 感觉一条没必要啊
6年前 回复
数据加载中...
没有更多评论了