三维游戏模型数据处理方法及网络游戏系统与流程

文档序号:13512698阅读:258来源:国知局
三维游戏模型数据处理方法及网络游戏系统与流程

本申请涉及三维网络游戏技术。



背景技术:

目前游戏越来越普及,特别是大部分手机游戏都采用了三维技术来制作,为了让游戏内容丰富,表现力优秀,体验更好,开发商引入了大量的三维模型以及动作,但这样会导致游戏包体过大,下载时间过长,而且占用更多磁盘空间,不利于游戏推广。

现有技术中,一种解决方案是将制作分包,将游戏数据分为首包和资源包,用户下载首包之后安装运行,但若想继续玩游戏则需要继续下载剩余的所有资源包,这样,用户下载的实际包体还是很大,而且这种方式会导致用户反感。另一种解决方案是分辊制作面数较低的低模游戏包和面数较多的高模游戏包,两者均可独立运行,然而,玩家选择低模游戏包时,虽然可以控制游戏包大小,但由于面数较小导致模型质量下降,对于玩家来说会有粗糙感,导致玩家常常在之后选择下载高模游戏包,这样会导致占用更大的存储空间。



技术实现要素:

本发明旨在提供一种新型的三维游戏模型数据处理方法,能够在保证模型质量的同时降低游戏包体所占用的存储空间,提升玩家的游戏体验。

本发明一方面提供一种三维游戏模型数据处理方法,包括:

对第一文件进行解析,将所述第一文件拆分为第二文件和第三文件,其中所述第一文件存储第一三维游戏模型数据,所述第二文件存储自所述第一三维游戏模型数据中舍弃部分精度数据的第二三维游戏模型数据,所述第三文件存储所述被舍弃的精度数据;以及

获得并运行所述第二文件,生成精度降低的三维游戏模型。

较佳的,所述第一三维模型数据为单精度类型的数据,所述第二三维游戏模型数据为半精度类型的数据。

较佳的,所述第一三维模型数据的数据类型的长度大于所述第二三维游戏模型数据的数据类型的长度、或等于所述第二三维游戏模型数据的数据类型的长度的两倍、或等于所述第二三维游戏模型数据的数据类型的长度与所述精度数据的数据类型的长度之和。

较佳的,还包括:在满足给定条件时下载获得所述第三文件,将所述第三文件中的精度数据与第二文件中的第二三维游戏模型数据合并;以及运行所述合并后的三维游戏模型数据。

较佳的,所述给定条件为用户发出指令下载所述第三文件。

较佳的,所述第一三维游戏模型数据中包括第一模型网格数据和第一模型动作数据;所述第二三维游戏模型数据中包括自所述第一模型网格数据中舍弃部分精度数据的第二模型网络数据和与所述第一模型动作数据的数据类型的长度相同的第二模型动作数据;或者所述第二三维游戏模型数据中包括与所述第一模型网格数据的数据类型的长度相同的第二模型网络数据和自所述第一模型动作数据中舍弃部分精度数据的第二模型动作数据;或者所述第二三维游戏模型数据中包括自所述第一模型网格数据中舍弃部分精度数据的第二模型网络数据和自所述第一模型动作数据中舍弃部分精度数据的第二模型动作数据。

较佳的,在将所述第一文件拆分为第二文件和第三文件前还包括:剔除第四文件中存储的第三三维游戏模型数据中的法线数据、切线数据、和/或部分动作曲线数据,得到所述第一文件。

较佳的,还包括:将所述被剔除的数据存储在第五文件中;以及下载获得所述第五文件,将所述第五文件与所述第一文件合并还原出所述第四文件。

本发明另一方面提供一种网络游戏系统,包括:

三维游戏模型数据处理服务器,被配置为对第一文件进行解析,将所述第一文件拆分为第二文件和第三文件,其中所述第一文件存储第一三维游戏模型数据,所述第二文件存储自所述第一三维游戏模型数据中舍弃部分精度数据的第二三维游戏模型数据,所述第三文件存储所述被舍弃的精度数据;以及

游戏用户终端,被配置为获得并运行所述第二文件,生成精度降低的三维游戏模型。

较佳的,所述游戏用户终端为便携式移动设备。

本申请中,将源三维游戏模型数据拆分成调整精度的模型文件和精度还原文件,玩家下载经过调整精度的模型文件后可以较高的视觉质量运行整个游戏,并且,与源三维游戏模型数据相比,经过调整精度的模型文件的包体更小,因此能够在保证游戏模型质量的同时降低游戏包体所占用的存储空间,提升玩家的游戏体验。

附图说明

图1示出本申请一实施例的网络游戏系统;

图2示出本申请一实施例的三维游戏模型数据处理方法;以及

图3示出本申请另一实施例的三维游戏模型数据处理方法。

具体实施方式

以下参照附图对本发明三维游戏模型数据处理方法及网络游戏系统进行详细说明。

请参阅图1,本申请一实施例的网络游戏系统包括三维游戏模型数据处理服务器10和游戏用户终端20。游戏用户终端20较佳的为例如手机、平板电脑、掌上游戏机等便携式移动设备。可以理解,游戏用户终端20还可以是台式计算机或笔记本电脑等设备。游戏用户终端20可以通过无线或有线网络与三维游戏模型数据处理服务器10连接。

三维游戏模型数据处理服务器10被配置为对第一文件进行解析,将所述第一文件拆分为第二文件和第三文件,其中,所述第一文件存储第一三维游戏模型数据,所述第二文件存储自所述第一三维游戏模型数据中舍弃部分精度数据的第二三维游戏模型数据,所述第三文件存储所述被舍弃的精度数据;

游戏用户终端20被配置为获得并运行所述第二文件,生成精度降低的三维游戏模型,以及,在满足给定条件时下载获得所述第三文件,将所述第三文件中的精度数据与第二文件中的第二三维游戏模型数据合并,且运行所述合并后的三维游戏模型数据。

较佳的,所述第一三维模型数据为单精度类型的数据,所述第二三维游戏模型数据为半精度类型的数据。所述第一三维模型数据的数据类型的长度大于所述第二三维游戏模型数据的数据类型的长度、或等于所述第二三维游戏模型数据的数据类型的长度的两倍、或等于所述第二三维游戏模型数据的数据类型的长度与所述精度数据的数据类型的长度之和。

本申请中,将源三维游戏模型数据拆分成调整精度的模型文件和精度还原文件,玩家只下载经过调整精度的模型文件后可以较高的视觉质量运行整个游戏,玩家也可以进一步选择下载精度还原文件,与经过调整精度的模型文件合并出高精度模型文件。与源三维游戏模型数据相比,经过调整精度的模型文件中模型的面数不变,而是通过降低模型数据的精度来获得更小的游戏包。对于手机游戏来言,一个模型从几十到几千个面,在屏幕较小的情况下降低一定程度的精度在视觉表现上基本无区别。如此,本申请能够在保证游戏模型质量的同时降低游戏包体所占用的存储空间,提升玩家的游戏体验。依据本申请,通过对三维游戏模型数据进行精度调整,在基本不影响视觉感观的情况下,能将游戏包体大小减少30%~40%。

参考图2,本申请一实施例的三维游戏模型数据处理方法包括:

s11、对第一文件进行解析,将所述第一文件拆分为第二文件和第三文件,其中所述第一文件存储第一三维游戏模型数据,所述第二文件存储自所述第一三维游戏模型数据中舍弃部分精度数据的第二三维游戏模型数据,所述第三文件存储所述被舍弃的精度数据;

s12、获得并运行所述第二文件,生成精度降低的三维游戏模型。

下面结合图3,对本申请另一较详细实施例的三维游戏模型数据处理方法进行描述。该方法尤其适合但不限用于手机游戏,包括:

s21、获得第一文件,分别执行sa22和sb22。其中,第一文件中存储的为精度完整的三维游戏模型数据,该三维游戏模型数据可以是从三维软件中导出的数据,主要包括第一模型网格数据和第一模型动作数据。

其中,第一模型网格数据包含顶点数据、切线数据、法线数据、纹理数据及蒙皮数据等,第一模型动作数据包含动作曲线数据等。

本实施例中,较佳的,第一文件中存储的三维游戏模型数据可以采用32位单精度浮点型,该数据类型的长度为4个字节。可以理解,在更多实施例中,还可以采用其他数据类型。

sa22、解析第一文件,获得第一文件中的第一模型网格数据。

sa23、判断是否剔除第一模型网格数据中的法线数据和切线数据,若是,将剔除法线数据和切线数据后剩余的顶点数据、纹理数据及蒙皮数据等作为第二模型网格数据,以第二模型网格数据为待解析模型网格数据执行sa24,否则,以第一模型网格数据为待解析模型网格数据执行sa25。

对于手机游而言,由于手机屏幕相对较小,大部分手机游戏的三维模型即使没有法线数据和切线数据,视觉上也基本上无区别,因此可以将这些数据剔除掉,这样,可以节省的数据存储空间为顶点数据的2倍。

可以理解,视实际需要,也可以只剔除法线数据或者只剔除切线数据,剔除法线数据和/或切线数据时,可以剔除相应数据集合中的部分数据或全部数据。

sa24、对待解析模型网格数据进行解析,将所包含的数据拆分为第三模型网格数据和网格精度还原数据,其中,第三模型网格数据为自待解析模型网格数据中舍弃至少部分精度数据的模型网格数据,网格精度还原数据为被舍弃的精度数据,之后执行s25。

本实施例中,待解析模型网格数据为单精度类型的数据,每个单位占用的4个字节,将这些模型网格数据进行归一化,再将单精度调整为半精度,即可以将高位精度舍弃掉,使得第三模型网格数据的每个单位占用2个字节,被舍弃掉的高位精度与第三模型网格数据中的各数据一一对应地存储在网格精度还原数据中。可以理解,在更多实施例中,可以采用其他方式对待解析模型网格数据进行精度调整,只要能使第三模型网格数据在满足一定模型精度的同时降低数据占用的存储空间。

sb22、解析第一文件,获得第一文件中的第一模型动作数据。

sb23、判断是否剔除第一模型动作数据中的部分动作曲线数据,若是,将剔除部分动作曲线后剩余的动作曲线数据作为第二模型动作数据,以第二模型动作数据为待解析模型动作数据执行sb24,否则,以第一模型动作数据为待解析模型动作数据执行sb25。

较佳的,可以选择剔除第一模型动作数据中不需要动作曲线缩放功能的那部分动作曲线数据。

sb24、对待解析模型动作数据进行解析,将所包含的数据拆分为第三模型动作数据和动作精度还原数据,其中,第三模型动作数据为自待解析模型动作数据中舍弃至少部分精度数据的模型动作数据,动作精度还原数据为被舍弃的精度数据,执行s25。

本实施例中,待解析模型动作数据为单精度类型的数据,每个单位占用的4个字节,将这些模型动作数据进行归一化,再将单精度调整为半精度,即可以将高位精度舍弃掉,使得第三模型动作数据的每个单位占用2个字节,被舍弃掉的高位精度与第三模型动作数据中的各数据一一对应地存储在动作精度还原数据中。可以理解,在更多实施例中,可以采用其他方式对待解析模型动作数据进行精度调整,只要能使第三模型动作数据在满足一定运动精度的同时降低数据占用的存储空间。

s25、将第三模型网络数据和第三模型动作数据合并成第二文件,将网格精度还原数据和动作精度还原数据合并成第三文件。第三文件可以被作为资源包供游戏玩家在需要时下载。

s26、游戏用户终端20下载获得第二文件,运行第二文件生成精度较低的三维游戏模型。

s27、在满足给定条件时游戏用户终端20继续下载获得第三文件,将第三文件中的精度还原数据与第二文件中的游戏模型数据合并,并运行所述合并后的游戏模型数据生成精度较高的三维游戏模型。

其中,所述的给定条件例如可以是用户发出指令下载第三文件。

较佳的,在更多实施例中,还可以将sa23中被剔除的法线数据和切线数据和sb23中被剔除的部分动作曲线数据存储在第四文件中,并在满足给定条件(例如用户发出指令下载第四文件时)下载第四文件,并将s27中合并后的游戏模型数据与第四文件的数据进行进一步合并后,运行该进一步合并后的文件生成精度完整的三维游戏模型。

上述实施例中,对模型网络数据和模型动作数据均进行了精度调整,这样,调整后的模型网络数据和模型动作数据的数据类型的长度均小于调整前的模型网络数据和模型动作数据的数据类型的长度。可以理解,在更多实施例中,可以只对模型网格数据进行精度调整,或者只对模型动作数据进行精度调整。对模型网格数据和/或模型动作数据进行精度调整时,可以是调整相应数据集合中的部分数据或全部数据。

需要说明的是,本发明并不局限于上述实施方式,根据本发明的创造精神,本领域技术人员还可以做出其他变化,这些依据本发明的创造精神所做的变化,都应包含在本发明所要求保护的范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1