[发明专利]一种顶点动画的数据压缩方法在审
申请号: | 201310619209.1 | 申请日: | 2013-11-29 |
公开(公告)号: | CN103605774A | 公开(公告)日: | 2014-02-26 |
发明(设计)人: | 梁波;吴才忠;刘畅 | 申请(专利权)人: | 珠海金山网络游戏科技有限公司;成都西山居互动娱乐科技有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 广州嘉权专利商标事务所有限公司 44205 | 代理人: | 陈国荣 |
地址: | 519000 广东省珠*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 顶点 动画 数据压缩 方法 | ||
技术领域
本发明涉及一种数据处理方法,尤其是一种顶点动画的数据压缩方法。
背景技术
现有顶点动画通常采用关键帧导出的方式保存帧动画,每一帧保存了该帧的时间戳信息以及所有顶点的位置信息。顶点数目往往数以万计,即使某些顶点在几帧中并未发生位移变化,也会将位置数据导出,从而增加了文件大小。在加载播放动画时,也耗去了不少内存和大量的文件I/O操作,影响性能。
发明内容
为了解决现有技术中存在的上述问题,本发明提供一种顶点动画的数据压缩方法,运用此方法可以压缩动画中未发生位移的顶点的数据量,从而降低动画文件大小,改善磁盘占用。
本发明的目的通过以下技术方案实现:
一种顶点动画的数据压缩方法,含有以下步骤:
数据解析:从磁盘读入动画文件,按特定的数据组织格式保存在内存中,存储的动画文件的文件头包含动画帧数目和顶点数目,而文件数据则包含每帧动画的时间戳以及所有顶点的位移数据;
数据压缩:逐帧遍历数据,对动画帧的位移数据进行比较分析,其中若一个顶点相邻动画帧的位移数据是相同的,则将重复位移数据剔除,只保存一帧数据;
数据存盘:将压缩后的动画数据重新写入磁盘。
作为对以上技术方案的进一步改进,在动画更新时,即动画文件的逐帧播放期间,在某一时刻取所有顶点的位置数据时,遍历该帧数据时,逐个取顶点的位移数据,若有位移则取位移数据,没有则取数据索引中对应帧的位移数据。
本发明的有益效果在于:
对于顶点数目巨大的动画文件,通过本方法,可以将动画中相对静止的顶点筛选出来,仅保存少量数据即可完成动画。相对于保存顶点所有位置数据,可以节省大量磁盘空间。
附图说明
本发明的目的、优点和特点,将通过下面优选实施例的非限制性说明进行图示和解释。这些实施例仅是应用本发明技术方案的典型范例,凡采取等同替换或等效变换而形成的技术方案,均落在本发明要求保护的范围之内。这些附图当中:
图1为本发明中顶点动画文件的数据结构;
图2为本发明中顶点动画重复数据的剔除;
图3为本发明中顶点动画压缩后的数据结构;
图4为本发明数据压缩方法的流程图。
具体实施方式
本发明提供一种顶点动画的数据压缩方法,运用此方法可以将原动画数据文件中的重复数据剔除,压缩后存盘成新文件,从而降低文件的磁盘占用,同时也减少文件加载后的内存占用。
根据本发明,系统首先从磁盘读入一个顶点动画文件,并按一定的数据组织格式保存在内存中。具体上讲,存储的动画文件的文件头包含动画帧数目和顶点数目,而文件数据则包含每帧动画的时间戳以及所有顶点的位移数据,如图1所示,该动画有M个顶点和N个帧。
然后,系统逐帧遍历数据,对动画顶点相邻动画帧的位移数据进行比较。其中,若一个顶点相邻动画帧的位移数据是相同的,则保存一帧数据即可,将重复位移数据剔除。具体如图2所示,其中顶点2第1到第N帧的位移数据是相同的,则保留第1帧,顶点3第2到第N帧的位移数据是相同的,则保留第2帧,顶点M第2和第3帧的位移数据是相同的,则保留第2帧。
当动画更新时,在某一时刻取所有顶点的位置数据时,遍历该帧数据时,逐个取顶点的位移数据,若有位移则取位移数据,没有则取数据索引(DataIndex)中对应帧的位移数据,如图3所示。其中,对于DataIndex,当某一帧(比如第N帧)某一个顶点的位移数据与之前1~N帧的位移数据某一帧(比如第M帧)相同,则DataIndex的值即为M,只需要存储这个M数值即可,不需要再另存位移数据了,达到数据压缩的目的。
此步骤核心点就是取某一帧顶点位移数据时,先判断是否有DataIndex,有就直接引用DataIndex对应的位移数据,没有则走正常流程,取该帧该顶点的位移数据。
最后,将压缩后的数据重新写入磁盘保存。整个过程如图4所示。
对于顶点数目巨大的动画文件,通过本方法,可以将动画中相对静止的顶点筛选出来,仅保存少量数据即可完成动画。相对于保存顶点所有位置数据,可以节省大量的内存、磁盘空间,极大地减少文件I/O操作,最小化对系统性能的影响。
以上所述仅为本发明的优先实施方式,只要以基本相同手段实现本发明目的的技术方案都属于本发明的保护范围之内。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于珠海金山网络游戏科技有限公司;成都西山居互动娱乐科技有限公司,未经珠海金山网络游戏科技有限公司;成都西山居互动娱乐科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310619209.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:乒乓球用橡胶
- 下一篇:一种小文件的存取方法、系统及控制节点和存储节点