CN103605774A - 一种顶点动画的数据压缩方法 - Google Patents

一种顶点动画的数据压缩方法 Download PDF

Info

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
Application number
CN201310619209.1A
Other languages
English (en)
Inventor
梁波
吴才忠
刘畅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhuhai Kingsoft Online Game Technology Co Ltd
Chengdu Xishanju Interactive Entertainment Technology Co Ltd
Original Assignee
Zhuhai Kingsoft Online Game Technology Co Ltd
Chengdu Xishanju Interactive Entertainment Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zhuhai Kingsoft Online Game Technology Co Ltd, Chengdu Xishanju Interactive Entertainment Technology Co Ltd filed Critical Zhuhai Kingsoft Online Game Technology Co Ltd
Priority to CN201310619209.1A priority Critical patent/CN103605774A/zh
Publication of CN103605774A publication Critical patent/CN103605774A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/19Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
    • G11B27/28Indexing; 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/30Indexing; 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/3081Indexing; 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所述的顶点动画的数据压缩方法,其特征在于,在动画更新时,在某一时刻取所有顶点的位置数据时,遍历该帧数据时,逐个取顶点的位移数据,若有位移则取位移数据,没有则取数据索引中对应帧的位移数据。
CN201310619209.1A 2013-11-29 2013-11-29 一种顶点动画的数据压缩方法 Pending CN103605774A (zh)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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 北京中科盘古科技发展有限公司 一种动画场景文件压缩的方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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