骨骼动画是三维动画中的主要动画方法。与其他三维动画方法相比,骨骼动画具有明显的优势。制作简单科学,尤其是制作游戏动画时,可以让引擎获得流畅的动作效果。
1、骨骼动画的概念
我们通常所说的3D动画主要是指两种动画方式:顶点动画和骨骼动画。这两种动画方法都是针对模型的动画。在顶点动画中,动画的每一帧实际上都是模型特定姿态的“快照”。帧间插值可以使引擎获得平滑的动画效果。骨骼动画是一种使用“骨骼”来驱动模型的动画,而不是手动编辑和移动每个模型顶点。在骨骼动画中,每个模型的顶点都将附着到骨骼上。当骨骼移动时,附着在骨骼上的每个顶点也会移动,如图所示。而且,骨骼本身的运动也会导致其他骨骼的运动,类似于现实生活中身体运动的原理,让模型的运动更加合适合理。
模型的顶点附着在骨骼上。
2.骨骼动画的重要性
骨骼动画相对于传统的顶点动画有很多优势,在游戏动画中扮演着重要且明显的角色。
首先,玩家对游戏最基本的要求是直觉和现实。然而,基于骨骼运动的角色在这方面无疑更有优势。在传统的关键帧角色动画中,引擎会在两个位置之间执行线性插值来完成角色的动作。但是,在这种情况下,关节实际上不会旋转,这使得角色的旋转看起来不自然。同时,动画过程是否占用较少的存储空间,对于程序员来说也是非常重要的。定点动画需要为每一帧动画存储一组新的顶点运动信息,而骨骼动画只存储骨骼的旋转和平移信息以及顶点附着在骨骼上的信息。这样可以节省巨大的存储空间,也可以用来改进游戏的其他部分,比如增加更多的游戏细节,提高游戏的AI,让游戏更加精彩。
其次,骨骼动画对于创作3D游戏动画的设计师来说更容易。一个好的骨骼动画系统会减少动画师做模型动画的时间,几乎每一个好的动画程序都用骨骼动画来保证模型运动的过程。同时,当骨骼动画的模型导入到游戏编辑器的使用格式中时,动画或特征的失真也较少发生。
最后,由于骨骼的自由,程序员可以实时随意定位,并在运行时创建动画。有了这一点,就有可能在游戏中当身体接触到一个物体或滑下斜坡时控制移动。这使得角色和模型在游戏环境中真实互动,大大提高了游戏的享受感和趣味性。