一种骨骼动画运行时优化方法

文档序号:6349457阅读:798来源:国知局
专利名称:一种骨骼动画运行时优化方法
技术领域
本发明涉及计算机图形技术领域,更具体地说,涉及一种骨骼动画更新优化的实现方法。
背景技术
角色动画是计算机动画技术的一个重要组成部分,在计算机辅助动画电影制作和各类广告制作中一直发挥着重要的作用。随着计算机硬件能力的提升和渲染技术的提升,计算机绘制出来的图像越来越逼真,不仅仅在传统的动画上面有进一步的发展,3D动画电影也越来越受到观众的喜爱。现在使用最广泛的关键帧动画就是骨骼动画。在骨骼动画中,动画人物由两个部分来表示一个部分是形成层次的一系列骨胳, 即骨架(skeleton),每一个骨骼数据都包含其自身的动画数据;另一个部分是蒙在骨架上的皮肤(skin),即网格模型,用于提供动画绘制所需要的几何模型和纹理材质信息。通过对骨架进行动画模拟,再利用骨胳控制皮肤变形就实现了角色动画。骨骼动画与关键帧动画相比占用空间较小,因为它不需要存储每一帧的各个顶点的数据,而只需存储每一帧的骨骼(骨骼数量相对较少),并且多个不同的皮肤可以通过使用相同的骨骼共享相同的动画。然而骨骼动画中,所有骨骼都有与之关联的网格模型,模型部件之间的层次结构都必须有真正的几何实体作为依赖基础。然而,由于关键帧动画对于每个关键帧都必须存储所有顶点的位置,因此需要较大的存储空间。而且随着关键帧的数量增多,骨骼动画会变得更加逼真。但是大量的骨骼动画帧的存储虽然可以提到的真实度,但是它不得不受到电脑帧数的制约。所谓帧数,就是程序在单位秒的时间内完成更新的轮回数。理论上说,最逼真的动画就是每一次更新的获得的关键点数据都是美工存储的。但是这个在理论上是不可能实现的。一般来说,美工存储的关键帧数目是以30帧为单位的。这就要求计算机对每一帧的各个骨骼进行更新,对骨骼影响的顶点进行蒙皮。骨骼动画无疑是所欲渲染中最耗费的一个部分。

发明内容
鉴于现有技术存在的问题,本发明提供一种骨骼动画运行时优化方法,其针对当前渲染中的骨骼动画更新耗时的问题,提出了一种在线的帧数提升技术,已达到实现骨骼动画中骨骼更新的零计算,大大提升了渲染的帧数的目的。为了实现上述目的,本发明的技术方案为一种骨骼动画运行时优化方法,其通过运行时的关键帧存储和插值近似技术,大大的提升了骨骼动画的更新速度。他的实现步骤如下(1)按照正常的方式对骨骼动画进行更新;
(2)根据当前设置的偏移阀值,存储插值生成的关键帧到内存中;
(3)在更新过程中,根据当前设置的质量系数,选择对应的关键帧进行近似的骨骼动画更新;
所述步骤2实现的具体细节包括这次存储的关键帧不是最原始的骨骼动画关键帧, 而是通过关键帧计算后各个骨骼在世界坐标下的变换矩阵。通过这种方式,跳过插值计算和骨骼动画的矩阵计算,提高更新效率; 其中,他存储的关键帧要满足公式 当前帧数-原始存储关键帧 <=存储阀值帧数
所述步骤3的实现细节包括在播放骨骼动画的同时,当发现当前播放的动画帧数距离关键帧很小时,就直接跳过插值播放关键帧。在加上步骤2中提供的关键帧为最终结果, 可以跳过原始的骨骼坐标系转世界坐标系的过程。更新条件为 当前帧数-关键帧数 <=质量阀值帧数。该发明的优点在于,采用在线的帧数提升技术,通过牺牲部分的内存,设置存储阀值帧数和质量阀值帧数,解决渲染中的骨骼动画更新耗时的问题,实现骨骼动画中骨骼更新的零计算,大大提升了渲染的帧数,。
具体实施例方式一种骨骼动画运行时优化方法,其通过运行时的关键帧存储和插值近似技术,大大的提升了骨骼动画的更新速度。他的实现步骤如下
(1)按照正常的方式对骨骼动画进行更新;
(2)根据当前设置的偏移阀值,存储插值生成的关键帧到内存中;
(3)在更新过程中,根据当前设置的质量系数,选择对应的关键帧进行近似的骨骼动画更新。所述步骤2实现的具体细节包括这次存储的关键帧不是最原始的骨骼动画关键帧,而是通过关键帧计算后各个骨骼在世界坐标下的变换矩阵。通过这种方式,跳过插值计算和骨骼动画的矩阵计算,提高更新效率;
其中,他存储的关键帧要满足公式 当前帧数-原始存储关键帧 <=存储阀值帧数
所述步骤3的实现细节包括在播放骨骼动画的同时,当发现当前播放的动画帧数距离关键帧很小时,就直接跳过插值播放关键帧。在加上步骤2中提供的关键帧为最终结果, 可以跳过原始的骨骼坐标系转世界坐标系的过程; 其中更新条件为
当前帧数-关键帧数 <=质量阀值帧数。
权利要求
1.一种骨骼动画运行时优化方法,其通过运行时的关键帧存储和插值近似技术,大大的提升了骨骼动画的更新速度;实现步骤如下(1)按照正常的方式对骨骼动画进行更新;(2)根据当前设置的偏移阀值,存储插值生成的关键帧到内存中;(3)在更新过程中,根据当前设置的质量系数,选择对应的关键帧进行近似的骨骼动画更新。
2.根据权利要求1所述的一种骨骼动画运行时优化方法,其特征在于所述步骤2实现的具体细节包括这次存储的关键帧不是最原始的骨骼动画关键帧,而是通过关键帧计算后各个骨骼在世界坐标下的变换矩阵;通过这种方式,跳过插值计算和骨骼动画的矩阵计算,提高更新效率;其中,他存储的关键帧要满足公式当前帧数-原始存储关键帧 <=存储阀值帧数。
3.根据权利要求1所述的一种骨骼动画运行时优化方法,其特征在于所述步骤3的实现细节包括在播放骨骼动画的同时,当发现当前播放的动画帧数距离关键帧很小时,就直接跳过插值播放关键帧;在加上步骤2中提供的关键帧为最终结果,可以跳过原始的骨骼坐标系转世界坐标系的过程;更新条件为当前帧数-关键帧数 <=质量阀值帧数。
全文摘要
本发明涉及计算机图形技术领域,更具体地说,涉及一种骨骼动画更新优化的实现方法。该发明的优点在于,采用在线的帧数提升技术,通过牺牲部分的内存,设置存储阀值帧数和质量阀值帧数,解决渲染中的骨骼动画更新耗时的问题,实现骨骼动画中骨骼更新的零计算,大大提升了渲染的帧数。
文档编号G06T13/20GK102521861SQ201110367460
公开日2012年6月27日 申请日期2011年11月18日 优先权日2011年11月18日
发明者刘慧 申请人:大连兆阳软件科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1