CN103605774A - 一种顶点动画的数据压缩方法 - Google Patents
一种顶点动画的数据压缩方法 Download PDFInfo
- Publication number
- CN103605774A CN103605774A CN201310619209.1A CN201310619209A CN103605774A CN 103605774 A CN103605774 A CN 103605774A CN 201310619209 A CN201310619209 A CN 201310619209A CN 103605774 A CN103605774 A CN 103605774A
- Authority
- CN
- China
- Prior art keywords
- data
- animation
- frame
- file
- displacement
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/10—Indexing; Addressing; Timing or synchronising; Measuring tape travel
- G11B27/19—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
- G11B27/28—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
- G11B27/30—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on the same track as the main recording
- G11B27/3081—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on the same track as the main recording used signal is a video-frame or a video-field (P.I.P)
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明提出一种顶点动画的数据压缩方法,其首先从磁盘读入动画文件,按特定的数据组织格式保存在内存中,存储的动画文件的文件头包含动画帧数目和顶点数目,而文件数据则包含每帧动画的时间戳以及所有顶点的位移数据,然后逐帧遍历数据,对动画帧的位移数据进行比较分析,其中若一个顶点相邻动画帧的位移数据是相同的,则将重复位移数据剔除,只保存一帧数据,最后将压缩后的动画数据重新写入磁盘。对于顶点数目巨大的动画文件,通过本发明所提出的方法,可以将动画中相对静止的顶点筛选出来,仅保存少量数据即可完成动画。相对于保存顶点所有位置数据,采用本发明所提出的方法可以节省大量的内存、磁盘空间,极大地减少文件I/O操作,最小化对系统性能的影响。
Description
技术领域
本发明涉及一种数据处理方法,尤其是一种顶点动画的数据压缩方法。
背景技术
现有顶点动画通常采用关键帧导出的方式保存帧动画,每一帧保存了该帧的时间戳信息以及所有顶点的位置信息。顶点数目往往数以万计,即使某些顶点在几帧中并未发生位移变化,也会将位置数据导出,从而增加了文件大小。在加载播放动画时,也耗去了不少内存和大量的文件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操作,最小化对系统性能的影响。
以上所述仅为本发明的优先实施方式,只要以基本相同手段实现本发明目的的技术方案都属于本发明的保护范围之内。
Claims (2)
1.一种顶点动画的数据压缩方法,其特征在于,包括以下步骤:
1)数据解析:从磁盘读入动画文件,按特定的数据组织格式保存在内存中,其中动画文件的文件头包含动画帧数目和顶点数目,而文件数据则包含每帧动画的时间戳以及所有顶点的位移数据;
2)数据压缩:逐帧遍历数据,对动画帧的位移数据进行比较分析,其中若一个顶点相邻动画帧的位移数据是相同的,则将重复位移数据剔除,只保存一动画帧的位移数据;
3)数据存盘:将压缩后的动画数据重新写入磁盘。
2.根据权利要求1所述的顶点动画的数据压缩方法,其特征在于,在动画更新时,在某一时刻取所有顶点的位置数据时,遍历该帧数据时,逐个取顶点的位移数据,若有位移则取位移数据,没有则取数据索引中对应帧的位移数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310619209.1A CN103605774A (zh) | 2013-11-29 | 2013-11-29 | 一种顶点动画的数据压缩方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310619209.1A CN103605774A (zh) | 2013-11-29 | 2013-11-29 | 一种顶点动画的数据压缩方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103605774A true CN103605774A (zh) | 2014-02-26 |
Family
ID=50123996
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310619209.1A Pending CN103605774A (zh) | 2013-11-29 | 2013-11-29 | 一种顶点动画的数据压缩方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103605774A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108492338A (zh) * | 2018-02-09 | 2018-09-04 | 腾讯科技(深圳)有限公司 | 动画文件的压缩方法、装置、存储介质和电子装置 |
CN110507986A (zh) * | 2019-08-30 | 2019-11-29 | 网易(杭州)网络有限公司 | 动画信息的处理方法和装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7342580B1 (en) * | 2004-04-02 | 2008-03-11 | Pacific Data Images Llc | Surface compression based on reference geometry in animation models |
CN102227752A (zh) * | 2008-12-09 | 2011-10-26 | 高通股份有限公司 | 使用三维图形硬件的二维图形渲染期间的顶点丢弃 |
CN102881036A (zh) * | 2012-07-30 | 2013-01-16 | 北京中科盘古科技发展有限公司 | 一种动画场景文件压缩的方法 |
-
2013
- 2013-11-29 CN CN201310619209.1A patent/CN103605774A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7342580B1 (en) * | 2004-04-02 | 2008-03-11 | Pacific Data Images Llc | Surface compression based on reference geometry in animation models |
CN102227752A (zh) * | 2008-12-09 | 2011-10-26 | 高通股份有限公司 | 使用三维图形硬件的二维图形渲染期间的顶点丢弃 |
CN102881036A (zh) * | 2012-07-30 | 2013-01-16 | 北京中科盘古科技发展有限公司 | 一种动画场景文件压缩的方法 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108492338A (zh) * | 2018-02-09 | 2018-09-04 | 腾讯科技(深圳)有限公司 | 动画文件的压缩方法、装置、存储介质和电子装置 |
CN110507986A (zh) * | 2019-08-30 | 2019-11-29 | 网易(杭州)网络有限公司 | 动画信息的处理方法和装置 |
CN110507986B (zh) * | 2019-08-30 | 2023-08-22 | 网易(杭州)网络有限公司 | 动画信息的处理方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8225029B2 (en) | Data storage processing method, data searching method and devices thereof | |
CN102402617A (zh) | 一种利用分片及稀疏位图的易压缩数据库索引存储系统及其相应的构建、调度和查询处理方法 | |
CN103019884B (zh) | 基于虚拟机快照的内存页去重方法及装置 | |
CN101916227B (zh) | 一种rldram sio存储器访问控制方法和装置 | |
CN103701469B (zh) | 一种大规模图数据的压缩存储方法 | |
CN103744627A (zh) | 对实时采集的数据压缩存储的方法及系统 | |
US10042873B2 (en) | Data encoding and processing columnar data | |
CN104504116A (zh) | 一种实时数据库的存储方法 | |
CN102880615A (zh) | 一种数据存储方法和装置 | |
CN103021016B (zh) | 一种渲染过程中海量三维地理信息数据处理方法 | |
CN106503008A (zh) | 文件存储方法和装置及文件查询方法和装置 | |
CN103309621B (zh) | 读取分段压缩包中数据的方法 | |
CN104375944B (zh) | 一种数据存储方法和装置 | |
CN107491495A (zh) | 空间属性优先的时空轨迹数据文件在辅助存储设备中的存储方法 | |
CN103605774A (zh) | 一种顶点动画的数据压缩方法 | |
CN103139567A (zh) | 一种图像压缩和解压缩的方法和装置 | |
CN102542041A (zh) | 栅格数据处理方法及系统 | |
CN102629235A (zh) | 一种提高ddr存储器读写速率的方法 | |
CN108182244A (zh) | 一种基于多层次列式存储结构的时序数据存储方法 | |
CN102722456B (zh) | 闪存存储设备的数据写入方法和闪存存储设备 | |
CN104199783A (zh) | Fpga内以太网数据帧的缓存与转发的方法及装置 | |
CN103902228A (zh) | 一种变长数据存取方法 | |
CN103164440A (zh) | 面向虚拟现实的空间数据引擎方法 | |
CN109445693A (zh) | 一种数据压缩方法和装置 | |
CN103744626B (zh) | 一种基于内存替换进行数据写入的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20140226 |