吴少军
摘要:三维角色动作调节是影视动画、游戏动画和新媒体动画制作的核心内容,三维角色采用的骨骼装配和控制技术决定了角色动作调节的难易程度和动作质量,从而影响影视及游戏作品的质量。在Maya角色动画教学中,IK-FK控制技术是最常用的骨骼装配和控制技术。对于高职动漫专业学生而言,掌握Ik-FK技术有一定困难。本文将结合笔者的教学实践,探究针对高职学生特点,采用科学的教学设计,使学生掌握这一技术难题的教学方法。
关键词:Maya角色动画教学;IK-FK无缝切换技术;教学
由于计算机软件技术与硬件技术的迅猛发展,在CG领域与动画制作技术中,三维动画技术应用范围越来越广泛。三维动画技术由于生产成本更低,工作效率更高,艺术表现力更强,因此在动画制作技术中逐渐占据主导地位,而二维动画制作技术则在一些有特殊风格要求的动画领域中继续坚守。在很多优秀的三维动画作品中,动画角色的动作真实自然,准确流畅,除了动画师具有较高艺术素养,对动画运动规律掌握较好,能够熟练运用之外,还与三维软件技术的发展与工具的熟悉程度有关。
现在高校动画专业中一般采用Maya作为动画制作的主要工作软件进行教学,这与业界主要采用Maya作为工作软件是一致的。Maya在处理动画角色的运动控制时,一般都会采用IK-FK进行切换的技术,但学生在使用IK与FK技术时,经常出现角色动作跳动、不平顺的情况。本文将主要对IK与FK技术进行介绍,讲解IK与FK切换的方法,IK与FK在进行切换时会出现角色动作跳动的原因、技术解决方法,以及笔者本人在教学实践中如何通过教学设计减少学生IK-FK控制错误。
1.IK-FK的定义
IK是Inverse Kinematics的缩写,称为反向动力学,而FK是ForwardKinematics的缩写,称为前向动力学。现实世界中的人或动物的骨骼是只能旋转而不能移动的,也就是说我们做任何一个动作,都是由一根或多根骨骼共同旋转完成的。例如,我们打一拳出去,我们直觉以为是拳头或者手腕移动到某个位置完成动作,实则是由我们的前臂和上臂的骨骼共同旋转完成的。在Maya中,这种由骨骼旋转完成的动作的控制方法称为FK,前向动力学。但是由于前向动力学控制不符合我们的直觉,另外在三维软件中用前向动力学控制角色运动有时操作较复杂,所以科学家开发了IK,反向动力学,反向动力学控制虚拟角色时可以直接移动角色的骨骼,如手腕,实现打出一拳这样的动作,它的实质还是由旋转前臂与上臂骨骼完成的,只是在虚拟角色的操作上可以移动手腕直接实现动作。简言之,前向动力学FK是通过旋转完成虚拟角色动作,反向动力学IK是通过移动IK控制器完成虚拟角色动作。
正向动力学与反向动力学技术在动画制作中都会使用到,不同的情况下各有其优缺点与便捷之处。绑定师在骨骼绑定设置时,应让其能够自如地切换,方便动画师进行动作调节。但是一般的正反向动力学切换时,由于两套控制器之间无法直接联系影响,故在正反向动力学切换时,会发生骨骼位置变化,出现角色动作跳动的问题,增加角色动作控制的难度。
2.Maya骨骼绑定时采用的IK与FK控制技术
(1)在IK手柄里通过IKblend属性进行控制,当IKblend为1时,采用IK即前向动力学控制,当IKblend为O时,采用FK即反向动力学控制。这种控制方法简单,但是当IK与FK切换时,会产生明显的角色骨髂移动现象,出现切换前后动作不匹配的情况。
(2)在动画菜单里使用“设置IK/FK关键帧”命令的方式来进行控制,进行这种切换时,骨髂是不会进行移动的,因为这个命令的原理是给IK与FK同时记录关键帧,所以可以平顺切换这两种方式。但这种控制技术操作不方便,因为动画师在进行动作调整时是采用快捷键S的,这种操作需要到菜单里执行命令,显得繁琐,另外在动作修改时也会出现很多问题。
(3)采用Mel控制,Mel是指内嵌于Maya内部的一种命令和脚本语言。Maya的整个界面都是用Mel编写的,Maya中所有的命令都是通过Mel来进行调用的。用Mel来控制IK与FK,主要是通过一些已经编写好的Mel作为插件来对IK与FK进行切换。
(4)采用多套骨髂来进行控制,业界经常采用一种三套骨骼来进行IK与FK切换的方法。具体是一套进行IK绑定,一套采用FK控制,另一套用于进行蒙皮。这种控制方式可以实现IK与FK的平滑过渡。但其主要问题是需要建立三套骨骼,绑定与蒙皮及权重绘制工作量会增大。
3.教学实践中解决IK与FK平滑切换技术难题的教学设计与教学方法
在三维动画的学习过程中,由于绑定技术较为复杂,IK与FK的概念与平滑切换技术高职动漫专业学生接受起来较为吃力。解决问题的方案可以采用绑定插件,但插件一般不能够完全满足动画师的要求,学生学习插件只会让其死记硬背软件的使用,而不能够提升其能力。如果用手动绑定IK-FK的平滑切换系统,工作量较大、复杂且难以掌握。对于IK-FK平滑切换技术,笔者是在动漫多媒体机房采用教学做合一的项目教学法,由于技术复杂,因此我并不纠缠于概念与理论的过多阐述。对于FK,我仅向学生解释,利用骨髂旋转完成动作称为前向动力学FK,并进行一分钟左右的实例演示说明。对于IK,我解释这是一种算法和控制技术,可以利用IK手柄的移动带动骨骼旋转完成动作,并进行实例演示。IK与FK的概念讲解不超过5分钟。我认为在高职教学过程中,教师应具有将较复杂的理论知识和概念用简单语言形象讲述的能力,并尽可能用操作实例使学生固化已有知识。
在教学设计上,Maya中角色骨骼装配这一教学模块需要至少8个课时,我把IK与FK平滑切换技术的讲解置于整个骨骼装配教学过程中,而并不单独设置课时讲解这一技术。IK与FK的切换如上所述至少有4种方式,这4种方式均有其优缺点。我根据学生的情况,决定采用第三种方式,利用Mel进行控制。因为第一、第二种方式的缺点难以避免,第四种方式采用多套骨骼绑定工作量太大。采用Mel进行控制,主要缺点则是动漫专业的学生没有学过编程,对采用Mel进行控制可能会感到困难。我认为高职教学过程中,对一些工具的使用,学生知道如何使用就足够,并不需要把工具制作出来。教学过程中我会把Mel这一段编程语言列出来,并讲解其原理,让有兴趣学习Mel的学生自己去研究。当然其他的控制方法我都采用一两句话提到,扩展学生的知识面。在教学过程中,我把所有的技术讲解都录制成视频,让学生在骨髂装配教学过程中掌握较难的IK-FK平滑切换技术,并能够反复观看视频学习掌握。
本文虽然探究的是一个高职教学实践中的小案例,但我觉得在教学方法和教学设计中体现了一些高职教育思想,值得总结。一是高职教师在教学过程中不应该过多探究理论与概念的来由,但要简单形象地让学生掌握理论与概念的本质。二是教授技术使用的过程中,不要面面俱到,要有所选择与侧重。三是需要提供足够的教学资源,让有余力的学生能够深入学习。