- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
— PAGE \* Arabic 1 —
Maya骨骼绑定IKFK无缝切换-双向约束法
活了这么多年,在学东西的时候搜过无数教程,什么使用教程,破解教程等等等等,从没自己写过教程,但是今天忍不住也要写一篇了,给广大网友分享下我的Maya学习经验。因为接触时间不长,难免有理解错误或疏漏的地方,还请不要拍砖。 首先,为什么要进行IK和FK的无缝切换?ikHandle1里不是有ikBlend参数么,直接把参数值从1改成0,不就可以实现IK切换到FK了么?嗯嗯,开始我也是这么想的,老师讲IK和FK绑定的时候还觉得好简单,不过等你实际做动画的时候,问题就出现了。你使用IK绑定费老大劲完成了一个动作,结果切换到FK绑定的时候,天哪,骨骼又跑到初始位置去了,于是各种定位各种对齐,然而这不是一件容易的事,因为你不仅要对齐骨骼的位移还有旋转呐!疯了都! 也有网友会说,Maya2013中的HumanIK功能非常强大,干嘛还要自己绑定,不过HumanIK主要是面向两足角色对于四足或多足角色就不适用了。当然也有很多绑定插件可以快速完成。 但是如果自己可以手动绑定,那理解其他插件中的绑定技巧也是很有帮助的。 好,废话说了一堆,现在开始讲如何无缝切换IK到FK,或者FK到IK,即切换的时候,要保证骨骼的位移和旋转参数都保持当前不变,也就是无缝(前提是你已经了解了什么是IK,什么是FK,我这就不细说了。) 目前处理无缝切换的方法有三种: 方法一:通过maya自带的set ikfk key这个命令来转换。(太麻烦!)方法二:三套骨架,一套是ik控制,一套是fk控制,一套用于蒙皮,然后通过属性控制决定约束到ik骨架还是fk骨架。(同样麻烦,而且工作量巨大,不过我也试过,最终可以做出来,提供教程的朋友给了思路也给了代码,但是需要你彻底了解物体的世界坐标系和对象坐标系,否则无论如何你获取的骨骼在世界坐标系中的位移和旋转参数,都无法正确的赋给FK控制器。我试了一天才明白过来,累死!) 方法三:使用单骨骼进行IKFK的切换。(没试过,因为目前还不了解角色功能到底是干嘛使用的。有兴趣的朋友可以点击这里查看http://./doc/508198ce58f5f61fb7366671.html /s/blog_54b08bdb010007x4.html。)方法四:已有双向约束。需要和动画曲线相结合。http://./doc/508198ce58f5f61fb7366671.html /s/blog_71fcab930100qpqw.html 下面是我的IKFK无缝切换思路,简单来说是使用双向约束来定位控制器和骨骼,这样在切换的时候可以保证控制器和骨骼的位移以及旋转始终保持一致。 以手臂骨骼IKFK绑定来说: 1、当FK控制手臂骨骼系统时,即FK方向约束手臂骨骼时,让IK的极向量控制器受定位器的点约束,把定位器P给手臂的肘关节,并让IK控制器受FK手腕控制器的点约束,这样当FK控制器方向发生变化时,可以始终保持IK控制器和IK极向量控制器的位移信息和骨骼一致。 2、当IK控制手臂骨骼系统时,让手臂骨骼控制FK控制器,这样就可以保证FK 控制器的方向始终和骨骼保持一致。同时解除FK手腕控制器对IK控制器的点约束,以及定位器对IK极向量控制器的约束。 怎么样是不是很简单?只需要一套骨骼就可以了! 这里所说的双向约束,其实就是指FK约束骨骼的方向,同时让骨骼也约束FK的方向。并且设定,当FK约束骨骼时,骨骼对FK的约束权重为0,即骨骼对FK的约束不起作用;当骨骼约束FK时,FK对骨骼的约束权重为0,即FK对骨骼的约束不起作用。这样就不会产生冲突了! 现在有一个问题,当FK切换到IK时,骨骼受FK约束所产生的方向变化会重置为初始方向,这样就又回到了我一开始说到的问题,没有做到无缝切换! 那有没有解决办法呢?其实很简单,在动画模块,约束菜单下,有一个“设置静止位置”的功能。(我的Maya版本是2013,其他版本有没有这个功能不是很清楚。)这个功能的作用就是为了防止约束权重变为0时,骨骼又回到初始状态。 这样一来,我们就可以利用此功能,当FK切换到IK时,把骨骼当前的旋转信息定位下来,然后再取消FK对骨骼的方向约束,同时让骨骼对FK的方向约束开始起作用,同样使用该功能,可以把IK控制器和IK极向量控制器的当前位移信息定位下来,然后让IK控制器开始起作用。 IK切换到FK的解决办法也一样,定位所有FK控制器的当前旋转方向,并让IK控制器不起左右,FK控制器起作用就OK了。 看起来很容易实现对不对?可是
原创力文档


文档评论(0)