在上一节中已经为角色的手臂制作了IK和FK的无缝切换功能,本节将主要介绍通过编写MEL脚本来实现用单键切换IK和FK的功能。
Step01 打开上一节完成的场景文件“IK/FK无缝切换”,然后打开脚本编辑器,在菜单栏中执行Command>New Tab (命令>新标签)命令,在弹出的窗口中选择MEL,这样脚本编辑器中就创建了一个新的标签。
Step02 继续单击Command>Rename Tab (命令>重命名标签)选项,在弹出的窗口中输入IKFK,如下图(左)所示,将该标签重新命名为IKFK。
Step03 在新标签IKFK中输入如下代码。
int $ikfk= `getAttr R_ IKFK_ crv.IKFK’;
if($ikfk==0)
{
//IK TO FK
float $IK _R_ bi18rx=' getAttr IK_ R_ bi18.rotateX’;
float $IK _R_ bi18ry=' getAttr IK_ R_ bi18.rotateY’;
float $IK _R_ bi18rz=' getAttr IK_ R_ bi18.rotateZ’;
setAttr"FK_ R_ bi19.rotateX" $IK_ R_ bi18rx;
setAttr"FK_ R_ bi19.rotateY" $IK_ R_bi18ry;
setlAtr"FK_ R_ bi19.rotateZ" $IK_ R_bi18rz;
float $IK_ R_ bi15ry=`getAttr IK_ R_ bi15.rotateY;
setAttr"FK_ R_ bi15.rotateY"$IK_ R_ bi15ry;
float $IK_ R_ shou16rx= 'getAttr IK_ R_ shou16.rotateX’;
float $IK_ R_shou16ry= 'getAttr IK_ R_ shou16.rotateY’;
float $IK_ R_ shou16rz= 'getAttr IK_R_ shou16.rotateZ’;
setAttr "FK_ R_shou16.rotateX" $IK_ R_ shou16rx;
setAttr "FK_ R_ shou16.rotateY" $IK_ R_ shou16ry;
setAttr "FK_ R_ shou16.rotateZ" $IK_ R_ shou16rz;
setAttr "R_ IKFK_ _crv.IKFK" 1;
}else
{
//FK TO IK
float $FK_ R shou16[]=` xform -q -ws-t FK_ R_shou16';
xform -ws-t $FK_ R_shou16[0]$FK_ R_shou16[1]$FK_ R_shou16[2]R_ IK_shou_ crv;
float $FK_ R_ shou16ro[]=`xform-q -ws-ro FK_ R_ shou16';
xform -ws -ro $FK_ R_shou16ro[0] $FK_ R_ shou16ro[]$FK_ R_ shou16ro[2]R_IK_ shou_crv;
float $FK_ lot[]= xform -q -ws-t FK_ lot';
xform -ws -t $FK_ lot[0] $FK_ lot[1] $FK_ lot[2] IK_ lot;
setAttr"R_IKFK_crv_IKFK" 0;
}
如下图(右)所示。

Step04 单击“执行”按钮,角色胳膊的IK已经切换成了FK,如下图所示。

Step05 再次执行,FK又切换成了IK,这样就实现了IK/FK的单键切换。
Step06 将该脚本添加到工具架上,并重新命名为IKFK,以便今后使用。
热门课程
专业讲师指导 快速摆脱技能困惑相关文章
多种教程 总有一个适合自己专业问题咨询
你担心的问题,火星帮你解答入职两周当组长主动上调薪资学长开公司招人又是被AI班喜报砸晕的一天
杭州那家九州传媒,不是什么小作坊,此前他们的负责人曾对媒体说过他们有一万余人的招聘缺口,而且最近几个月一直在持续性地疯狂招人 ......
AI短剧备案新规落地AIGC设计师薪资暴涨50AI设计日报0609
广电总局及网信部门明确AI内容标注及备案要求,行业进入规范化发展阶段与此同时,IP+AI的规模化路径也得到验证:阅文集团百部A......
每年这个时候全国都在关注同一件事高考这是这个国家一年一度最盛大的集体奔赴它被反复提起不是
在火星时代,我们见过太多带着这股劲头来的年轻人:有的刚结束高考就来学设计;有的读两年大学发现不对,趁暑假来学UE;还有的工作几......
虚幻引擎交互开发工程师班
影视游戏虚幻美术视效大师班
同学您好!