一种连续加载Web AR对象的方法、装置及设备制造方法及图纸

技术编号:19060948 阅读:37 留言:0更新日期:2018-09-29 12:59
本发明专利技术提供一种连续加载Web AR对象的方法、装置及设备。所述方法包括:在Web浏览器加载页面时,向远程服务器发送下载AR模型的请求;接收所述远程服务器根据所述下载AR模型的请求返回的AR模型数据;根据所述AR模型数据中的静态模型数据生成静态模型,并将所述AR模型数据中的模型动画数据绑定到所述静态模型;基于绑定了模型动画数据的所述静态模型,根据特定触发事件或在动画配置文件预先配置的时间节点在所述Web浏览器中渲染出3D动画模型。本发明专利技术避免出现在需要渲染3D模型时才开始下载、构建、加载3D模型再渲染一系列动作而产生严重延迟导致实时性差的问题,同时也均匀了Web浏览器的工作负载。

【技术实现步骤摘要】
一种连续加载WebAR对象的方法、装置及设备
本专利技术涉及虚拟现实
,更具体地,涉及一种连续加载WebAR对象的方法、装置及设备。
技术介绍
随着虚拟现实技术VR(VirtualReality)和增强现实AR技术(AugmentedRealty)的兴起和推广,对3D模型与虚拟或现实世界的互动提出很高要求。尤其是随着Web浏览器性能的提升、WebGL规范的完善,使得在Web浏览器上实现VR、AR互动成为可能,于是3D模型尤其是带动画效果的模型在Web浏览器上的实时加载和渲染显得尤为重要。WebGL(WebGraphicsLibrary)是一种3D绘图协议,WebGL的绘图技术标准允许把JavaScript和OpenGLES2.0结合在一起,通过增加OpenGLES2.0的一个JavaScript绑定,WebGL可以为HTML5Canvas提供硬件3D加速渲染,Web开发人员得以借助系统显卡来在Web浏览器中更流畅地展示3D场景和模型,并创建复杂的导航和数据视觉化。现有的在Web浏览器中加载并渲染3D动画模型的方法一般是,在用户与浏览器页面产生特定的交互事件时,浏览器从远程服务器一次性下载外部模型,读入内存并进行一系列操作,以完成模型的加载和动画的渲染,最终呈现在Web浏览器中。这种方法的优点在于可以根据需求选择在特定时刻在浏览器中渲染出指定模型,随用随下;但也存在明显的缺点:1.当外部模型的细节制作精致时,外部模型过大,甚至会高达上百兆,如果在产生特定交互事件需要加载模型时,才开始在Web浏览器中一次性下载模型并渲染速度会很慢,实时性几乎得不到保证。2.配置较低的移动设备上的浏览器在下载过大文件时,可能会存在卡顿甚至死机的风险。3.当同一模型需要连续播放不同动画时,一次性下载并渲染的方法会导致动画无法流畅播放,很难保证在VR、AR环境下的真实性。目前,现有技术还没有相应的方法来实现在Web浏览器上连续加载渲染多个带动画的3D模型的方案。
技术实现思路
本专利技术提供一种克服上述问题或者至少部分地解决上述问题的连续加载WebAR对象的方法、装置及设备。根据本专利技术的一个方面,提供一种连续加载WebAR对象的方法,包括:在Web浏览器加载页面时,向远程服务器发送下载AR模型的请求;接收所述远程服务器根据所述下载AR模型的请求返回的AR模型数据;根据所述AR模型数据中的静态模型数据生成静态模型,并将所述AR模型数据中的模型动画数据绑定到所述静态模型;基于绑定了模型动画数据的所述静态模型,根据特定触发事件或在动画配置文件中预先配置的时间节点在所述Web浏览器中渲染出3D动画模型。根据本专利技术的另一个方面,还提供一种连续加载WebAR对象的装置,包括:模型请求模块,用于在Web浏览器加载页面时,向远程服务器发送下载AR模型的请求;数据接收模块,用于接收所述远程服务器根据所述下载AR模型的请求返回的AR模型数据;模型预处理模块,用于根据所述AR模型数据中的静态模型数据生成静态模型,并将所述AR模型数据中的模型动画数据绑定到所述静态模型;以及3D渲染模块,用于基于绑定了模型动画数据的所述静态模型,根据特定触发事件或在动画配置文件预先配置的时间节点在所述Web浏览器中渲染出3D动画模型。根据本专利技术的另一个方面,还提供一种电子设备,包括:至少一个处理器;以及与所述处理器通信连接的至少一个存储器,其中:所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行本专利技术连续加载WebAR对象的方法及其任一可选实施例的方法。根据本专利技术的另一个方面,提供一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行本专利技术连续加载WebAR对象的方法及其任一可选实施例的方法。本专利技术提出一种连续加载WebAR对象的方法,通过预先从服务器端下载3D模型、预先构建静态3D模型、预先读取模型动画内容,于需要渲染在Web时直接渲染展示,避免出现在需要渲染3D模型时才开始下载、构建、加载3D模型再渲染一系列动作而产生严重延迟导致实时性差的问题,同时也均匀了Web浏览器的工作负载,让部分性能较差的移动端设备上的浏览器也可以较快地加载3D模型甚至模型动画。附图说明图1为本专利技术实施例一种连续加载WebAR对象的方法流程示意图;图2为本专利技术实施例Web浏览器上连续加载渲染多个带动画的3D模型的流程示意图;图3为本专利技术实施例一种连续加载WebAR对象的方法的具体实施例示意图;图4为本专利技术实施例一种电子设备的框架示意图。具体实施方式下面结合附图和实施例,对本专利技术的具体实施方式作进一步详细描述。以下实施例用于说明本专利技术,但不用来限制本专利技术的范围。图1为本专利技术实施例一种连续加载WebAR对象的方法流程示意图,如图1所示的连续加载WebAR对象的方法,包括:S100,在Web浏览器加载页面时,向远程服务器发送下载AR模型的请求;具体的,本专利技术实施例在Web浏览器加载页面的同时,向远程服务器发送下载AR模型的请求,该请求为异步请求,不会影响浏览器的正常显示。具体的,如果有动画配置文件,则在Web浏览器加载页面时,向远程服务器发送下载AR模型和动画配置文件的请求。S200,接收所述远程服务器根据所述下载AR模型的请求返回的AR模型数据;具体的,远程服务器接收到下载AR模型的请求后,将所请求的AR模型以字符流形式返回给请求端。S300,根据所述AR模型数据中的静态模型数据生成静态模型,并将所述AR模型数据中的模型动画数据绑定到所述静态模型;图2为本专利技术实施例Web浏览器上连续加载渲染多个带动画的3D模型的流程示意图,请参考图2,步骤S300对接收的AR模型数据进行处理,具体的,是将AR模型数据分为两部分数据,一部分为静态模型数据,一部分为模型动画数据,这两部分数据需要分别处理,根据静态模型数据构建静态模型,然后将模型动态数据绑定到已构建的静态模型。S400,基于绑定了模型动画数据的所述静态模型,根据特定触发事件或在动画配置文件预先配置的时间节点在所述Web浏览器中渲染出3D动画模型。在3D动画播放之前,步骤S100至S300预先构建静态3D模型、预先读取模型动画内容,一旦特定触发事件发生,浏览器就可以快速的响应,实现3D效果渲染。具体的,所述特定触发事件,可以是用户在Web浏览器上点击开始播放3D动画的事件,或者定时事件,或者其他事件等等,在此不做具体限定。本专利技术实施例通过预先从服务器端下载3D模型、预先构建静态3D模型、预先读取模型动画内容,于需要渲染在Web时直接渲染展示,避免出现在需要渲染3D模型时才开始下载、构建、加载3D模型再渲染一系列动作而产生严重延迟导致实时性差的问题,同时也均匀了Web浏览器的工作负载,让部分性能较差的移动端设备上的浏览器也可以较快地加载3D模型甚至模型动画。在一个可选的实施例中,步骤S100,所述在Web浏览器加载页面时,向远程服务器发送下载AR模型的请求,具体包括:在Web浏览器加载页面时,开启一个或多个子线程、利用HTTP请求向远程服务器发送下载AR模型的请求。具体的,在Web浏览器加载页面的同时,可以开启一个子线程用HTTP请求去异步下载远程服务器本文档来自技高网
...

【技术保护点】
1.一种连续加载Web AR对象的方法,其特征在于,包括:在Web浏览器加载页面时,向远程服务器发送下载AR模型的请求;接收所述远程服务器根据所述下载AR模型的请求返回的AR模型数据;根据所述AR模型数据中的静态模型数据生成静态模型,并将所述AR模型数据中的动画数据绑定到所述静态模型;基于绑定了动画数据的所述静态模型,根据特定触发事件或在动画配置文件预先配置的时间节点在所述Web浏览器中渲染出3D动画模型。

【技术特征摘要】
1.一种连续加载WebAR对象的方法,其特征在于,包括:在Web浏览器加载页面时,向远程服务器发送下载AR模型的请求;接收所述远程服务器根据所述下载AR模型的请求返回的AR模型数据;根据所述AR模型数据中的静态模型数据生成静态模型,并将所述AR模型数据中的动画数据绑定到所述静态模型;基于绑定了动画数据的所述静态模型,根据特定触发事件或在动画配置文件预先配置的时间节点在所述Web浏览器中渲染出3D动画模型。2.根据权利要求1所述的方法,其特征在于,所述在Web浏览器加载页面时,向远程服务器发送下载AR模型的请求,具体包括:在Web浏览器加载页面时,开启一个或多个子线程、利用HTTP请求向远程服务器发送下载AR模型的请求。3.根据权利要求1所述的方法,其特征在于,所述根据所述AR模型数据中的静态模型数据生成静态模型,并将所述AR模型数据中的模型动画数据绑定到所述静态模型,具体包括:截取所述AR模型数据中静态数据部分和动画数据部分;其中,所述静态数据部分为静态模型数据,包括模型的顶点数组信息;所述动画数据部分为模型动画数据;将所述静态数据部分和所述动画数据部分转换为渲染格式,获得渲染格式的静态数据和渲染格式的动画数据;根据所述渲染格式的静态数据获取模型的顶点数据,根据所述顶点数据生成静态模型;将所述渲染格式的动画数据添加进动画数组,将所述动画数组绑定到所述静态模型。4.根据权利要求3所述的方法,其特征在于,所述AR模型数据包括一个或多个AR模型的数据;相应的,所述将所述静态数据部分和所述动画数据部分转换为渲染格式,获得渲染格式的静态数据和渲染格式的动画数据,具体包括:对于一个或多个AR模型,若所述AR模型带有一个或多个动画,将每个AR模型的静态数据部分转换为一份渲染格式的静态数据,将每个AR模型的一个或多个动画数据部分对应的转换为一份或多份渲染格式的动画数据。5.根据权利要求3所述的方法,其特征在于,所述根据所述渲染格式的静态数据获取模型的顶点数据,根据所述顶点数据生成静态模型,具体包括:将所述静态数据中的顶点数组信息的所有顶点数据添加到模型顶点数组,并根据WebGL标准生成模型的顶点,其中所述顶点数组信息中的每三个数据为模型的一个顶点的三维坐标信息;根据所述模型顶点数组的顶点数据,将每三个顶点拼接成面片,将所有面片添...

【专利技术属性】
技术研发人员:商彦磊乔秀全魏晨
申请(专利权)人:北京邮电大学
类型:发明
国别省市:北京,11

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

1