CN104732574A - 一种角色游戏的压缩装置及装置 - Google Patents

一种角色游戏的压缩装置及装置 Download PDF

Info

Publication number
CN104732574A
CN104732574A CN201410849750.6A CN201410849750A CN104732574A CN 104732574 A CN104732574 A CN 104732574A CN 201410849750 A CN201410849750 A CN 201410849750A CN 104732574 A CN104732574 A CN 104732574A
Authority
CN
China
Prior art keywords
increment
data
type
component
data increment
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.)
Granted
Application number
CN201410849750.6A
Other languages
English (en)
Other versions
CN104732574B (zh
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.)
Beijing Pixel Software Technology Co Ltd
Original Assignee
Beijing Pixel Software 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 Beijing Pixel Software Technology Co Ltd filed Critical Beijing Pixel Software Technology Co Ltd
Priority to CN201410849750.6A priority Critical patent/CN104732574B/zh
Publication of CN104732574A publication Critical patent/CN104732574A/zh
Application granted granted Critical
Publication of CN104732574B publication Critical patent/CN104732574B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Processing Or Creating Images (AREA)

Abstract

本发明实施例公开了一种角色动画的压缩方法及装置,所述方法包括:分别采集当前帧的各个骨骼数据相对于上一帧各个骨骼数据的数据增量;转换数据增量的类型,以压缩所述数据增量。通过本发明实施例公开了一种角色动画的压缩方法及装置,可以降低角色关键帧动画游戏占用的移动终端内存。

Description

一种角色游戏的压缩装置及装置
技术领域
本发明实施例涉及数据处理技术领域,尤其涉及一种角色游戏的压缩方法及装置。
背景技术
随着科技的发展,移动终端的游戏功能越来越强大,不在是“俄罗斯方块”和“贪吃蛇”之类画面简陋、规则简单的游戏,而是具有很强的娱乐性和交互性的角色关键帧动画游戏。
对于角色关键帧动画游戏而言,游戏角色由很多块骨骼组成,每一帧中每个骨骼都对应一组骨骼关键帧位置数据和骨骼关键帧旋转数据。为在移动终端上还原游戏角色,需要在移动终端的存储空间存储游戏角色的骨骼数量以及每个骨骼对应的骨骼关键帧位置数据和骨骼关键帧旋转数据。
但是移动终端的存储空间有限,角色关键帧动画游戏占用存储空间较大时。
发明内容
本发明提供一种角色动画的压缩方法及装置,以实现解决角色关键帧动画游戏占用存储空间较大的问题。
一方面,本发明实施例提供了一种角色动画的压缩方法,包括:
分别采集当前帧的各个骨骼数据相对于上一帧各个骨骼数据的数据增量;
转换所述数据增量的类型,以压缩所述数据增量。
优选地,所述转换所述数据增量的类型,以压缩所述数据增量包括:
将所述数据增量的类型由单精度浮点型float类型转换为短整型short类型,以压缩所述数据增量。
优选地,所述float类型为32位,所述short类型为16位。
优选地,在所述转换所述数据增量的类型,以压缩所述数据增量之后,还包括:
将转换后的数据增量压缩为Zip格式,以压缩所述转换后的数据增量。
优选地,所述数据增量包括:骨骼关键帧旋转增量和骨骼关键帧平移数据增量;
所述骨骼关键帧旋转增量包括:四元数x分量的增量、四元数y分量的增量、四元数z分量的增量和四元数w分量的增量;
骨骼关键帧平移数据增量包括:平移x分量增量、平移y分量增量和平移z分量增量。
另一方面,本发明实施例提供了一种角色动画的压缩装置,包括:
数据增量采集模块,用于分别采集当前帧的各个骨骼数据相对于上一帧各个骨骼数据的数据增量;
第一压缩模块,用于转换所述数据增量的类型,以压缩所述数据增量。
优选地,所述第一压缩模块具体用于,将所述数据增量的类型由单精度浮点型float类型转换为短整型short类型,以压缩所述数据增量。
优选地,所述float类型为32位,所述short类型为16位。
优选地,所述装置还包括:第二压缩模块,用于将转换后的数据增量压缩为Zip格式,以压缩所述转换后的数据增量。
优选地,所述数据增量包括:骨骼关键帧旋转增量和骨骼关键帧平移数据增量;
所述骨骼关键帧旋转增量包括:四元数x分量的增量、四元数y分量的增量、四元数z分量的增量和四元数w分量的增量;
骨骼关键帧平移数据增量包括:平移x分量增量、平移y分量增量和平移z分量增量。
通过本发明实施例公开了一种角色动画的压缩方法及装置,可以降低角色关键帧动画游戏占用的移动终端内存。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例中的一种角色动画的压缩方法的流程示意图;
图2为本发明实施例提供的关键帧数据存储示意图;
图3是本发明实施例中的一种角色动画的压缩方法的流程示意图;
图4是本发明实施例中的一种角色动画的压缩装置的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
本发明实施例提供了一种角色动画的压缩方法,适用于压缩角色关键帧动画游戏的情况下,如图1所示,具体包括以下步骤:
步骤S101,分别采集当前帧的各个骨骼数据相对于上一帧各个骨骼数据的数据增量。
在步骤S101中,由于关键帧动画具有连续性,由上一帧中的骨骼位置移动至当前帧中的骨骼位置过程中产生的动作,可以看做是当前帧骨骼动作与上一帧骨骼动作之间的相对动作增量。上一帧骨骼动作叠加相对动作增量就可以获得当前骨骼动作。因此,分别采集当前帧的各个骨骼数据相对于上一帧各个骨骼数据的数据增量,存储上一帧各个骨骼数据和数据增量既可以获得当前帧的各个骨骼数据。数据增量占用的内容相对于当前帧的各个骨骼数据较小,因此,可以降低角色关键帧动画游戏占用的移动终端内存。数据增量可以包括:骨骼关键帧旋转增量和骨骼关键帧平移数据增量;骨骼关键帧旋转增量可以包括:四元数x分量的增量、四元数y分量的增量、四元数z分量的增量和四元数w分量的增量;骨骼关键帧平移数据增量可以包括:平移x分量增量、平移y分量增量和平移z分量增量。
步骤S102,转换数据增量的类型,以压缩数据增量。
在步骤S102中,可以将数据增量的类型由单精度浮点型短整型float类型为short类型,以压缩数据增量。在C++中,单精度浮点型float专指占用32位存储空间的单精度(single-precision)值。由于float类型为32位,short类型为16位。short类型在移动终端上比float类型处理速度更快而且只占用float类型一半的空间。
通过本发明实施例公开了一种角色动画的压缩方法,可以降低角色关键帧动画 游戏占用的移动终端内存。
图2为本发明实施例提供的关键帧数据存储示意图。
在内存中存储了采样率、周期、骨骼数量、总帧数、骨骼数据1和骨骼数据2。在骨骼数据1中存储了骨骼ID、关键帧位置总数、关键帧旋转总数。骨骼数据2包括了其中一个骨骼的骨骼关键帧旋转数据和骨骼关键帧平移数据;骨骼关键帧旋转数据包括了四元数x分量集合、四元数y分量集合、四元数z分量集合和四元数w分量集合;骼关键帧平移数据增量可以包括:平移x分量集合、平移y分量集合和平移z分量集合。
实施例二
本发明实施例在上述实施例的基础上提供了一种角色动画的压缩方法,如图3所示,包括:
步骤S301,分别采集当前帧的各个骨骼数据相对于上一帧各个骨骼数据的数据增量。
步骤S302,转换数据增量的类型,以压缩数据增量。
步骤S303,将转换后的数据增量压缩为Zip格式,以压缩转换后的数据增量。
在步骤S303中,可以使用WinRAR压缩软件,将转换后的数据增量压缩为Zip格式,若转换后的数据增量为二进制代码,WinRAR压缩软件可以将二进制代码压缩,把相邻的0,1代码减少,比如有000000,可以把它变成6个0的写法60,来减少转换后的数据增量占用的内存。
通过本发明实施例公开了一种角色动画的压缩方法,可以降低角色关键帧动画游戏占用的移动终端内存。
实施例三
本发明实施例提供了一种角色动画的压缩装置,如图4所示,该装置具体包括:数据增量采集模块41和第一压缩模块42。
其中,数据增量采集模块41,用于分别采集当前帧的各个骨骼数据相对于上一帧各个骨骼数据的数据增量;第一压缩模块,用于转换数据增量的类型,以压缩数据增量。
在数据增量采集模块41中,由于关键帧动画具有连续性,由上一帧中的骨骼位置移动至当前帧中的骨骼位置过程中产生的动作,可以看做是当前帧骨骼动作与上一帧骨骼动作之间的相对动作增量。上一帧骨骼动作叠加相对动作增量就可以获得当前骨骼动作。因此,分别采集当前帧的各个骨骼数据相对于上一帧各个骨骼数据的数据增量,存储上一帧各个骨骼数据和数据增量既可以获得当前帧的各个骨骼数据。数据增量占用的内容相对于当前帧的各个骨骼数据较小,因此,可以降低角色关键帧动画游戏占用的移动终端内存。数据增量可以包括:骨骼关键帧旋转增量和骨骼关键帧平移数据增量;骨骼关键帧旋转增量可以包括:四元数x分量的增量、四元数y分量的增量、四元数z分量的增量和四元数w分量的增量;骨骼关键帧平移数据增量可以包括:平移x分量增量、平移y分量增量和平移z分量增量。
在第一压缩模块42中,可以将数据增量的类型由单精度浮点型短整型float类型为short类型,以压缩数据增量。在C++中,单精度浮点型float专指占用32位存储空间的单精度(single-precision)值。由于float类型为32位,short类型为16位。short类型在移动终端上比float类型处理速度更快而且只占用float类型一半的空间。
通过本发明实施例公开了一种角色动画的压缩装置,可以降低角色关键帧动画游戏占用的移动终端内存。
本发明提供一较优实施例角色动画的压缩装置还包括:第二压缩模块,用于将转换后的数据增量压缩为Zip格式,以压缩转换后的数据增量。
可以使用WinRAR压缩软件,将转换后的数据增量压缩为Zip格式,若转换后的数据增量为二进制代码,WinRAR压缩软件可以将二进制代码压缩,把相邻的0,1代码减少,比如有000000,可以把它变成6个0的写法60,来减少转换后的数据增量占用的内存。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (10)

1.一种角色动画的压缩方法,其特征在于,包括:
分别采集当前帧的各个骨骼数据相对于上一帧各个骨骼数据的数据增量;
转换所述数据增量的类型,以压缩所述数据增量。
2.根据权利要求1所述的方法,其特征在于,所述转换所述数据增量的类型,以压缩所述数据增量包括:
将所述数据增量的类型由单精度浮点型float类型转换为短整型short类型,以压缩所述数据增量。
3.根据权利要求2所述的方法,其特征在于,所述float类型为32位,所述short类型为16位。
4.根据权利要求1所述的方法,其特征在于,在所述转换所述数据增量的类型,以压缩所述数据增量之后,还包括:
将转换后的数据增量压缩为Zip格式,以压缩所述转换后的数据增量。
5.根据权利要求1所述的方法,其特征在于,所述数据增量包括:骨骼关键帧旋转增量和骨骼关键帧平移数据增量;
所述骨骼关键帧旋转增量包括:四元数x分量的增量、四元数y分量的增量、四元数z分量的增量和四元数w分量的增量;
骨骼关键帧平移数据增量包括:平移x分量增量、平移y分量增量和平移z分量增量。
6.一种角色动画的压缩装置,其特征在于,包括:
数据增量采集模块,用于分别采集当前帧的各个骨骼数据相对于上一帧各个骨骼数据的数据增量;
第一压缩模块,用于转换所述数据增量的类型,以压缩所述数据增量。
7.根据权利要求6所述的装置,其特征在于,所述第一压缩模块具体用于,将所述数据增量的类型由单精度浮点型float类型转换为短整型short类型,以压缩所述数据增量。
8.根据权利要求7所述的装置,其特征在于,所述float类型为32位,所述short类型为16位。
9.根据权利要求6所述的装置,其特征在于,还包括:第二压缩模块,用于将转换后的数据增量压缩为Zip格式,以压缩所述转换后的数据增量。
10.根据权利要求6所述的装置,其特征在于,所述数据增量包括:骨骼关键帧旋转增量和骨骼关键帧平移数据增量;
所述骨骼关键帧旋转增量包括:四元数x分量的增量、四元数y分量的增量、四元数z分量的增量和四元数w分量的增量;
骨骼关键帧平移数据增量包括:平移x分量增量、平移y分量增量和平移z分量增量。
CN201410849750.6A 2014-12-30 2014-12-30 一种角色游戏的压缩方法及装置 Active CN104732574B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410849750.6A CN104732574B (zh) 2014-12-30 2014-12-30 一种角色游戏的压缩方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410849750.6A CN104732574B (zh) 2014-12-30 2014-12-30 一种角色游戏的压缩方法及装置

Publications (2)

Publication Number Publication Date
CN104732574A true CN104732574A (zh) 2015-06-24
CN104732574B CN104732574B (zh) 2017-12-12

Family

ID=53456442

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410849750.6A Active CN104732574B (zh) 2014-12-30 2014-12-30 一种角色游戏的压缩方法及装置

Country Status (1)

Country Link
CN (1) CN104732574B (zh)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105513099A (zh) * 2015-11-27 2016-04-20 北京像素软件科技股份有限公司 一种骨骼动画数据的压缩方法及装置
CN106296759A (zh) * 2016-08-25 2017-01-04 深圳市创梦天地科技有限公司 一种三维骨骼动画压缩方法及装置
CN106327538A (zh) * 2016-08-25 2017-01-11 深圳市创梦天地科技有限公司 一种二维骨骼动画压缩方法及装置
CN107578462A (zh) * 2017-09-12 2018-01-12 北京城市系统工程研究中心 一种基于实时运动捕捉的骨骼动画数据处理方法
CN107730437A (zh) * 2017-09-29 2018-02-23 上海开圣影视文化传媒股份有限公司 数据压缩存储方法及装置
CN108492338A (zh) * 2018-02-09 2018-09-04 腾讯科技(深圳)有限公司 动画文件的压缩方法、装置、存储介质和电子装置
CN108635849A (zh) * 2018-05-15 2018-10-12 深圳市腾讯网络信息技术有限公司 一种动画数据压缩、解压缩方法及装置
CN109529347A (zh) * 2018-11-21 2019-03-29 北京像素软件科技股份有限公司 3d游戏骨骼增删方法及装置
CN109785413A (zh) * 2018-12-06 2019-05-21 珠海西山居互动娱乐科技有限公司 基于Unity的可配置动画文件树形压缩方法及装置
CN110430270A (zh) * 2019-08-08 2019-11-08 网易(杭州)网络有限公司 载具数据的同步方法及装置
CN111161365A (zh) * 2019-12-30 2020-05-15 珠海金山网络游戏科技有限公司 一种骨骼动画数据的压缩方法及装置
CN108635849B (zh) * 2018-05-15 2024-06-04 深圳市腾讯网络信息技术有限公司 一种动画数据压缩、解压缩方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1991000671A1 (de) * 1989-06-30 1991-01-10 Deutsche Thomson-Brandt Gmbh Signalverarbeitungssystem
CN101026761A (zh) * 2006-02-17 2007-08-29 中国科学院自动化研究所 一种具有最小误差的快速变尺寸块匹配的运动估计方法
CN101031085A (zh) * 2007-03-30 2007-09-05 中国联合通信有限公司 一种移动终端帧动画的处理方法
CN101656877A (zh) * 2008-08-19 2010-02-24 新奥特(北京)视频技术有限公司 一种改进的图片序列生成动画文件的方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1991000671A1 (de) * 1989-06-30 1991-01-10 Deutsche Thomson-Brandt Gmbh Signalverarbeitungssystem
CN101026761A (zh) * 2006-02-17 2007-08-29 中国科学院自动化研究所 一种具有最小误差的快速变尺寸块匹配的运动估计方法
CN101031085A (zh) * 2007-03-30 2007-09-05 中国联合通信有限公司 一种移动终端帧动画的处理方法
CN101656877A (zh) * 2008-08-19 2010-02-24 新奥特(北京)视频技术有限公司 一种改进的图片序列生成动画文件的方法

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105513099B (zh) * 2015-11-27 2019-01-22 北京像素软件科技股份有限公司 一种骨骼动画数据的压缩方法及装置
CN105513099A (zh) * 2015-11-27 2016-04-20 北京像素软件科技股份有限公司 一种骨骼动画数据的压缩方法及装置
CN106296759B (zh) * 2016-08-25 2019-09-20 深圳市创梦天地科技有限公司 一种三维骨骼动画压缩方法及装置
CN106296759A (zh) * 2016-08-25 2017-01-04 深圳市创梦天地科技有限公司 一种三维骨骼动画压缩方法及装置
CN106327538A (zh) * 2016-08-25 2017-01-11 深圳市创梦天地科技有限公司 一种二维骨骼动画压缩方法及装置
CN106327538B (zh) * 2016-08-25 2019-09-20 深圳市创梦天地科技有限公司 一种二维骨骼动画压缩方法及装置
CN107578462A (zh) * 2017-09-12 2018-01-12 北京城市系统工程研究中心 一种基于实时运动捕捉的骨骼动画数据处理方法
CN107730437A (zh) * 2017-09-29 2018-02-23 上海开圣影视文化传媒股份有限公司 数据压缩存储方法及装置
CN108492338A (zh) * 2018-02-09 2018-09-04 腾讯科技(深圳)有限公司 动画文件的压缩方法、装置、存储介质和电子装置
CN108635849A (zh) * 2018-05-15 2018-10-12 深圳市腾讯网络信息技术有限公司 一种动画数据压缩、解压缩方法及装置
CN108635849B (zh) * 2018-05-15 2024-06-04 深圳市腾讯网络信息技术有限公司 一种动画数据压缩、解压缩方法及装置
CN109529347A (zh) * 2018-11-21 2019-03-29 北京像素软件科技股份有限公司 3d游戏骨骼增删方法及装置
CN109529347B (zh) * 2018-11-21 2022-05-17 北京像素软件科技股份有限公司 3d游戏骨骼增删方法及装置
CN109785413B (zh) * 2018-12-06 2023-03-14 珠海西山居互动娱乐科技有限公司 基于Unity的可配置动画文件树形压缩方法及装置
CN109785413A (zh) * 2018-12-06 2019-05-21 珠海西山居互动娱乐科技有限公司 基于Unity的可配置动画文件树形压缩方法及装置
CN110430270A (zh) * 2019-08-08 2019-11-08 网易(杭州)网络有限公司 载具数据的同步方法及装置
CN110430270B (zh) * 2019-08-08 2022-03-25 网易(杭州)网络有限公司 载具数据的同步方法及装置
CN111161365A (zh) * 2019-12-30 2020-05-15 珠海金山网络游戏科技有限公司 一种骨骼动画数据的压缩方法及装置
CN111161365B (zh) * 2019-12-30 2023-05-09 珠海金山数字网络科技有限公司 一种骨骼动画数据的压缩方法及装置

Also Published As

Publication number Publication date
CN104732574B (zh) 2017-12-12

Similar Documents

Publication Publication Date Title
CN104732574A (zh) 一种角色游戏的压缩装置及装置
CN103236847A (zh) 基于多层哈希结构与游程编码的数据无损压缩方法
CN103678536A (zh) 一种实现页面返回操作的方法及装置
CN101751440A (zh) 一种数据压缩/解压缩方法及其装置
WO2020147379A1 (zh) 点云滤波方法、装置及存储介质
CN109754359A (zh) 一种应用于卷积神经网络的池化处理的方法及系统
CN105931256A (zh) 基于cuda的大幅面遥感影像快速分割方法
Tang et al. Multi-core collision detection between deformable models
CN102340296B (zh) 一种基于gpu的高阶数字fir滤波器频域并行处理实现方法
CN104537003B (zh) 一种Hbase数据库的通用高性能数据写入方法
CN103795418A (zh) 一种路网轨迹的无损压缩方法
CN109086105A (zh) 一种页面布局转换方法、装置及电子设备
CN107392838B (zh) 基于OpenCL的WebP压缩并行加速方法及装置
CN106227881A (zh) 一种信息处理方法及服务器
CN102663666A (zh) 基于fpga的二维图像重采样算法加速器
CN109376120A (zh) 一种内存优化的数据文件格式转化方法、装置及存储介质
CN102323541A (zh) 基于参考向量和位掩码的soc的测试方法
CN102724505A (zh) Jpeg_ls游程编码fpga实现方法
CN103973310A (zh) 一种基于异或逻辑运算折半划分的测试数据压缩方法
CN103260030A (zh) 面向移动终端三维模型流式传输方法
JP2022513484A (ja) 点群符号化方法及びエンコーダ
JP2015532489A (ja) 空間データ圧縮装置及びその方法と、圧縮された空間データ復元装置及びその方法
CN108682047A (zh) 一种三维建筑模型文件转换方法和系统
CN107005693B (zh) 对使用单个样本值编码的编码单元解码的方法和装置
CN109658094A (zh) 随机游走、基于集群的随机游走方法、装置以及设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant