三维场景动态更新方法和系统的制作方法

文档序号:7864935阅读:196来源:国知局
专利名称:三维场景动态更新方法和系统的制作方法
技术领域
本发明涉及三维场景更新技术领域,特别是涉及一种三维场景动态更新方法,以及一种三维场景动态更新系统。
背景技术
虚拟现实是近年来出现的高新技术。虚拟现实是利用电脑模拟产生一个三维空间的虚拟世界,提供使用者关于视觉、听觉、触觉等感官的模拟,让使用者如同身历其境一般,可以及时、没有限制地观察三度空间内的事物。作为一项尖端科技,虚拟现实集成了计算机图形技术、计算机仿真技术、人工智能、传感技术、显示技术、网络并行处理等技术的最新发展成果,是一种由计算机生成的高技术模拟系统,这种技术的特点在于计算机产生一种人为虚拟的环境,这种虚拟的环境是通过计算机图形构成的三维数字模型,并编制到计算机 中去生成一个以视觉感受为主,也包括听觉、触觉的综合可感知的人工环境,从而使得在视觉上产生一种沉浸于这个环境的感觉,可以直接观察、操作、触摸、检测周围环境及事物的内在变化,并能与之发生“交互”作用,使人和计算机很好地“融为一体”,给人一种“身临其境”的感觉。现有的技术中,Web3D技术是实现网页中虚拟现实的一种最新技术。VRML是互联网3D图形的开放标准。VRML是3D图形和多媒体技术通用交换的文件格式,它基于建模技术,描述交互式的3D对象和场景,不仅应用在互联网上,也可以用在本地客户系统中,应用范围极广。由于网上传输的是模型文件,故其传输量大大小于视频图像。近年来Web3D已经成为Internet上3D文件的标准,围绕Web3D的实现技术及工具的开发受到业界的普遍重视,运用不同的开发工具和技术来构建网上三维环境。目前三维场景,一为参数化生成方式,即所有三维场景的元素可根据数据和对应的属性数据通过通用模型库自动生成,从而在最短的时间内为用户提供一个可编辑的区域场景;二为模型加载方式,通过实体与三维模型库中对应模型的链接,属性数据库中相关地理坐标记录,分层加载实体模型,生成更具有真实感的二维场景。传统的三维场景更新都只是由本地客户端对本地已经存在的模型进行修改,修改的数据无法写入数据库;各个客户端用户的修改相互独立,用户之间无法进行实时信息共享。另外,本地客户端从服务端下载数据对三维场景进行更新时,必须停止正在运营的三维系统,下载数据后再重新构建新的三维场景,可见传统的三维场景无法进行实时动态更新。

发明内容
基于此,本发明提供一种三维场景动态更新方法和系统,任一客户端对三维场景的任何修改可快速地发布到其他客户端,三维场景能够实时动态更新。一种三维场景动态更新方法,包括如下步骤第一客户端对其显示的三维场景进行修改,将生成的修改数据发送给服务器;所述服务器接收并保存所述修改数据,同时发送更新消息至第二客户端;
所述第二客户端接收所述更新消息后,从所述服务器下载所述修改数据,根据所述修改数据对其显示的三维场景进行相应的修改。一种三维场景动态更新系 统,包括多个客户端和服务器;每个所述客户端都与所述服务器连接;所述客户端用于对其显示的三维场景进行修改,将生成的修改数据发送给所述服务器;或者用于接收所述服务器发送的更新消息,从所述服务器下载所述修改数据,并根据所述修改数据对其显示的所述三维场景进行相应的修改;所述服务器用于接收并保存所述修改数据,同时发送所述更新消息至所述客户端。本发明三维场景动态更新方法和系统,任一客户端对三维场景的修改数据发送给服务器,服务器保存并加载,同时发送更新消息给其他客户端,其他客户端即可从服务器下载修改数据,对其显示的三维场景进行相应的修改;本发明可以使各个客户端的三维场景实时动态更新,解决了多个客户端不能直接协同互动和动态更新的问题,实现了信息的互动。


图I为本发明三维场景动态更新方法在一实施例中的流程示意图。图2为本发明三维场景动态更新系统在一实施例中的结构示意图。
具体实施例方式下面结合实施例及附图对本发明作进一步详细说明,但本发明的实施方式不限于此。如图I所示,是本发明三维场景动态更新方法在一较佳实施例中的流程示意图,包括如下步骤S11、第一客户端对其显示的三维场景进行修改,将生成的修改数据发送给服务器;用户客户端对当前显示的三维场景进行修改,修改后将对应的修改数据发送至服务器;三维场景包含的数据有模型的基础数据、模型的纹理数据(如图片数据、视频流)、模型的材质数据、全景图纹理数据或三维特效等,这里的修改数据可包括对当前显示的三维场景的操作指令;可包括在三维场景中新建或删除模型;可包括对模型的属性数据修改;还可包括采集视频流数据对模型的纹理进行贴图,改变材质属性、触发三维特效等等;所述修改数据包括但不限于上述举例,任何对三维场景的修改都可适用本发明。S12、所述服务器接收并保存所述修改数据,同时发送更新消息至第二客户端;所述服务器接收所述第一客户端发送的修改数据并保存,更新服务器存储的三维场景的数据,同时发送更新消息至第二客户端,提醒其他客户端有数据更新。S13、所述第二客户端接收所述更新消息后,从所述服务器下载所述修改数据,根据所述修改数据对其显示的三维场景进行相应的修改;其他客户端接收到更新消息后,即可从服务器下载所述修改数据,解析该数据后,对其显示的三维场景进行相应的修改,实现各个客户端三维场景的实时更新、数据共享和互动操作。
在一较佳实施例中,所述修改数据可包括对所述三维场景的操作指令;其中,所述操作指令包括放大指令、缩小指令、移动指令或标注指令等操作指令;本发明能够满足各个客户端进行协同操作或互动交流,比如在进行会议讨论,第一客户端对其显示的三维场景进行的修改为放大、移动等指令操作,在这种情况下要求其他客户端也能及时同时做出操作,保证信息交流的一致性;第一客户端对其显示的三维场景进行操作,将该操作指令处理为一个修改数据包发送至服务器,通过服务器转发给其他客户端,其他客户端接收该修改数据包后进行解析,即可对其显示的三维场景进行同样的操作,保证了各个客户端对其显示的三维场景的一致性。在一较佳实施例中,所述修改数据还可包括对所述三维场景中的元素的修改指令;所述元素为三维场景中的各个模型以及全景图数据,在三维场景技术领域,各个模型及全景图数据在后台的数据保存形式都以元素为单位保存,一个元素包含了多个属性数据,通过元素的属性数据记录了该元素所包含的各种信息,如三维场景中的一个模型,该模型所包含的各种信息如位置坐标、长宽高、纹理贴图、名称等信息,都对应地一一地保存在该模型所对应的元素的属性数据中。 本发明能够满足各个客户端对三维场景的信息交互;第一客户端对三维场景中的元素进行修改,该修改包括对三维场景中的全景图的纹理贴图、对三维场景中的模型进行纹理贴图、对模型的高度进行修改、在三维场景中的某个位置新建一模型等,修改后将修改数据发送给服务器;服务器接收后解析该修改数据,对其存储的三维场景进行更新,同时发送更新消息至其他客户端;所述其他客户端接收到所述更新消息后,从所述服务器下载所述修改数据,对所述修改数据进行解析,根据所述元素的修改指令对其显示的所述三维场景中的所述元素进行相应的修改。在一较佳实施例中,所述服务器可包括应用服务器和数据库,所述应用服务器接收所述修改数据并保存;其中,可将修改数据加载在内存缓存中,能提高客户端读取和下载数据的速度,比从硬盘下载数据的速度更快;所述数据库根据所述修改数据更新其保存的所述三维场景,同时建立更新数据表;其中,所述更新数据表记录有所述三维场景中被修改的所述元素和所述被修改的元素中被修改的属性数据;数据库接收到修改数据后,更新数据库中已存储的三维场景数据;三维场景中的每个元素都以XML格式存储,包含了每个模型各个属性的信息,若修改数据为模型的基础数据,则相应地修改基础数据;若是新建或删除模型,则相应地新建或删除模型对应的XML文件;所述数据库接收所述修改数据后,还建立记录所述修改数据的更新数据表;该更新数据表记录了更新的数据内容,比如说在某个时刻新建了一模型、在某个时刻对一模型进行了纹理图片更新、在某个时刻修改了一模型的高度等信息;所述其他客户端接收所述更新消息后从所述应用服务器中下载所述修改数据,同时从所述数据库读取所述更新数据表,根据所述修改数据、所述被修改的元素和所述被修改的属性数据,对其显示的所述三维场景中的所述元素进行相应的修改。需要说明的是,本发明所指第一客户端是泛指多个客户端中的一个执行三维场景编辑修改的客户端,而并非指某一特定的客户端;第二客户端则指除第一客户端之外与应用服务器和数据库建立连接的至少一个客户端,在实际应用中,客户端的个数可以根据用户的实际需要来设定,并且,多个客户端可以根据在不同时刻所进行的不同操作可以充当第一客户端或第二客户端;另外,任一客户端可包括有采集设备,编辑设备和显示设备,采集设备用于接入硬件设备并实时自动采集视频流或硬件状态信息,编辑设备用于对三维场景进行修改编辑,显示设备用于显示三维场景,在不同应用场景客户端的设备选择可能有所不同,例如在拼接墙领域,拼接墙即为所述的显示设备,而后台的一台计算设备如计算机可作为编辑设备,同时再连接另一台计算设备作为采集设备;而对于个人用户,该客户端可单单指一台计算设备,即由同一台设备同时进行采集、编辑和显示的工作,因此客户端的设备选择可根据实际情况而定,但选择不同的设备,都属于本发明所述客户端的范畴,都在本发明的保护范围内。下面通过具体实施例进一步说明本发明。实施例一用户在某个客户端在其显示三维场景上选择放大工具,将当前显示的三维场景放大一定比例,此时客户端将该放大指令和放大比例信息组合成一个修改数据包发送给服务器,服务器接收后保存,同时发送更新消息通知其他客户端;其他客户端接收到更新消息后 从服务器中下载该修改数据,对该修改数据进行解析,即可对其显示的三维场景进行相应的修改;各个客户端实现显示同步,方便互动交流。实施例二 用户在其中一个客户端对三维场景进行修改,修改的内容是新建一个模型,包含了该模型的新建位置坐标、长宽高、名称等模型基础信息;客户端修改完成后启动一个数据包处理过程,将上述修改内容组成一个修改数据包发送至服务器;服务器中的应用服务器接收并保存,而数据库则将所述修改数据中包含的模型数据插入数据库中实现数据更新,同时更新数据表记录下在该时刻更新的内容;应用服务器对该修改数据进行解析,加载在其内存缓存中,并发送更新消息给其他所有客户端;其他客户端接收到更新消息后即可连接数据库读取该更新数据表,检测需更新的内容后,从应用服务器下载内存缓存中的模型数据,即可将该新建的模型添加到其显示的三维场景中,同时可将修改数据进行热点显示,通过热点显示技术即可实现,方便用户清楚地查看到修改内容。实施例三用户在某个客户端对三维场景进行修改,修改的内容是对某一模型进行纹理贴图,该纹理贴图包含了数张图片数据;客户端修改完成后会启动一个数据处理过程,将上述修改内容组成一个修改数据包发送至服务器;服务器中的应用服务器接收该修改数据并进行解析,将其中的图片数据加载在其内存缓存中,并发送更新消息给其他所有客户端;而数据库则对该模型对应的纹理属性数据进行修改实现数据更新,同时更新数据表记录该时刻更新的内容;其他所有客户端接收到更新消息后即可读取该更新数据表,检测需更新的内容后,从应用服务器的内存中下载已加载的图片数据,对其显示的三维场景中对应的该模型的纹理进行贴图,实现了三维场景的动态更新。实施例四用户在某个客户端对硬件(拼墙处理器、摄像头)进行数据采集,采集的数据流用于某一模型进行纹理贴图和状态改变,该纹理贴图是实时的视频流数据,该模型状态包括材质和特效;客户端采集数据后会启动一个数据处理过程,将上述自动生成内容组成持续数据流包发送至服务器;服务器中的应用服务器接收持续数据流,将数据流加载在其内存缓存中,并发送更新消息给其他所有客户端;而数据库则对该模型进行自动实现数据更新,同时更新数据表记录该时刻更新的内容;其他所有客户端接收到更新消息后即可读取该更新数据表,检测需更新的内容后,接收应用服务器发送过来的数据流,对其显示的三维场景中对应的该模型的纹理进行贴图,改变材质属性,触发三维特效,实现了三维场景的实时更新。对应地本发明还提供一种三维场景动态更新系统,如图2所示是该系统的结构示意图,包括两个客户端(客户端22、客户端23;在本实施例中只示出了两个客户端,实际应用中可包括多个客户端)和服务器21 ;两个所述客户端都与所述服务器21连接;客户端22用于对其显示的三维场景进行修改,将生成的修改数据发送给所述服务器21 ;用户客户端22对当前显示的三维场景进行修改,修改后将对应的修改数据发送至服务器21 ;所述服务器21用于接收并保存所述修改数据,同时发送更新消息至所述客户端·22 ;所述服务器21接收所述客户端22发送的修改数据并保存,更新服务器存储的三维场景的数据,同时发送更新消息至其他客户端23,提醒其他客户端23有数据更新。客户端23用于接收所述服务器21发送的更新消息,从所述服务器21下载所述修改数据,并根据所述修改数据对其显示的所述三维场景进行相应的修改;客户端23接收到更新消息后,即可从服务器21下载所述修改数据,解析该数据后,对其显示的三维场景进行相应的修改,实现各个客户端三维场景的实时更新、数据共享和互动操作。在一较佳实施例中,所述修改数据可包括对所述三维场景的操作指令;其中,所述操作指令包括放大指令、缩小指令、移动指令或标注指令等操作指令;本发明能够满足各个客户端进行协同操作或互动交流,比如在进行会议讨论,第一客户端22对其显示的三维场景进行的修改为放大、移动等指令操作,在这种情况下要求其他客户端23也能及时同时做出操作,保证信息交流的一致性;第一客户端21对其显示的三维场景进行操作,将该操作指令处理为一个修改数据包发送至服务器21,通过服务器21转发给其他客户端,其他客户端接收该修改数据包后进行解析,即可对其显示的三维场景进行同样的操作,保证了各个客户端对其显示的三维场景的一致性。在一较佳实施例中,所述修改数据还可包括对所述三维场景中的元素的修改指令;所述元素为三维场景中的各个模型以及全景图数据,在三维场景技术领域,各个模型及全景图数据在后台的数据保存形式都以元素为单位保存,一个元素包含了多个属性数据,通过元素的属性数据记录了该元素所包含的各种信息,如三维场景中的一个模型,该模型所包含的各种信息如位置坐标、长宽高、纹理贴图、名称等信息,都对应地一一地保存在该模型所对应的元素的属性数据中。本发明能够满足各个客户端对三维场景的信息交互;第一客户端22对三维场景中的元素进行修改,包括对三维场景中的全景图的纹理贴图、对三维场景中的模型进行纹理贴图、对模型的高度进行修改、在三维场景中的某个位置新建一模型等,将修改数据发送给服务器21 ;服务器21接收后解析该修改数据,对其存储的三维场景进行更新,同时发送更新消息至客户端23 ;客户端23接收到所述更新消息后,从所述服务器21下载所述修改数据,对所述修改数据进行解析,根据所述元素的修改指令对其显示的所述三维场景中的所述元素进行相应的修改。
在一较佳实施例中,所述服务器21可包括应用服务器和数据库,所述应用服务器接收所述修改数据并保存;其中,可将修改数据加载在内存缓存中;所述数据库根据所述修改数据更新其保存的所述三维场景,同时建立更新数据表;其中,所述更新数据表记录有所述三维场景中被修改的所述元素和所述被修改的元素中被修改的属性数据;数据库接收到修改数据后,更新数据库中已存储的三维场景数据;三维场景中的每个元素都以XML格式存储,包含了每个模型各个属性的信息,若修改数据为模型的基础数据,则相应地修改基础数据;若是新建或删除模型,则相应地新建或删除模型对应的XML文件;所述数据库接收所述修改数据后,还建立记录所述修改数据的更新数 据表;该更新数据表记录了更新的数据内容,比如说在某个时刻新建了一模型、在某个时刻对一模型进行了纹理图片更新、在某个时刻修改了一模型的高度等信息;客户端23接收所述更新消息后从所述应用服务器中下载所述修改数据,同时从所述数据库读取所述更新数据表,根据所述修改数据、所述被修改的元素和所述被修改的属性数据,对其显示的所述三维场景中的所述元素进行相应的修改。本发明三维场景动态更新方法和系统,任一客户端对三维场景的修改数据发送给服务器,服务器保存并加载,同时发送更新消息给其他客户端,其他客户端即可从服务器下载修改数据,对其显示的三维场景进行相应的修改;本发明可以使各个客户端的三维场景实时动态更新,解决了多个客户端不能直接协同互动和动态更新的问题,实现了信息的互动。以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
权利要求
1.ー种三维场景动态更新方法,其特征在于,包括如下步骤 第一客户端对其显示的三维场景进行修改,将生成的修改数据发送给服务器; 所述服务器接收并保存所述修改数据,同时发送更新消息至第二客户端; 所述第二客户端接收所述更新消息后,从所述服务器下载所述修改数据,根据所述修改数据对其显示的三维场景进行相应的修改。
2.根据权利要求I所述的三维场景动态更新方法,其特征在干, 所述修改数据包括对所述三维场景的操作指令;所述其他客户端接收到更新消息后从所述服务器下载所述修改数据,对所述修改数据进行解析,根据所述操作指令对其显示的所述三维场景进行相应的操作。
3.根据权利要求I所述的三维场景动态更新方法,其特征在干, 所述修改数据包括对所述三维场景中的元素的修改指令; 所述其他客户端接收到所述更新消息后,从所述服务器下载所述修改数据,对所述修改数据进行解析,根据所述元素的修改指令对其显示的所述三维场景中的所述元素进行相应的修改。
4.根据权利要求3所述的三维场景动态更新方法,其特征在干, 所述服务器接收并保存所述修改数据的步骤具体为 所述服务器包括应用服务器和数据库,所述应用服务器接收所述修改数据并保存;所述数据库根据所述修改数据更新其保存的所述三维场景,同时建立更新数据表;其中,所述更新数据表记录有所述三维场景中被修改的所述元素和所述被修改的元素中被修改的属性数据; 所述其他客户端从所述服务器下载所述修改数据后,根据所述修改数据更新所述三维场景并显示的步骤具体为 所述其他客户端接收所述更新消息后从所述应用服务器中下载所述修改数据,同时从所述数据库读取所述更新数据表,根据所述修改数据、所述被修改的元素和所述被修改的属性数据,对其显示的所述三维场景中的所述元素进行相应的修改。
5.根据权利要求4所述的三维场景动态更新方法,其特征在干,所述应用服务器接收到所述修改数据后,将所述修改数据保存在内存缓存中。
6.ー种三维场景动态更新系统,其特征在于,包括多个客户端和服务器;每个所述客户 端都与所述服务器连接; 所述客户端用于对其显示的三维场景进行修改,将生成的修改数据发送给所述服务器;或者用于接收所述服务器发送的更新消息,从所述服务器下载所述修改数据,井根据所述修改数据对其显示的所述三维场景进行相应的修改; 所述服务器用于接收并保存所述修改数据,同时发送所述更新消息至所述客户端。
7.根据权利要求6所述的三维场景动态更新系统,其特征在干, 所述修改数据为对所述三维场景的操作指令; 所述其他客户端具体用于接收到更新消息后从所述服务器下载所述修改数据,对所述修改数据进行解析,根据所述操作指令对其显示的所述三维场景进行相应的操作。
8.根据权利要求6所述的三维场景动态更新系统,其特征在干, 所述修改数据为对所述三维场景中的元素的修改指令;所述其他客户端具体用于接收到所述更新消息后,从所述服务器下载所述修改数据,对所述修改数据进行解析,根据所述元素的修改指令对其显示的所述三维场景中的所述元素进行相应的修改。
9.根据权利要求8所述的三维场景动态更新系统,其特征在干, 所述服务器包括应用服务器和数据库,所述应用服务器用于接收所述修改数据并保存;所述数据库用于根据所述修改数据更新其保存的所述三维场景,同时建立更新数据表;其中,所述更新数据表记录有所述三维场景中被修改的所述元素和所述被修改的元素中被修改的属性数据; 所述其他客户端具体用于接收所述更新消息后从所述应用服务器中下载所述修改数据,同时读取所述更新数据表,井根据所述修改数据、所述被修改的元素和所述被修改的属性数据,对其显示的所述三维场景中的所述元素进行相应的修改。
10.根据权利要求9所述的三维场景动态更新系统,其特征在于,所述应用服务器还用于接收到所述修改数据后,将所述修改数据加载在内存缓存中。
全文摘要
本发明提供一种三维场景动态更新方法,包括如下步骤第一客户端对其显示的三维场景进行修改,将生成的修改数据发送给服务器;所述服务器接收并保存所述修改数据,同时发送更新消息至第二客户端;所述第二客户端接收所述更新消息后,从所述服务器下载所述修改数据,根据所述修改数据对其显示的三维场景进行相应的修改。对应地本发明还提供一种三维场景动态更新系统。本发明任一客户端对三维场景的修改可快速地发布到其他客户端,三维场景能够实时动态更新。
文档编号H04L29/08GK102957748SQ20121044279
公开日2013年3月6日 申请日期2012年11月7日 优先权日2012年11月7日
发明者林良辉 申请人:广东威创视讯科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1