skeletal:骨骼动画(Skeletal Animation)又叫Bone Animation

骨骼动画(Skeletal Animation)又叫Bone Animation它和关键帧动画(Key-frame Animation)相比占用空间小它不需要象关键帧动画那样要存储每各个顶点数据而是只需要存储每骨骼骨骼和顶点相比当然要少得多所以骨骼动画有很多优势当然其技术难度也很高我个人觉得动画在计算机图形学中是个十分重要内容不管是在游戏、电影动画还是虚拟现实中生动逼真动画(人、动物等)会使的增色不少所以我决定今后研究方向就是计算机动画目前在研究Skeletal Animation这是目前动画技术中主流欢迎同好和我交流共同提高! 骨骼动画实现思路是从我们人身体运动方式而来(所以VR就是对现实世界虚拟嘛 :-))动画人物身体(肉、皮肤)是个网格(Mesh)模型网格内部是个骨架结构当人物骨架运动时身体就会跟着骨架起运动骨架是由定数目骨骼组成层次结构个骨骼排列和连接关系对整个骨架运动有很重要影响个骨骼数据都包含其自身动画数据和每个骨架相关联个“蒙皮”(Skin)模型它提供动画绘制所需要几何模型(Vertex,Normal,etc)和纹理材质信息每个顶点都有相应权值(Weight)这些权值定义了骨骼运动对有关顶点影响因子当把动画人物姿势和全局运动信息作用到骨架上时这个“蒙皮”模型就会跟随骨架起运动

所以关键是对骨架进行动画生成生成思路方法也是用关键帧关键帧动画是对人物网格(Mesh)模型采用关键帧生成动画;而骨骼动画则是对人物骨架采用关键帧生成动画然后再让网格(Mesh)模型跟随骨架运动关键帧动画实现2个关键点是:关键帧选取和中间帧插补

关键帧指定有2种基本思路方法:前向动力学(FK)和逆向动力学(IK)前向动力学用组节点角度来找到末端受动器位置;而逆向动力学则是找到将末端受动器置于所要位置所需组节点角度前向动力学优点是:计算简单运算速度快缺点是:需指定每个关节角度和位置而由于骨架各个节点的间有内在关联性直接指定各关节值很容易产生不自然协调动作;逆向动力学优点是:只需指定主要关节点位置负担轻缺点是:计算模型比较复杂开发者需要机械运动和动力学、几何学以及向量数学等方面相关知识

中间帧插值分2步:(1) 根据当前时间通过插值计算出每个骨骼旋转、平移等值形成中间帧骨架插值算法般采用 4元数(Quternion)球面线性插值(Spherical linear erpolation)SLERPSLERP特别适合在两个方位的间进行插值不会出现像对欧拉角插值那样出现万象锁现象而且这种插值能产生更平滑和连续旋转表达方式也很简洁;(2) 根据骨架变化情况插值计算出骨架“蒙皮”模型各个顶点位置变化对于某个特定骨骼“蒙皮”模型顶点变换矩阵=姿势变换矩阵逆×姿势变换后矩阵另外还要考虑顶点可能受多个骨骼运动影响

Tags:  skeletaltrauma skeletal

延伸阅读

最新评论

发表评论