物联图元的3D场景建立方法及系统与流程

文档序号:11251968阅读:501来源:国知局
物联图元的3D场景建立方法及系统与流程

本发明涉及计算机技术领域,特别涉及一种物联图元的3d场景建立方法及系统。



背景技术:

对于物联网络应用,3d实景呈现技术的应用,能够精细化、全方位的呈现一个物体,具有二维平面图象不可比拟的优势。企业将其产品以1:1比例三维的形式发布,能够在物联网上展现产品外观的各个方面、内部结构,并通过3d可视化的界面进行编辑和操作,这是物联网领域内可持续发展的重要方向。

目前,3d引擎及其相关操作工具只是在虚拟场景层面进行开发和拓展,比如游戏产业,而虚拟场景和物理设备间进行交互和关联在物联网领域还是十分稀缺,另外,在3d引擎研发方面,由于开发和维护3d引擎,投入大,周期长,见效慢,且需要成立专门的团队从事艰难、庞杂的3d建模与实现等工作,中小企业一般难以承受,即使大型企业也需要综合考量技术可行性、技术风险、商业风险、市场回报率,以及相应的投入风险。

专利文献cn102279752a公开了一种超大场景实时渲染装置,涉及数据传输加载装置和方法,该专利通过数据传输部分和数据渲染部分的实施,使用户访问使用web3d应用程序时不必再经过较长的等待时间,突破三维应用程序在互联网传播受网络带宽的严重限制;部署和实施web3d应用时,不必担心用户群体的早期硬件配置较低的终端不兼容性,提升了web3d应用程序的可行性和实用性。

专利文献cn103885788a公开了一种基于模型组件化动态web3d虚拟现实场景的搭建方法及系统,通过把虚拟3d场景中的模型以及功能部件进行拆分,构建多样的可复用的模型与功能组件库,每个组件都自己独立的版本,组件独立编译,独立打包和部署,通过可视化的搭建工具,把模型与功能组件搭建虚拟现实场景,实现一次设计开发,多次复用。不仅有利于提高电子商务平台中产品在三维展示方面的质量,通过动态传输与加载的方法提高虚拟3d场景在web应用上的运行效率,而且减低开发成本,提高开发效率,减少冗余。

因为实际运用过程中,用户下载模型与实际查看使用模型存在很大的冗余,上述2个专利文献所提供的方法都是通过对模型数据的优化以及对模型进行组件化处理,来提高web3d的性能以及用户的体验,没有从实际业务出发,而只是解决软件层面上的运行效率,与实际业务和硬件设备并没有进行交互和有效的管控。

而随着物联网应用的普及,如何把虚拟3d场景中的模型以及功能部件与现实生活中的设备及硬件相关联,实现可看、可控、可调配,让3d场景中的物体不再只是虚拟的模型,而是一个鲜活的、可交互的、可控制的实际的产品,解决物理设备和产品以及展示模型不相关的问题,以利于物联网领域的人力资源的节约,产品的高效、合理管控,设备的巡检和维护,物理状态(含工作和异常)的精确反映及处置,即为从事此行业的相关厂商所亟欲研究改善的方向所在者。



技术实现要素:

本发明的目的在于提供一种物联图元的3d场景建立方法及系统,引入模型组件化、场景编辑、数据分类存储、物理设备点位生成、点位与场景内组件绑定技术,以解决3d引擎开发周期长、重复开发模型、场景搭建繁琐、物理设备和3d场景无法关联的不足,同时减少人工开发、人力资源浪费、对设备和资产的管理和维护成本,提高产品的表现力、设备管理和维护的简易程度、工业控制流程的运行效率。

为实现上述目的及其他相关目的,根据本发明的一个方面,提供了一种物联图元的3d场景建立方法,其步骤具体为:

步骤一、模型组件化处理,具体为:

步骤1-1设计完模型后,对每个模型命名,保证模型在资源数据库中的全网唯一性;

步骤1-2统一编码后的模型被拆分成两部分文件:主模型文件、材质贴图文件,并使用模型结构文本文件记录模型两部分文件的依赖关系,以及主模型文件内的结构信息;

步骤1-3对3部分数据文件:模型结构文本文件、主模型文件、材质贴图文件,进行压缩、编码、打包,形成.assetbundle格式文件;

步骤1-4将模型组件上传资源数据库,供web3d引擎调用,将模型组件发送到客户端或者3d可视化编辑工具进行显示和编辑;

步骤二、编辑场景,具体为:

步骤2-1通过调用资源数据库,以3d可视化的方式搭建场景,搭建3d虚拟现实场景,可视化编辑工具支持模型的自由摆放、旋转、放大、缩小、对齐操作,以及自定义脚本事件的编辑;可视化编辑模块也支持把编辑完成的场景存为场景模板,共享给其他用户使用;

步骤2-2场景结构化:使用模型组件化,3d虚拟场景保存时,保存场景模型数据,将所有模型组件进行分类,按模型作用进行排列和打包;

步骤三、保存发布场景;

步骤3-1打包成的场景文件以.xml类型文件存储到物理设备关联服务器;

步骤3-2存储的场景文件被服务器解析成场景信息显示在网页客户端上;

步骤四、场景内组件的解析和物理设备的关联,具体为:

步骤4-1读取场景,将场景内所有组件分类;

步骤4-2将不同分类的组件和数据库内的物理设备点位进行对接和绑定。

通过以上四个步骤操作就可以完成物联图元的3d场景建立,在完成的3d场景中可实现场景展示、对3d场景中的模型组件进行操作来控制实际设备以及实际设备对于点位联动以动画形式进行体现这三个功能。

根据本发明的另一个方面,还提供了一种物联图元的3d场景建立系统,其包括web3d引擎、资源数据库、3d可视化编辑工具、物理设备关联服务器、客户端。

所述web3d引擎,用于动态加载3d素材文件,对所述3d素材文件进行解析和打包,打包后的文件包括3d贴图和3d模型;将解析和打包后得到的文件传输到cpu进行解包,由显卡gpu进行运算,对解析结果进行渲染处理。

所述资源数据库,用于按照统一标准对模型进行规范,把模型组件化后,形成标准数据库,为3d场景的建立提供统一的素材库。

所述资源数据库由资源分发子模块和数据库组成。

资源分发子模块:用于物理设备关联服务器和web3d引擎调用或输入资源数据库资源的数据分发以及衔接;

数据库:数据库是模型组件和物理设备点位的集合,模型组件在开发时进行统一编码,物理设备点位是由用户建立并由代码进行分类和存储,模型库中能够对组件和点位进行查询检索、模型预览与点位绑定;

资源数据库提供给多个web3d引擎模型的调取,资源数据库搭建在分布式文件系统基础之上,提升模型组件的高并发的可用性与扩展性,而资源数据库的点位绑定功能可以使物理设备和虚拟场景相关联,达到所见即所得这样的智慧物联的效果。

所述3d可视化编辑工具,包括:

场景结构化解析模块:通过对场景编辑服务器生成的结构化文件进行解析与预处理,为下一步的场景动态拆分模型做准备;通过对场景结构化解析,获取场景的实际大小,把场景内的所有组件唤醒分类并记录,以xml格式进行存储,存储内容包括场景名,组件的大小、位置,旋转角度;其中,旋转角度能够在空间上以前后、左右、上下三个维度进行360°旋转;

场景动态拆分模块:3d虚拟场景漫游通过漫游“摄影机”进行展现,场景模型的加载进行动态加载,按web3d引擎所定逻辑将资源数据库和场景间的解析数据做比对进行相应组件的加载;场景动态拆分模块通过读取场景结构化文本文件,生成场景加载区域图,根据“摄影机”在场景中的位置,计算出“摄影机”视野内周边的8个网格编号,结合场景结构化解析模块完成的网格与模型对应关系,建立网格内模型列表,通过优先级的顺序建立模型下载队列,并把模型下载队列信息发送给客户端;

所述物理设备关联服务器,用于:

(1)实时解析场景组件信息,将存储于服务器的场景信息进行解析,将解析后的组件信息和资源数据库中的模型点位进行绑定,绑定过程由用户自由选择并绑定,使组件和点位可用性和扩展性得到提升;

(2)储存并应用绑定信息,组件和点位绑定后的信息被存储到服务器中,当web3d引擎启动并加载场景时调用物理设备关联服务器中的绑定信息,使用户在操纵3d场景中的组件时,与之联动的设备会根据建立组件时所定的行为规则做出相对应的反应,而3d场景中的组件也会根据物理设备返回的数据进行相应的反应(具体表现为播放动画、改变3d物体属性、联动其他3d组件等方式),使用户体验到所见即所得的效果,以实现物联网络领域的人力资源的节约,资产的高效、合理管控,设备的巡检和维护,物理状态(含工作和异常)的精确反映及处置。

所述的客户端,用于:

(1)显示数据库和服务器信息,调用资源数据库和物理设备关联服务器中的信息并显示,供用户进行点位的绑定和模型组件的关联;

(2)加载展示场景,通过接收物理设备关联服务器解析结果,根据异步加载要求,多线程多队列下载模型资源,并按照场景模型优先级与依赖关系进行场景的渲染。

本发明的有益效果是:

1)集成web3d引擎后,可有效减少物联网应用软件开发的成本,提高图像呈现的运行效率;

2)本发明采用可视化的场景编辑器,降低了开发虚拟现实场景的难度,一些不懂编程开发的人员也可以加入到场景建模的工作中来,极大地降低了虚拟现实应用业务的用人成本;

3)场景功能化保存在数据库中,方便3d模型的检索以及复用,结构化信息可以形成场景模板,用户只需要选择一个场景模板就可以快速搭建自己的虚拟场景,减低了搭建3d场景学习成本。

4)点位生成与物理设备自动绑定,实现了接入一个设备生成一个对应点位并保存的自动物理设备接入功能,用户可以通过查找资源数据库给点位绑定场景中的模型组件,让用户能在网页上实际操作现实中的设备。

结合本发明中的3d引擎和3d可视化编辑工具来搭建与真实场景相仿的3d场景,并打包和发布到物理设备关联服务器,保存在服务器上的场景不仅可以进行多次复用和修改,还能通过调用资源数据库中的物理设备点位信息与场景中的组件进行关联。这不仅实现了产品在三维展示方面的质量、提高3d场景在网页上的运行效率,而且还将物理设备和虚拟的3d物体进行强相关。

附图说明

图1是本发明的系统结构示意图

图2是本发明的业务流程示意图

图3是本发明的web3d引擎的结构示意图

图4是本发明的模型组件化处理流程图

图5是本发明的利用3d可视化编辑工具搭建场景的示意图

图6是本发明的设备接入及点位绑定示意图

具体实施方法

为使本发明的实施例的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明做进一步详细解释说明。

参阅图1所示,本发明的系统结构包括web3d引擎、资源数据库、可视化编辑工具、物理设备关联服务器以及客户端。

1web3d引擎

动态加载3d素材文件,通过调用相应的组件化模块对该3d素材文件进行解析和打包得到.assetbundle的3d素材文件,该3d素材文件包括3d贴图和3d模型。

将所述.assetbundle文件传输到cpu进行解包、由显卡gpu进行运算,对解析结果进行渲染处理。

1.1组件化模块

组件化模块由资源拆分子模块和资源打包子模块组成。

资源拆分子模块主要把统一编码后的模型进行拆分,形成两部分文件:主模型文件、材质贴图文件。并使用模型结构文本文件(json或xml)记录模型拆分的两部分文件间的依赖关系以及模型中自有的结构信息(父子模型依赖关系、旋转角度、缩放等信息)。

资源打包子模块用于对这3个文件压缩打包,形成通用的模型组件(如图4)。

模型组件完成后,上传到资源数据库中进行管理。

2资源数据库

资源数据库是点位信息和模型组件的集合,因为模型组件在开发时就进行了统一编码,资源数据库中可以对组件进行查询检索、版本控制、模型预览与操作。

资源数据库提供给多个网页客户端模型的调取,资源数据库搭建在分布式文件系统基础之上,提升了模型组件的高并发的可用性与扩展性。

2.1资源分发子模块

用于物理设备关联服务器和web3d引擎调用或输入资源数据库资源的数据分发以及衔接。

2.2数据库

数据库由点位存储模块和模型组件存储模块组成:

点位存储模块是将在物理设备关联服务器中生成的物理设备对应的点位信息进行分类和存储,以供用户在客户端上绑定物理设备时调用查看。

模型组件存储模块将web3d引擎打包好的模型组件以功能为依据进行分类和存储,当加载场景时将调用模型组件存储模块中的对应模型组件进行异步加载。

3可视化编辑模块

通过可视化编辑模块可以对资源数据库进行检索查询,并远程调用模型组件,加载到编辑器中进行编辑(移动、旋转、缩放、分布等常规操作),搭建场景。

可视化编辑模块通过调用资源数据库的方式搭建场景,也提供场景模板等快速建景功能,极大地提高虚拟现实场景搭建速度,大大地降低了建模成本。

搭建完毕的场景通过场景结构化模型存储到场景编辑服务器上,可以供网页客户端重复调用。

4物理设备关联服务器

由于物理设备内置的协议一般不能在网页开发软件中直接调用,目前市面上没有直接能连接多家或大多数设备协议的通用型调用工具,而用户对于产品的展示已经不再满足于只能看到不能摸到,本发明通过设置物理设备关联服务器来解决这一问题。

由于物联网领域不同的设备有不同的协议,本发明为了适应不同的协议,将每一种协议单独设立一个网口由统一的服务来调取,并且网口可支持无限扩展,以适应所有设备的协议,可以有效提高系统的广泛性和易用性。

5客户端

(1)显示数据库和服务器信息,调用资源数据库和物理设备关联服务器中的信息并显示,供用户进行点位的绑定和模型组件的关联。

(2)加载展示场景,通过接收物理设备关联服务器解析结果,根据异步加载要求,多线程、多队列下载模型资源,并按照场景模型优先级与依赖关系进行场景的渲染。

本发明的物联图元的3d场景建立方法,具体包括:

1模型组件化处理

图4为模型组件化处理流程图

(1)设计完模型后,按照统一编码管理方式对每个模型命名,保证模型在资源数据库中的全网唯一性,方便资源数据库的分类管理与检索。

(2)对模型组件进行唯一性编码,方便后期在组件库中对模型进行分类查找检索。

通过对web3d模型的分析,保证模型数据在网络中的传输与复用。

(3)对3部分数据文件:模型结构文本文件、主模型文件、材质贴图文件,进行压缩、编码、打包,形成通用的.assetbundle模型组件。

(4)模型组件上传资源数据库,供web3d引擎调用,将模型组件发送到客户端或者3d可视化编辑工具进行显示和编辑。

通过模型组件化,保证了在虚拟场景加载的时候,相同的模型、相同的贴图用户在网络上多次渲染运用只需要下载一次,从而提高网络传输效率以及引擎的渲染效率。

2编辑场景

(1)通过调用资源数据库,以3d可视化的方式搭建场景。

通过3d可视化的方式调用资源数据库,搭建3d虚拟现实场景如图5所示,3d可视化编辑工具支持模型的自由摆放、旋转、放大、缩小、对齐等操作,以及自定义脚本事件的编辑。

3d可视化编辑模块也可以把编辑完成的场景存为场景模板,共享给其他用户使用,极大地提高了虚拟现实应用开发的效率。

(2)场景结构化

因为使用了组件化的使用模型,3d虚拟场景保存时,保存场景模型数据,将所有模型组件进行分类,按模型作用进行排列和打包。这样的场景存储方式有利于模型资源的复用,相同的模型资源只会进行一次引用。为后期动态加载场景打下基础,更有利于3d场景在web上的应用效率。

3保存发布场景

将打包成的场景文件以.xml类型文件存储到物理设备关联服务器,存储的场景文件被服务器解析成场景信息显示在网页客户端上。

4点位生成和绑定

(1)物理设备接入

如图6所示,将实际设备接入物理设备关联服务器,并建立一个网口,服务器会对设备发起订阅建立起联系,同时生成一个设备对应的点位存储到资源数据库当中。

(2)点位绑定

当执行到这一步时,可以在客户端上看到资源数据库中新添加的点位,这时,查找物理设备关联服务器中想要的场景中的模型组件,并进行点位绑定(点位和模型组件都是可以随意搭配和更换的),绑定的关系信息会存储到物理设备关联服务器中以便多次调用。

用以上四个步骤操作就可以完成物联图元的3d场景建立,在通过以上四个步骤完成的3d场景中可进行场景展示、对3d场景中的模型组件进行操作来控制实际设备以及实际设备对于点位联动以动画形式的体现这三个功能。

通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘,硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

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