模型的加载方法、服务器及终端技术

技术编号:21547520 阅读:22 留言:0更新日期:2019-07-06 21:14
本发明专利技术实施例提供一种模型的加载方法,应用于服务器,所述加载方法包括:对模型进行分层,获得不同精度的分层模型,每个分层模型由对应精度的三角面片组成;按照分层模型由粗到细的精度,对所有三角面片的顶点数据进行双标记;其中,第一标记信息为顶点数据所属最粗粒度的分层模型的编号,第二标记信息为顶点数据在预设顶点序列中的序号;接收终端发送的下载请求,请求中记录终端的加载条件参数,根据加载条件参数选择目标分层模型的顶点数据返回给终端,以供终端加载;其中,目标分层模型的精度与加载条件参数正相关。本发明专利技术实施例解决了传统方案中性能较低、网络环境较差的终端在加载及渲染精细度较高的模型时可能存在的卡顿现象。

Loading Method, Server and Terminal of the Model

【技术实现步骤摘要】
模型的加载方法、服务器及终端
本专利技术实施例涉及计算机
,更具体地,涉及一种模型的加载方法、服务器及终端。
技术介绍
虚拟现实技术VR(VirtualReality)和增强现实AR技术(AugmentedRealty)的兴起和推广,对模型与虚拟或现实世界的互动提出很高要求。随着计算机图形学的发展、终端GL规范的完善,使得在终端浏览器上实现VR、AR互动成为可能,于是在终端浏览器尤其是移动端终端浏览器中实现较高性能不卡顿的实时加载和渲染显得尤为重要。现有的移动端终端浏览器中加载渲染模型的方法是,在用户与浏览器页面产生特定的交互事件时,浏览器从远程服务器下载模型,读入内存并进行一系列操作,完成模型的加载和渲染,最终呈现在终端浏览器中。在这种方案中,模型一次加载完成。但此方法也存在明显的缺点:1、当模型的细节制作细致时,顶点和面片的数据量较大,甚至有时会高达上百兆。在这种情况下,网络环境较差的用户下载延迟较大,实时性得不到保证的同时用户体验也很差。2、当模型的细节制作细致时,顶点和面片数量较大,对设备的CPU及GPU都提出较高要求。在这种情况下,性能较低的移动设备的浏览器将出现较严重的卡顿掉帧现象,流畅性和真实性将大幅降低。3、当模型数量较多时,由于所有模型都默认保持高精度,所以性能会随着模型数量的增加而降低。
技术实现思路
本专利技术实施例提供一种克服上述问题或者至少部分地解决上述问题的模型的加载方法、服务器及终端。第一个方面,本专利技术实施例提供一种模型的加载方法,应用于服务器,所述加载方法包括:对模型进行分层,获得不同精度的分层模型,每个分层模型由对应精度的三角面片组成;按照分层模型由粗到细的精度,对所有三角面片的顶点数据进行双标记;其中,第一标记信息为顶点数据所属最粗粒度的分层模型的编号,第二标记信息为顶点数据在预设顶点序列中的序号;接收终端发送的下载请求,所述请求中记录终端的加载条件参数,根据所述加载条件参数选择目标分层模型的顶点数据返回给终端,以供终端加载;其中,所述目标分层模型的精度与所述加载条件参数正相关。第二个方面,本专利技术实施例提供一种模型的加载方法,应用于终端,所述加载方法包括:向服务器发送下载请求,所述请求中记录终端的加载条件参数;接收所述服务器根据所述下载请求返回的目标分层模型的顶点数据;根据接收到的顶点数据的序号,按升序将每三个顶点数据形成一个三角面片,以获得待展示的模型;其中,所述顶点数据中具有两个标记信息,其中第一标记信息为顶点数据所属最粗粒度的分层模型的编号,第二标记信息为顶点数据在预设顶点序列中的序号。第三方面,本专利技术实施例提供一种服务器,包括:分层模块,用于对模型进行分层,获得不同精度的分层模型,每个分层模型由对应精度的三角面片组成;标记模块,用于按照分层模型由粗到细的精度,对所有三角面片的顶点数据进行双标记;其中,第一标记信息为顶点数据所属最粗粒度的分层模型的编号,第二标记信息为顶点数据在预设顶点序列中的序号;传输模块,用于接收终端发送的下载请求,所述请求中记录终端的加载条件参数,根据所述加载条件参数选择目标分层模型的顶点数据返回给终端,以供终端加载;其中,所述目标分层模型的精度与所述加载条件参数正相关。第四方面,本专利技术实施例提供一种终端,包括:请求模块,用于向服务器发送下载请求,所述请求中记录终端的加载条件参数;接收模块,用于接收所述服务器根据所述下载请求返回的目标分层模型的顶点数据;展示模块,用于根据接收到的顶点数据的序号,按升序将每三个顶点数据形成一个三角面片,以获得待展示的模型;其中,所述顶点数据中具有两个标记信息,其中第一标记信息为顶点数据所属最粗粒度的分层模型的编号,第二标记信息为顶点数据在预设顶点序列中的序号。第五方面,本专利技术实施例提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如第一方面或第二方面所提供的方法的步骤。第六方面,本专利技术实施例提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面或第二方面所提供的方法的步骤。本专利技术实施例提供的模型加载方法,通过在服务器端以双标记位的方法对模型进行分层次的预处理、根据加载条件参数自适应下载并构建渲染不同层次的模型、根据实际渲染情况动态调整模型层次等步骤来解决传统方案中性能较低、网络环境较差的终端在加载及渲染精细度较高的模型时可能存在的卡顿现象。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例提供的模型的加载方法的流程示意图;图2为本专利技术实施例的同一三维模型在不同层次下的结构示意图;图3为本专利技术另一个实施例的模型的加载方法的流程示意图;图4为本专利技术实施例提供的服务器的结构示意图;图5为本专利技术实施例提供的终端的结构示意图;图6为本专利技术实施例提供的电子设备的实体结构示意图。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。图1为本专利技术实施例提供的模型的加载方法的流程示意图,该加载方法应用于服务器,如图1所示,所述加载方法包括:S101、对模型进行分层,获得不同精度的分层模型,每个分层模型由对应精度的三角面片组成。需要说明的是,本专利技术实施例的加载方法由服务器执行,相对于终端侧执行的加载方法,更属于对模型的预处理过程。在本专利技术实施例中,模型可以是二维模型,也可以是三维模型,通过对模型进行分层,实现按照终端侧的不同需求提供不同精度的模型。本专利技术实施例对每一个分层模型设置层次号,层次号和分层规则直接存在对应关系,例如,分层号越大,则分层模型内顶点数据越多,包含的面片越多,细节越细致。图2为本专利技术实施例的同一三维模型在不同层次下的结构示意图,其中a为三维模型在层次1下的分层结果:只有1个面片;b为三维模型在层次2下的分组结果:共有4个三角面片;c为三维模型在层次3下的分组结果:共有16个三角面片。S102、按照分层模型由粗到细的精度,对所有三角面片的顶点数据进行双标记;其中,第一标记信息为顶点数据所属最粗粒度的分层模型的编号,第二标记信息为顶点数据在预设顶点序列中的序号。以图2所示的三维模型为例,首先对a中三个顶点分别标记第一标记信息,然后对b中的四个三角面片中尚未标记第一标记信息的顶点数据标记第一标记信息,最后对c中16个三角面片中尚未标记第一标记信息的顶点数据标记第一标记信息。0~12为本专利技术实施例中各顶点数据的第二标记信息,从图2中可以看出,本专利技术实施例是按照三角面片的产生顺序标记的第二标记信息。本专利技术实施例通过对顶点数据设置双标记,使得顶点数据一方面具有了分层属性,使得后续在需要提取某一分层模型时,可以根据第一标记信息提本文档来自技高网...

【技术保护点】
1.一种模型的加载方法,应用于服务器,其特征在于,所述加载方法包括:对模型进行分层,获得不同精度的分层模型,每个分层模型由对应精度的三角面片组成;按照分层模型由粗到细的精度,对所有三角面片的顶点数据进行双标记;其中,第一标记信息为顶点数据所属最粗粒度的分层模型的编号,第二标记信息为顶点数据在预设顶点序列中的序号;接收终端发送的下载请求,所述请求中记录终端的加载条件参数,根据所述加载条件参数选择目标分层模型的顶点数据返回给终端,以供终端加载;其中,所述目标分层模型的精度与所述加载条件参数正相关。

【技术特征摘要】
1.一种模型的加载方法,应用于服务器,其特征在于,所述加载方法包括:对模型进行分层,获得不同精度的分层模型,每个分层模型由对应精度的三角面片组成;按照分层模型由粗到细的精度,对所有三角面片的顶点数据进行双标记;其中,第一标记信息为顶点数据所属最粗粒度的分层模型的编号,第二标记信息为顶点数据在预设顶点序列中的序号;接收终端发送的下载请求,所述请求中记录终端的加载条件参数,根据所述加载条件参数选择目标分层模型的顶点数据返回给终端,以供终端加载;其中,所述目标分层模型的精度与所述加载条件参数正相关。2.根据权利要求1所述的加载方法,其特征在于,所述对模型进行分层,获得不同精度的分层模型,具体为:根据由粗到细的顺序对所述模型进行分层,在每次进行下一次分层前,对已分层的模型中的三角面片的顶点数据标记所述第一标记信息和第二标记信息。3.根据权利要求1所述的加载方法,其特征在于,所述根据所述加载条件参数选择对应的分层模型的顶点数据返回给终端,具体为:建立不同加载条件参数的取值范围与各分层模型的一一对应关系;当接收的所述加载条件参数时,根据所述对应关系获得对应的分层模型,结合精度小于所述对应的分层模型作为所述目标分层模型;将所述目标分层模型中所有三角面片的顶点数据返回给终端。4.一种模型的加载方法,应用于终端,所述加载方法包括:向服务器发送下载请求,所述请求中记录终端的加载条件参数;接收所述服务器根据所述下载请求返回的目标分层模型的顶点数据;根据接收到的顶点数据的序号,按升序将每三个顶点数据形成一个三角面片,以获得待展示的模型;其中,所述顶点数据中具有两个标记信息,其中第一标记信息为顶点数据所属最粗粒度的分层模型的编号,第二标记信息为顶点数据在预设顶点序列中的序号。5.根据权利要求4所述的加载方法,其特征在于,还包括:建立虚拟相机与所述待展示的模型的距离范围与各分层模型的一一对应关系;在获得所述待展示的模型后,监测当前所述虚拟相机与所述待展示的模型的距离,根据所述距离确定对应的分层模型,作为基准模型;判断所述基准模型与所述待展示的模型的精度高低,根据判断结果以及终端当前的加载条件参数,调整待展示的模型的加载结果。6.根据权利要求4所述的加载方法,其特征在于,所述根据判断结果以及终端当前的加载条件参数,调整待展示的模型...

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

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

1