一种与平台无关的VR应用文件的存储和解析方法技术

技术编号:30331715 阅读:21 留言:0更新日期:2021-10-10 00:41
本发明专利技术公开了一种与平台无关的VR应用文件的存储方法,该存储方法包括以下操作步骤:S1,将所有编辑好的数据存放到同一个文件目录下,形成一个数据集合;S2,向当前的数据集合中写入项目全局配置数据,存储画板配置数据、渲染配置数据等,形成数据集合;S3,向当前的数据集合中写入一个启动文件,存储有最先载入和执行的场景及逻辑,形成数据集合;S4,对当前数据集合中的每一个数据分别进行对称加密,密钥通过对数据文件名进行哈希运算取得,加密后形成数据集合;该存储和解析方法与传统技术相比,不再使用普通的可执行程序作为应用文件,使得VR应用开发的难度降低、周期缩短,实现了运行在不同各类的VR设备上的兼容性和便捷性。在不同各类的VR设备上的兼容性和便捷性。在不同各类的VR设备上的兼容性和便捷性。

【技术实现步骤摘要】
一种与平台无关的VR应用文件的存储和解析方法


[0001]本专利技术属于虚拟现实行业的VR应用内容开发
,尤其涉及一种与平台无关的VR应用文件的存储和解析方法。

技术介绍

[0002]虚拟现实简称VR,VR技术是虚拟仿真技术的一个重要方向。VR技术拥有着庞大的应用领域及巨大的市场前景,目前,VR技术已广泛地应用于教育、工业、医疗、旅游、电力、消防、军事等各行各业中,VR应用的开发是VR技术中的关键环节之一,是VR与各应用领域对接的重要纽带;目前,VR应用开发主要是传统游戏软件开发技术的延伸,开发过程和最终产出物也与游戏软件相同,在这种开发模式下,VR应用文件也没有形成VR专用的文件存储和解析方法,而是采用通用软件的可执行文件形式。
[0003]通用软件的可执行文件的开发过程,需要专业的软件开发人员参与,采用传统软件工程的工艺流程,使用软件开发专用工具链,门槛高、难度大、周期长。最终形成的VR应用文件是平台相关的,只能运行在某一种系统平台或某一种VR硬件设备上。完全依赖于操作系统和硬件环境。一个操作系统下开发的应用,放到另一个操作系统下无法运行,针对一种VR硬件设备开发的应用,也无法用于其他的VR硬件设备,一个VR应用文件中需要存储多种类型的数据,包括纹理、材质、3D模型、场景、脚本、交互逻辑等;目前的VR应用文件多采用传统游戏中使用的资源打包的方式,逻辑方面则是通过编程、对源码编译生成操作系统的原生可执行文件。无法做到平台无关和设备无关。

技术实现思路

[0004]本专利技术的目的在于提供一种与平台无关的VR应用文件的存储和解析方法以解决上述存在的问题,该存储和解析方法与传统技术相比,不再使用普通的可执行程序作为应用文件,使得VR应用开发的难度降低、周期缩短,实现了运行在不同各类的VR设备上的兼容性和便捷性。
[0005]本专利技术采用的技术方案如下:
[0006]一种与平台无关的VR应用文件的存储方法,该VR应用文件的存储方法包括以下操作步骤:
[0007]S1,将所有编辑好的数据存放到同一个文件目录下,形成一个数据集合{D0,D1,D2,
……
};
[0008]S2,向当前的数据集合中写入项目全局配置数据Setting建立子集合,Setting子集合中存储画板配置数据、渲染配置数据等,形成子集合数据库{Setting,D0,D1,D2,
……
};
[0009]S3,向当前的数据集合中写入一个启动文件Boot,建立Boot数据库,该数据库中存储有最先载入和执行的场景及逻辑,形成Boot数据集合群{Boot,Setting,D0,D1,D2,
……
};
[0010]S4,对当前数据集合中的每一个数据分别进行对称加密,密钥通过对数据文件名进行哈希运算取得,加密后形成加密数据集合{EBoot,ESetting,E0,E1,E2,
……
};
[0011]S5,生成加密版VR应用文件,继续执行S6;
[0012]S6,其中,将数据verType模块的值赋为3;
[0013]S7,对当前数据集合中的数据进行对称加密,密钥每个版本号ver更换一次,即已知ver,确定密钥内容,加密后形成EZ数据集合库{EZData};
[0014]S8,将当前的EZ数据集合库数据集合写入文件,先写Header模块,再写EZData模块,形成最终的加密版的VR应用文件。
[0015]作为优选的技术方案,所述VR应用文件的存储格式还包括:Debug版和Release版VR应用文件。
[0016]进一步优选的技术方案,生成Debug版VR应用文件,verType模块值赋为1,在上述操作中执行完毕S1

S3步骤后,执行以下操作步骤:
[0017]对当前的Boot数据集合群数据集合,利用Zip算法进行压缩打包,形成一个文件,记录为ZD数据集合库{ZData};
[0018]将当前的ZD数据集合库数据集合写入文件,先写Header模块,再写EZData模块,形成最终的Debug版的VR应用文件。
[0019]进一步优选的技术方案,生成Release版VR应用文件,verType模块值赋为2,在上述操作中执行完毕S1

S3步骤后,执行以下操作步骤:
[0020]构造文件头,数据包括文件类型标识模块VPP为3个字节、文件版本号模块ver为4个字节、文件版本类型模块verType为1个字节,数据块长度模块dataLength为4个字节,形成一个长度为12个字节的数据块:
[0021]Header{“VPP”,ver,verType,dataLength},最终形成数据集合{Header,EZData};
[0022]将当前的数据库中数据集合写入文件,先写Header模块,再写EZData模块,形成最终的Release版的VR应用文件。
[0023]进一步优选的技术方案,所述VR应用文件的存储方法在VR编辑器中处理编辑。
[0024]一种与平台无关的VR应用文件的解析方法,用于对上述VR应用文件存储方法存储的格式文件进行解析,包括如下解析步骤:
[0025]A1,打开文件,若文件长度小于12个字节,文件格式错误,结束;
[0026]A2,读取文件头数据Header模块{tag,ver,verType,dataLength},4个变量分别为:版本类型标识模块为3个字节、文件版本号模块为4个字节、文件版本类型模块为1个字节、数据长度模块为4个字节;
[0027]A3,若tag模块VPP值为文件类型标识模块,并且数据长度模块dataLength的赋值≥0,继续执行A4,否则,文件格式错误,结束;
[0028]A4,读取数据长度模块的长度数据,形成当前数据EZData数据库;
[0029]A5,判断文件版本类型,若verType模块值为3,继续执行A6,否则跳转至A7;
[0030]A6,根据ver模块的值查询密钥字典,并使用密钥对当前数据进行解密,定义新的当前数据为ZData数据库;
[0031]A7,使用Unzip算法对当前数据进行解压缩,得到当前算法数据集合群;
[0032]A8,判断文件版本类型,若verType模块值为3或2,继续执行A9,否则跳转至A10;
[0033]A9,对当前算法数据集合群的数据集合中的每一个文件,对其文件名进行哈希运算,得到密钥,并用密钥对数据进行解密,得到当前数据集合;
[0034]A10,判断文件版本类型,若verType模块的值为3或2或1,继续执行A11,否则,文件格式错误,结束;
[0035]A11,读取子集合数据库数据,设置画布状态和渲染参数数据;
[0036]A12,读取Boot数据集合群,获知启动场景和启动逻辑数据;
[0037]A13,载入场景和交互逻辑参数,最终V本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种与平台无关的VR应用文件的存储方法,其特征在于:该VR应用文件的存储方法包括以下操作步骤:S1,将所有编辑好的数据存放到同一个文件目录下,形成一个数据集合{D0,D1,D2,
……
};S2,向当前的数据集合中写入项目全局配置数据建立子集合,子集合中存储画板配置数据、渲染配置数据,形成子集合数据库;S3,向当前的数据子集合中写入一个启动文件Boot,建立Boot数据库,该数据库中存储有最先载入和执行的场景及逻辑,形成Boot数据集合群;S4,对当前Boot数据集合群中的每一个数据分别进行对称加密,密钥通过对数据文件名进行哈希运算取得,加密后形成加密数据集合;S5,生成加密版VR应用文件,继续执行S6;S6,其中,将数据verType模块的值赋为3;S7,对当前数据集合中的数据进行对称加密,密钥每个版本号ver更换一次,即已知ver,确定密钥内容,加密后形成EZ数据集合库;S8,将当前的EZ数据集合库数据集合写入文件,先写Header模块,再写EZData模块,形成最终的加密版的VR应用文件。2.根据权利要求1所述的一种与平台无关的VR应用文件的存储方法,其特征在于:所述VR应用文件的存储格式还包括:Debug版和Release版。3.根据权利要求2所述的一种与平台无关的VR应用文件的存储方法,其特征在于:生成Debug版VR应用文件,将数据verType模块的值赋为1,在上述操作中执行完毕S1

S3步骤后,执行以下操作步骤:对当前的Boot数据集合群数据集合,利用Zip算法进行压缩打包,形成一个文件,记录为ZD数据集合库;将当前的ZD数据集合库数据集合写入文件,先写Header模块,再写EZData模块,形成最终的Debug版的VR应用文件。4.根据权利要求2所述的一种与平台无关的VR应用文件的存储方法,其特征在于:生成Release版VR应用文件,将数据verType模块值赋为2,在上述操作中执行完毕S1

S3步骤后,执行以下操作步骤:构造文件头,数据包括文件类型标识模块为3个字节、文...

【专利技术属性】
技术研发人员:梁侃梁友崔广伟王龙华
申请(专利权)人:河南众诚信息科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1