[發明專利]一種頂點動畫的數據壓縮方法在審
| 申請號: | 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.szxzyx.cn/pat/books/201310619209.1/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:乒乓球用橡膠
- 下一篇:一種小文件的存取方法、系統及控制節點和存儲節點





