角色动画中ik 与 fk 的转换思路 水晶石陈菁杉

上传人:mg****85 文档编号:34169328 上传时间:2018-02-21 格式:DOC 页数:5 大小:1.49MB
返回 下载 相关 举报
角色动画中ik 与 fk 的转换思路 水晶石陈菁杉_第1页
第1页 / 共5页
角色动画中ik 与 fk 的转换思路 水晶石陈菁杉_第2页
第2页 / 共5页
角色动画中ik 与 fk 的转换思路 水晶石陈菁杉_第3页
第3页 / 共5页
角色动画中ik 与 fk 的转换思路 水晶石陈菁杉_第4页
第4页 / 共5页
角色动画中ik 与 fk 的转换思路 水晶石陈菁杉_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

《角色动画中ik 与 fk 的转换思路 水晶石陈菁杉》由会员分享,可在线阅读,更多相关《角色动画中ik 与 fk 的转换思路 水晶石陈菁杉(5页珍藏版)》请在金锄头文库上搜索。

1、角色动画中 IK 与 FK 的转换水晶石教育陈菁杉做过角色动画的朋友们是否都有这样的经验,到手的角色在四肢上往往有两套控制系统,一个是 IK 控制系统,一个是 FK 控制系统。两种控制系统往往要交互使用才能 KEY出合理的动画,其中 IK 和 FK 转换的问题经常会困扰着我们,这次让我们想想办法,讨论一下角色动画中 IK 与 FK 的转换。为什么有的时候对于我们人类来说最简单不过的上肢动作,动画师却要费劲九牛二虎的力气才能让角色做出来。又或许,让胳膊变个魔术解解大家心中的疑惑。1、 角色动画中为什么要同时存在 IK/FK 两种骨骼控制方式?有些初学的朋友问,这两种方式有区别么?为什么不能直接用

2、其中一种控制方式得了,要是只做一种肯定能省不少力气吧。 (笔者也曾经窃窃这么想过,但是这样偷懒,KEY动画的兄弟姐妹就要拿板砖招呼我了,做 RIGGING 的比起 KEY 动画的在公司里毕竟是少少数派,打架吃亏啊。为了自己还能健康成长,这种懒是偷不得的,切记啊。 )下面就说说角色动画中为什么要同时存在 IK/FK 两种骨骼控制方式。动画在模拟有牵引、拖拽、支撑等动作时使用 IK 会比较方便快捷。比如 俯卧撑、端花瓶、推车等等。但是在处理圆滑柔顺、主动发力的动作时,用 FK更灵活自如。比如手臂骨折时、走路时手臂自然摆动、扇扇子、做早操等等。复杂的角色动画有可能在进行一连串的动作的时候 IK 和

3、FK 之间是要经常转换的,视情况有的时候是从 IK 转换成 FK,有的时候是 FK 转换成 IK。如图 1大家用脚趾头想想,一个走路时手臂老是象扶着玻璃的家伙是多么怪异啊。因此,在为一个角色做 RIGGING 时,常常在手臂和腿部设置上三套骨头(哇塞,进化史上绝无仅有) 。如图 2。 用于绑定的骨骼同时被 IK 骨骼和 FK 骨骼进行旋转约束,当需要 IK 来控制时,就用IK 控制的骨骼约束绑定骨骼,反之也可用 FK 控制的骨骼约束绑定骨骼。看似聪明的办法,也很累人啊,这不仅使做 RIGGING 的同志填加巨大的工作量,同时也为 KEY 动画的兄弟姐妹制造了新的麻烦。2、 IK FK 转换的难

4、点。为什么会有如此大的麻烦呢,咱们先从这两种控制方式的原理说起IK 既反向动力学,是通过.FK 也称正向动力学,.无论我们从其中任何一种控制方式转换成另外一种控制方式的时候,都要求我们把三套(实际是两套)骨骼合并成一套。由于计算方式的不同,我们很难将 IK 和 FK 的骨骼对到一起。就像两队工人隔着大山一起挖洞,如果没有精确的计算的话两队人马是不可能在大山正中间将洞打通的。角色控制也是如此,如果只是近似的将其拼到一起,必然会导致角色在某个瞬间突然的抖动。所以,做动画的同志会有意无意的尽量避免同一段动画中接同时使用 IK 和 FK 控制同一只手臂。迫不得已的情况下只好硬着头皮去对位置了,请相信我

5、,如果不采取一些办法的话,这么做绝对比 90 岁老太太不戴眼睛穿针难的多的多。3、解决思路其实这个问题解决起来也不是很麻烦,我们有很多种方法,但是在 RIGGING 的时候就将这个问题彻底解决是最好的方法。我的方法是安插卧底(卧底?无间道?) ,呵呵,有点顾弄玄虚了,通俗点说就是在IK 和 FK 两套骨骼里面放置对方的复制物体(可以理解为跟踪器) 。例如 IK 的极坐标约束可以复制一个放在 FK 的骨骼里做跟踪器(如图 3) ,平常跟 FK 进行旋转,在需要将 FK 转换成 IK 的时候,第一步 将 FK 末端对 IK 控制器进行位置约束。第二步 将 IK 极坐标约束跟踪器对 IK 极坐标约束

6、进行旋转约束。第三步 将 两个新增加的约束删除,这时候 IK 骨骼就会跟 FK 骨骼重合到一起了。 (如图 4)第四步 我们就可以在这个时候通过修改 IKFK 转换控制器的参数将 FK 的控制转换成 IK 的控制。如果是将 IK 转换成 FK 就更简单了,用 IK 的骨骼把 FK 的控制器旋转约束一下再删除约束就可以了。怎么样很简单吧?有人会敲我的头“简单什么啊,难道要做动画的人每次都依此步骤操作一边吗?多麻烦啊,猪头啊你。 ”4、通过 MEL 帮忙。我说过那只是思路,真正实施起来就不费动画师的什么事了,做 RIGGING 的人早就为你准备好了。因为我们可以用 MEL 帮忙。先前我们做过的每一

7、个步骤都会在 SCRIPT EDITOR 里记录下来, (如图 5)通过整理可以得到一段刚才步骤的 MEL 命令语言。以后我们就利用这几段 MEL 就可以进行 IK 和 FK 的转换了,每到需要的时候执行他就可以得到想要的效果了(本人在执行的时候进行了一定的修改) 。又有人说了“还是不方便啊,你做 RIGGING 可以了,我们还是不方便使用啊。因为那些 MEL 在你机器里,我们哪里找去啊,难道还要我们每人都拷贝一份,放到自己机器里,用的时候再调出来。换台机器还得调一遍。不行,太麻烦了。真是猪头啊你。 ”5、一个 MEL 命令很关键。先不着急,你们不信就看看这个。图 6手旁边有两个 IK FK

8、转换按钮,只需要轻轻一点,就可以迅速进行 IK FK 的转换了,很省力气。其中的奥秘就是在场景文件中我们添加了一个 SCRIPT NODE,在这个 NODE 里包含有我们需要的 MEL 操作。图 7其中的第一句很关键,它是这样写的:int $cvSnapIKFK_scriptJob = scriptJob -kws -cu 1 -e SelectionChanged cvSnapIKFK;它的作用是在我们一旦选择改变了的时候,就会执行一个任务,在这里这个任务是“cvSnapIKFK”;在“cvSnapIKFK”任务中我添加了一个 ELSE IF 判断语句以及先前我们准备好的 IK FK 转换 MEL,一旦我们选择了 SWITH IK FK 那个按钮,电脑就会执行 IK 和 FK 的转换工作。同理,旁边的选择按钮和,恢复按钮都有相似的作用,一旦我们点击或框选它们,就会有相应的命令被执行,节约了动画师的时间,提高效率。他最大的好处就是,MEL 可以跟随 MAYA 场景文件进行保存,不需要额外的添加外部任务,就可以在任何一台电脑中使用,怎么样方便吧?看了这么一大通,就象看了场魔术表演,具体怎么做我还是没教出来。其实这只是工作中的一点总结和应用,方法是多种多样的,不局限这一种,如果对有兴趣又有 MEL 基础的朋友,不妨在我这个思路上发挥,也许有更好的方法。谢谢大家。2007.7.4

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号