一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

虚拟现实界面的加载方法、装置、设备和介质与流程

2022-02-19 04:31:34 来源:中国专利 TAG:


1.本公开涉及虚拟现实领域,并且更具体地涉及一种虚拟现实界面的加载方法、装置、设备、介质和计算机程序产品。


背景技术:

2.如今,虚拟现实(virtual reality,vr)技术已经广泛应用于各种领域。例如,在房产经纪领域中,用户可以利用虚拟现实技术来查看房源的三维全景,并且能够身临其境般地在房间内漫游,从而给用户带来接近真实的观看体验。
3.在传统的支持vr展示的设备或应用程序中,当用户选择查看目标对象(诸如某个房间)的vr界面时,首先需要建立一个网页视图(webview),然后在该webview中加载并渲染目标对象的vr界面,这两部分操作都需要一定的处理时间,尤其是在网络环境较差的情况下,处理时间会进一步延长,这导致在最终向用户呈现vr界面之前存在较长的白屏时间,从而严重影响用户体验。


技术实现要素:

4.为了解决上述问题,本公开提供了一种虚拟现实界面的加载方法、装置、设备、介质和计算机程序产品。
5.根据本公开实施例的一个方面,提供了一种虚拟现实界面的加载方法,包括:接收对目标对象的虚拟现实界面的展示请求;响应于接收到所述展示请求,获取所述目标对象的多个图像;基于所述多个图像,生成包括所述目标对象的立体视图的遮罩界面,并展示所述遮罩界面;在所述遮罩界面的展示期间,基于所述多个图像,加载并渲染所述目标对象的所述虚拟现实界面;以及在所述虚拟现实界面的渲染完成之后,隐藏所述遮罩界面,并展示所述目标对象的所述虚拟现实界面。
6.根据本公开实施例的示例,其中,所述多个图像为表示目标对象在不同方位上的视图的多个图像。
7.根据本公开实施例的示例,其中,所述遮罩界面可旋转以展示所述目标对象在不同方位上的视图。
8.根据本公开实施例的示例,其中,所述虚拟现实界面可缩放和旋转以便以不同的视场角展示所述目标对象在不同方位上的虚拟现实视图,并且所述虚拟现实界面具有一个或多个用户可交互模块。
9.根据本公开实施例的示例,其中,基于所述多个图像,生成包括所述目标对象的立体视图的遮罩界面包括:利用所述多个图像中的每个图像生成所述遮罩界面的所述立体视图中的每个视图。
10.根据本公开实施例的示例,其中,在所述虚拟现实界面的渲染完成之后,隐藏所述遮罩界面并展示所述目标对象的所述虚拟现实界面包括:在所述虚拟现实界面的渲染完成之后,获取所述目标对象的所述遮罩界面的视觉参数;以及隐藏所述遮罩界面,并基于所述
视觉参数展示所述目标对象的所述虚拟现实界面,以使所展示的虚拟现实界面中的目标对象与所述遮罩界面中的目标对象的视觉效果保持一致。
11.根据本公开实施例的示例,其中,所述视觉参数至少包括在所述遮罩界面中的所述目标对象的当前视场角、当前方位角、当前转向和当前转速。
12.根据本公开实施例的示例,其中,基于所述视觉参数展示所述目标对象的所述虚拟现实界面,以使所展示的虚拟现实界面中的目标对象与所述遮罩界面中的目标对象的视觉效果保持一致包括:以在所述遮罩界面中的所述目标对象的当前视场角、当前方位角、当前转向和当前转速来展示所述虚拟现实界面中的所述目标对象,以使所述虚拟现实界面中的目标对象与所述遮罩界面中的目标对象的视场角、方位角、转速和转向保持一致。
13.根据本公开实施例的示例,其中,响应于接收到所述展示请求,获取所述目标对象的多个图像包括:响应于接收到所述展示请求,预加载所述目标图像的所述多个图像,并将所述多个图像存储到缓存中;并且其中,在所述遮罩界面的展示期间,基于所述多个图像,加载并渲染所述目标对象的所述虚拟现实界面包括:从所述缓存中获取所述多个图像,并基于所述多个图像,加载并渲染所述目标对象的所述虚拟现实界面。
14.根据本公开实施例的示例,其中,所述目标对象为建筑物的房间,所述遮罩界面为表示目标对象的全景立体视图的六面体界面。
15.根据本公开实施例的另一方面,提供了一种虚拟现实界面的加载装置,包括:接收单元,被配置为接收对目标对象的虚拟现实界面的展示请求;获取单元,被配置为响应于接收到所述展示请求,获取所述目标对象的多个图像;展示单元,被配置为基于所述多个图像,生成包括所述目标对象的立体视图的遮罩界面,并展示所述遮罩界面;以及渲染单元,被配置为在所述遮罩界面的展示期间,基于所述多个图像,加载并渲染所述目标对象的所述虚拟现实界面,所述展示单元还被配置为在所述虚拟现实界面的渲染完成之后,隐藏所述遮罩界面,并展示所述目标对象的所述虚拟现实界面。
16.根据本公开实施例的示例,其中,所述展示单元还被配置为:在所述虚拟现实界面的渲染完成之后,获取所述目标对象的所述遮罩界面的视觉参数;以及隐藏所述遮罩界面,并基于所述视觉参数展示所述目标对象的所述虚拟现实界面,以使所展示的虚拟现实界面中的目标对象与所述遮罩界面中的目标对象的视觉效果保持一致。
17.根据本公开实施例的示例,其中,所述视觉参数至少包括在所述遮罩界面中的所述目标对象的当前视场角、当前方位角、当前转向和当前转速。
18.根据本公开实施例的示例,其中,所述展示单元还被配置为:以在所述遮罩界面中的所述目标对象的当前视场角、当前方位角、当前转向和当前转速来展示所述虚拟现实界面中的所述目标对象,以使所述虚拟现实界面中的目标对象与所述遮罩界面中的目标对象的视场角、方位角、转速和转向保持一致。
19.根据本公开实施例的另一方面,提供了一种虚拟现实界面的加载设备,包括:一个或多个处理器;以及一个或多个存储器,其中所述存储器中存储有计算机可读指令,所述计算机可读指令在由所述一个或多个处理器运行时,使得所述一个或多个处理器执行上述各个方面中所述的方法。
20.根据本公开实施例的另一方面,提供了一种计算机可读存储介质,其上存储有计算机可读指令,所述计算机可读指令在被处理器执行时,使得所述处理器执行如本公开上
述各个方面中任一项所述的方法。
21.根据本公开实施例的另一方面,提供了一种计算机程序产品,其中包括计算机可读指令,所述计算机可读指令在被处理器执行时,使得所述处理器执行如本公开上述各个方面中任一项所述的方法。
22.利用根据本公开实施例的上述各个方面的虚拟现实界面的加载方法、装置、设备、介质和计算机程序产品,通过快速生成目标对象的遮罩界面并先展示给用户,同时在遮罩界面的展示期间后台加载渲染目标对象的虚拟现实界面,并在虚拟现实界面渲染完成后,隐藏遮罩界面并展示虚拟现实界面,可以有效解决在加载渲染虚拟现实界面期间的白屏时间问题;同时,通过遮罩界面到虚拟现实界面的平滑过渡、无缝衔接,使得用户并不会感知到从遮罩界面到虚拟现实界面的切换,从而最大化地提升用户体验。
附图说明
23.通过结合附图对本公开实施例进行更详细的描述,本公开实施例的上述以及其它目的、特征和优势将变得更加明显。附图用来提供对本公开实施例的进一步理解,并且构成说明书的一部分,与本公开实施例一起用于解释本公开,并不构成对本公开的限制。在附图中,相同的参考标号通常代表相同部件或步骤。
24.图1示出了根据本公开实施例的虚拟现实界面的加载方法的流程图;
25.图2示出了根据本公开实施例的示例的遮罩界面和虚拟现实界面的示意图;
26.图3示出了根据本公开实施例的虚拟现实界面的加载装置的结构示意图;
27.图4示出了根据本公开实施例的虚拟现实界面的加载设备的结构示意图;
28.图5示出了根据本公开实施例的计算机可读存储介质的示意图。
具体实施方式
29.下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本公开一部分的实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在无需创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
30.在传统的支持vr展示的设备或应用程序中,当用户选择查看目标对象(诸如某个房间)的vr界面时,在向用户最终呈现目标对象的vr界面之前,往往存在白屏时间,在此白屏时间内,用户只能看见空白屏幕,并等待vr界面的最终呈现。白屏时间通常由两部分构成,一是建立网页视图(webview)所需的时间,二是在该webview中加载并渲染目标对象的vr界面所需的时间。白屏时间的存在严重影响了用户观看vr界面的体验,尤其是在网络环境较差的情况下,白屏时间会进一步延长,用户等待vr界面的时间也随之增加,这进一步恶化了用户体验。
31.为此,本公开提供了一种虚拟现实界面的加载方法、装置、设备、介质和计算机程序产品,能够有效解决白屏时间问题,大大提升用户体验。
32.下面,首先参照图1描述根据本公开实施例的虚拟现实界面的加载方法。图1示出了根据本公开实施例的虚拟现实界面的加载方法100的流程图。加载100可以以软件、硬件、固件或其任意组合的方式来实现,例如可以由智能手机、平板计算机、笔记本计算机、台式
计算机、网络服务器、个人数字助理(personal digital assistant,pda)、智能可穿戴设备等来执行,本公开实施例对此不作具体限制。
33.如图1所示,在步骤s110中,接收对目标对象的虚拟现实界面的展示请求。在本公开实施例中,目标对象可以是任意要展示其虚拟现实界面的对象,例如可以是建筑物的房间等等。例如,用户如果期望查看建筑物房间的虚拟现实界面,则可以通过位于执行加载方法100的设备上的用户界面或者控件来发送展示请求。应当理解的是,这里以目标对象为建筑物房间作为示例,但本公开实施例并不限于此,目标对象也可以是任意其他可以利用虚拟现实技术来展示其虚拟现实界面的对象。
34.在步骤s120中,响应于接收到展示请求,获取目标对象的多个图像。在本公开实施例中,目标对象的多个图像可以是表示目标对象在不同方位上的视图的多个图像,例如多个图像可以包括目标对象的左视图、右视图、前视图、后视图、顶视图以及俯视图等等。在目标对象是建筑物房间的示例中,多个图像可以包括房间的6个视图,即左视图、右视图、前视图、后视图、顶视图以及俯视图,这6个视图囊括了建筑物房间的所有景象。在本公开实施例中,目标对象的多个图像例如可以是由摄像机获取的,并且可以预先存储在存储设备中或者服务器中,则响应于接收到展示请求,可以从存储设备直接获取这多个图像,或者从服务器快速加载这多个图像。
35.之后,在步骤s130中,基于所获取的多个图像,生成包括目标对象的立体视图的遮罩界面,并展示该遮罩界面。在本公开实施例中,目标对象的多个图像中的每个图像可以构成遮罩界面的立体视图中的每个视图,由于该多个图像可以表示目标对象在不同方位上的视图,从而该遮罩界面可以展示目标对象的立体景象。例如,在多个图像包括6个视图的情况下,遮罩界面可以是表示目标对象的全景立体视图的六面体界面,其中目标对象的6个视图中的每个视图构成六面体的一个面。该遮罩界面可以旋转,例如自行旋转或者通过用户操作来以不同方向和速度旋转,以展示目标对象在不同方位上的视图。
36.需要说明的是,虽然上面以目标对象的多个视图包括6个视图、并且遮罩界面为六面体界面为例进行了说明,但本公开实施例并不限于此,目标对象的多个视图可以包括更多或者更少的视图,并且基于该多个视图所生成的遮罩界面也可以是任意多面体或者任意立体结构的界面。
37.以目标对象是建筑物房间为例,例如,在步骤s120中获取的多个图像可以包括房间的左视图、右视图、前视图、后视图、顶视图以及俯视图这6个视图,则可以基于这6个视图,生成包括表示房间的全景立体视图的遮罩界面,该遮罩界面为六面体,并且可以旋转该六面体,以展示房间在各个方位上的视图。
38.在用户例如通过位于执行加载方法100的设备上的用户界面或者控件来发送对目标对象的虚拟现实界面的展示请求之后,可以首先通过步骤s120和s130的操作快速生成目标对象的遮罩界面,并呈现给用户,以避免在渲染完成目标对象的虚拟现实界面之前只能给用户呈现白屏界面。
39.同时,在步骤s140中,在遮罩界面的展示期间,加载并渲染目标对象的虚拟现实界面。如前所述,生成目标对象的虚拟现实界面可以包括两个过程,即建立webview,并在该webview中加载渲染目标对象的虚拟现实界面,这两个过程均可以在步骤s140中进行,并且步骤s140例如可以通过执行加载方法100的设备的处理器来进行。并且,在遮罩界面的展示
期间,对目标对象的虚拟现实界面的加载和渲染是在后台进行的,因而并不会影响遮罩界面的展示,也不会使得用户感知到该加载渲染过程。
40.根据本公开实施例的示例,在步骤s120中获取到目标对象的多个图像之后,可以将该多个图像存储到缓存中;则在步骤s140中,可以从缓存中直接获取上述多个图像,并基于多个图像来加载渲染目标对象的虚拟现实界面。通过对所获取的多个图像进行复用,可以进一步加快生成虚拟现实界面的速度,提高加载效率。
41.在步骤s150中,在目标对象的虚拟现实界面的渲染完成之后,隐藏遮罩界面,并展示目标对象的虚拟现实界面。
42.如前所述,目标对象的遮罩界面可以旋转以展示目标对象在不同方位上的视图。同样,目标对象的虚拟现实界面也可以旋转,以展示目标对象在不同方位上的虚拟现实视图。此外,目标对象的虚拟现实界面还可以进行缩放等操作,以便以不同的视场角展示目标对象在不同方位上的虚拟现实视图。并且,目标对象的虚拟现实界面还可以具有一个或多个用户可交互模块,以便用户通过该一个或多个用户可交互模块发起基于该虚拟现实界面的交互操作。
43.在用户发出对目标对象的虚拟现实界面的展示请求之后,通过快速生成目标对象的遮罩界面并先展示给用户,同时在遮罩界面的展示期间后台加载渲染目标对象的虚拟现实界面,并在虚拟现实界面渲染完成后,隐藏遮罩界面并展示虚拟现实界面,可以有效解决在加载渲染虚拟现实界面期间的白屏时间问题。此外,为了进一步提升用户体验,希望用户对从遮罩界面到虚拟现实界面的切换过程无感知,则需要使遮罩界面与之后展示的虚拟现实界面能够无缝衔接,平滑过渡。
44.具体地,在目标对象的虚拟现实界面的渲染完成之后,例如可以通过webview发出指示虚拟现实界面的渲染已完成的指令。响应于接收到该指令,可以获取目标对象的遮罩界面的当前的视觉参数,其中,视觉参数至少可以包括在遮罩界面中的目标对象的当前视场角、当前方位角、当前转向、当前转速等等。当前视场角可以表示用户当前查看目标对象的视场大小或者缩放比例;当前方位角可以表示用户当前查看目标对象的具体方位,例如在遮罩界面为六面体界面的示例中,可以表示用户查看的是六面体的哪个面;如前所述,遮罩界面可以旋转,则当前转向和当前转速则表示遮罩界面,或者更具体地遮罩界面中的目标对象的当前转向和当前转速。
45.在获取到目标对象的遮罩界面的视觉参数之后,则可以隐藏遮罩界面,并基于该视觉参数来展示目标对象的虚拟现实界面,以使得所展示的虚拟现实界面中的目标对象与遮罩界面中的目标对象的视觉效果保持一致。也就是说,可以以在遮罩界面中的目标对象的当前视场角、当前方位角、当前转向和当前转速来展示虚拟现实界面中的目标对象,以使虚拟现实界面中的目标对象与遮罩界面中的目标对象的视场角、方位角、转速和转向保持一致。
46.通过上述操作,在从遮罩界面切换到虚拟现实界面的前后,目标对象的视场角、方位角、转向、转速等均保持一致,即目标对象的视觉效果对用户来说是完全相同的,并且遮罩界面和虚拟现实界面能够响应同样的用户操作。从而用户并不会感知到从遮罩界面到虚拟现实界面的切换,使得用户体验最优。
47.参照图2以目标对象为建筑物房间进行进一步说明。图2示出了根据本公开实施例
的示例的遮罩界面和虚拟现实界面的示意图。在该示例中,用户在发出对某一房间的虚拟现实展示请求之后,首先根据如上述步骤s110

s130中所述的方法,生成该房间的遮罩界面,该遮罩界面为表示房间的立体视图的六面体。该六面体可以以一定的设定转速自行旋转,或者用户可以操作来使得六面体旋转,以查看房间的某一方位的视图。例如,用户可以旋转六面体以查看房间在方位角β上的视图,如图2(a)所示。
48.在房间的遮罩界面的展示期间,可以根据上述步骤s140来在后台加载并渲染房间的虚拟现实界面,并在渲染完成后,隐藏遮罩界面,展示虚拟现实界面。如在上述步骤s150中所描述,在从遮罩界面切换到虚拟现实界面之前,可以获取遮罩界面中的目标对象的当前视场角、当前方位角、当前转向、当前转速等视觉参数,并使得之后展示的虚拟现实界面与遮罩界面中的视觉效果一致。例如,假定在从房间的遮罩界面切换到虚拟现实界面之前,用户查看房间的视场角为α,方位角为β,转向为顺时针,转速为r,如图2(a)所示;则切换到虚拟现实界面之后,可以使得虚拟现实界面中房间的视场角也为α,方位角也为β,转向也为顺时针,并且转速也为r,如图2(b)所示。
49.这样,在切换前后,由于从遮罩界面到虚拟现实界面的这种平滑过渡,用户所看到的房间的视觉效果是无缝衔接的,其并不会感知到从遮罩界面到真正的虚拟现实界面的画面改变。区别仅在于,在房间的虚拟现实界面中,用户可以进行更多的基于虚拟现实界面的操作,例如,用户可以对房间进行缩放等操作;可以发起带看呼叫,以与房源经纪人基于房间的虚拟现实界面进行带看沟通,等等。
50.另外,根据本公开实施例的示例,可选地,在步骤s110中接收到的对目标对象的虚拟现实界面的展示请求可以包括配置协议参数,该配置协议参数例如可以指示是否采用如步骤s120

s150所述的加载方法,以解决白屏时间问题。如果配置协议参数指示采用如步骤s120

s150所述的加载方法,则可以继续执行步骤s120

s150的操作;否则,可以略去步骤s120

s130,即不生成目标对象的遮罩界面,而直接加载并渲染目标对象的虚拟现实界面。
51.根据本公开实施例的虚拟现实界面的加载方法,通过快速生成目标对象的遮罩界面并先展示给用户,同时在遮罩界面的展示期间后台加载渲染目标对象的虚拟现实界面,并在虚拟现实界面渲染完成后,隐藏遮罩界面并展示虚拟现实界面,可以有效解决在加载渲染虚拟现实界面期间的白屏时间问题,并且对由于建立webview和在webview中加载渲染虚拟现实界面所导致的白屏时间问题均能有效解决;同时,通过遮罩界面到虚拟现实界面的平滑过渡、无缝衔接,使得用户并不会感知到从遮罩界面到虚拟现实界面的切换,从而最大化地提升用户体验。特别地,根据本公开实施例的虚拟现实界面的加载方法尤其适用于用户首次加载目标对象的虚拟现实界面(即首屏加载)的情形,使得用户不必面对白屏时间问题的困扰。
52.下面参照图3描述根据本公开实施例的虚拟现实界面的加载装置。图3示出了根据本公开实施例的虚拟现实界面的加载装置300的结构示意图。如图3所示,加载装置300包括接收单元310、获取单元320、展示单元330和渲染单元340。除了这四个单元之外,加载装置300还可以包括其他单元或组件,但由于这些单元或组件与本公开实施例无关,因此这里省略对其的详细描述。另外,由于加载装置300的部分功能与上文参照图1描述的加载方法100的步骤的细节相同,这里为了简单起见,省略了对相同内容的重复描述。
53.接收单元310被配置为接收对目标对象的虚拟现实界面的展示请求。在本公开实
施例中,目标对象可以是任意要展示其虚拟现实界面的对象,例如可以是建筑物的房间等等。例如,用户如果期望查看建筑物房间的虚拟现实界面,则可以通过加载装置300上的用户界面或者控件来发送展示请求。应当理解的是,这里以目标对象为建筑物房间作为示例,但本公开实施例并不限于此,目标对象也可以是任意其他可以利用虚拟现实技术来展示其虚拟现实界面的对象。
54.获取单元320被配置为响应于接收到展示请求,获取目标对象的多个图像。在本公开实施例中,目标对象的多个图像可以是表示目标对象在不同方位上的视图的多个图像,例如多个图像可以包括目标对象的左视图、右视图、前视图、后视图、顶视图以及俯视图等等。在目标对象是建筑物房间的示例中,多个图像可以包括房间的6个视图,即左视图、右视图、前视图、后视图、顶视图以及俯视图,这6个视图囊括了建筑物房间的所有景象。在本公开实施例中,目标对象的多个图像例如可以是由摄像机获取的,并且可以预先存储在存储设备中或者服务器中,则响应于接收到展示请求,获取单元320可以从存储设备直接获取这多个图像,或者从服务器快速加载这多个图像。
55.之后,展示单元330被配置为基于所获取的多个图像,生成包括目标对象的立体视图的遮罩界面,并展示该遮罩界面。在本公开实施例中,目标对象的多个图像中的每个图像可以构成遮罩界面的立体视图中的每个视图,由于该多个图像可以表示目标对象在不同方位上的视图,从而该遮罩界面可以展示目标对象的立体景象。例如,在多个图像包括6个视图的情况下,遮罩界面可以是表示目标对象的全景立体视图的六面体界面,其中目标对象的6个视图中的每个视图构成六面体的一个面。该遮罩界面可以旋转,例如自行旋转或者通过用户操作来以不同方向和速度旋转,以展示目标对象在不同方位上的视图。
56.需要说明的是,虽然上面以目标对象的多个视图包括6个视图、并且遮罩界面为六面体界面为例进行了说明,但本公开实施例并不限于此,目标对象的多个视图可以包括更多或者更少的视图,并且基于该多个视图所生成的遮罩界面也可以是任意多面体或者任意立体结构的界面。
57.以目标对象是建筑物房间为例,例如,获取单元320获取的多个图像可以包括房间的左视图、右视图、前视图、后视图、顶视图以及俯视图这6个视图,则可以基于这6个视图,生成包括表示房间的全景立体视图的遮罩界面,该遮罩界面为六面体,并且可以旋转该六面体,以展示房间在各个方位上的视图。
58.在用户例如通过加载装置300上的用户界面或者控件来发送对目标对象的虚拟现实界面的展示请求之后,可以首先通过获取单元320和展示单元330的操作快速生成目标对象的遮罩界面,并呈现给用户,以避免在渲染完成目标对象的虚拟现实界面之前只能给用户呈现白屏界面。
59.同时,在遮罩界面的展示期间,渲染单元340可以加载并渲染目标对象的虚拟现实界面。如前所述,生成目标对象的虚拟现实界面可以包括两个过程,即建立webview,并在该webview中加载渲染目标对象的虚拟现实界面,这两个过程均可以由渲染单元340执行,并且例如可以通过加载装置300的处理器来进行。并且,在遮罩界面的展示期间,对目标对象的虚拟现实界面的加载和渲染是在后台进行的,因而并不会影响遮罩界面的展示,也不会使得用户感知到该加载渲染过程。
60.根据本公开实施例的示例,在获取单元320获取到目标对象的多个图像之后,可以
将该多个图像存储到缓存中;则渲染单元340可以从缓存中直接获取上述多个图像,并基于多个图像来加载渲染目标对象的虚拟现实界面。通过对所获取的多个图像进行复用,可以进一步加快生成虚拟现实界面的速度,提高加载效率。
61.在目标对象的虚拟现实界面的渲染完成之后,展示单元330可以隐藏遮罩界面,并展示目标对象的虚拟现实界面。
62.如前所述,目标对象的遮罩界面可以旋转以展示目标对象在不同方位上的视图。同样,目标对象的虚拟现实界面也可以旋转,以展示目标对象在不同方位上的虚拟现实视图。此外,目标对象的虚拟现实界面还可以进行缩放等操作,以便以不同的视场角展示目标对象在不同方位上的虚拟现实视图。并且,目标对象的虚拟现实界面还可以具有一个或多个用户可交互模块,以便用户通过该一个或多个用户可交互模块发起基于该虚拟现实界面的交互操作。
63.在用户发出对目标对象的虚拟现实界面的展示请求之后,通过快速生成目标对象的遮罩界面并先展示给用户,同时在遮罩界面的展示期间后台加载渲染目标对象的虚拟现实界面,并在虚拟现实界面渲染完成后,隐藏遮罩界面并展示虚拟现实界面,可以有效解决在加载渲染虚拟现实界面期间的白屏时间问题。此外,为了进一步提升用户体验,希望用户对从遮罩界面到虚拟现实界面的切换过程无感知,则需要使遮罩界面与之后展示的虚拟现实界面能够无缝衔接,平滑过渡。
64.具体地,在渲染单元340完成对目标对象的虚拟现实界面的渲染之后,例如可以通过webview发出指示虚拟现实界面的渲染已完成的指令。响应于接收到该指令,展示单元340可以获取目标对象的遮罩界面的当前的视觉参数,其中,视觉参数至少可以包括在遮罩界面中的目标对象的当前视场角、当前方位角、当前转向、当前转速等等。当前视场角可以表示用户当前查看目标对象的视场大小或者缩放比例;当前方位角可以表示用户当前查看目标对象的具体方位,例如在遮罩界面为六面体界面的示例中,可以表示用户查看的是六面体的哪个面;如前所述,遮罩界面可以旋转,则当前转向和当前转速则表示遮罩界面,或者更具体地遮罩界面中的目标对象的当前转向和当前转速。
65.展示单元340在获取到目标对象的遮罩界面的视觉参数之后,则可以隐藏遮罩界面,并基于该视觉参数来展示目标对象的虚拟现实界面,以使得所展示的虚拟现实界面中的目标对象与遮罩界面中的目标对象的视觉效果保持一致。也就是说,展示单元340可以以在遮罩界面中的目标对象的当前视场角、当前方位角、当前转向和当前转速来展示虚拟现实界面中的目标对象,以使虚拟现实界面中的目标对象与遮罩界面中的目标对象的视场角、方位角、转速和转向保持一致。
66.通过上述操作,在从遮罩界面切换到虚拟现实界面的前后,目标对象的视场角、方位角、转向、转速等均保持一致,即目标对象的视觉效果对用户来说是完全相同的,并且遮罩界面和虚拟现实界面能够响应同样的用户操作。从而用户并不会感知到从遮罩界面到虚拟现实界面的切换,使得用户体验最优。
67.参照图2以目标对象为建筑物房间进行进一步说明。在该示例中,用户在发出对某一房间的虚拟现实展示请求之后,首先由获取单元320和展示单元330生成该房间的遮罩界面,该遮罩界面为表示房间的立体视图的六面体。该六面体可以以一定的设定转速自行旋转,或者用户可以操作来使得六面体旋转,以查看房间的某一方位的视图。例如,用户可以
旋转六面体以查看房间在方位角β上的视图,如图2(a)所示。
68.在房间的遮罩界面的展示期间,可以由渲染单元340来在后台加载并渲染房间的虚拟现实界面,并在渲染完成后,由展示单元330隐藏遮罩界面,展示虚拟现实界面。如上所述,在从遮罩界面切换到虚拟现实界面之前,可以获取遮罩界面中的目标对象的当前视场角、当前方位角、当前转向、当前转速等视觉参数,并使得之后展示的虚拟现实界面与遮罩界面中的视觉效果一致。例如,假定在从房间的遮罩界面切换到虚拟现实界面之前,用户查看房间的视场角为α,方位角为β,转向为顺时针,转速为r,如图2(a)所示;则切换到虚拟现实界面之后,可以使得虚拟现实界面中房间的视场角也为α,方位角也为β,转向也为顺时针,并且转速也为r,如图2(b)所示。
69.这样,在切换前后,由于从遮罩界面到虚拟现实界面的这种平滑过渡,用户所看到的房间的视觉效果是无缝衔接的,其并不会感知到从遮罩界面到真正的虚拟现实界面的画面改变。区别仅在于,在房间的虚拟现实界面中,用户可以进行更多的基于虚拟现实界面的操作,例如,用户可以对房间进行缩放等操作;可以发起带看呼叫,以与房源经纪人基于房间的虚拟现实界面进行带看沟通,等等。
70.另外,根据本公开实施例的示例,可选地,接收单元310所接收到的对目标对象的虚拟现实界面的展示请求可以包括配置协议参数,该配置协议参数例如可以指示是否采用如上所述的获取单元320、展示单元330和渲染单元340所执行的加载方法,以解决白屏时间问题。如果配置协议参数指示采用如上所述的获取单元320、展示单元330和渲染单元340的加载方法,则可以继续执行上述操作;否则,可以不生成目标对象的遮罩界面,而直接加载并渲染目标对象的虚拟现实界面。
71.根据本公开实施例的虚拟现实界面的加载装置,通过快速生成目标对象的遮罩界面并先展示给用户,同时在遮罩界面的展示期间后台加载渲染目标对象的虚拟现实界面,并在虚拟现实界面渲染完成后,隐藏遮罩界面并展示虚拟现实界面,可以有效解决在加载渲染虚拟现实界面期间的白屏时间问题,并且对由于建立webview和在webview中加载渲染虚拟现实界面所导致的白屏时间问题均能有效解决;同时,通过遮罩界面到虚拟现实界面的平滑过渡、无缝衔接,使得用户并不会感知到从遮罩界面到虚拟现实界面的切换,从而最大化地提升用户体验。特别地,根据本公开实施例的虚拟现实界面的加载方法尤其适用于用户首次加载目标对象的虚拟现实界面(即首屏加载)的情形,使得用户不必面对白屏时间问题的困扰。
72.下面,参照图4描述根据本公开实施例的虚拟现实界面的加载设备。图4示出了根据本公开实施例的虚拟现实界面的加载设备400的结构示意图。由于本实施例的加载设备400的功能与在上文中参照图1描述的方法的细节相同,因此在这里为了简单起见,省略对相同内容的详细描述。
73.本公开实施例的加载设备400包括一个或多个处理器410;以及一个或多个存储器420,其中存储计算机可读指令,所述计算机可读指令在被一个或多个处理器410运行时,使得一个或多个处理器410:接收对目标对象的虚拟现实界面的展示请求;响应于接收到展示请求,获取目标对象的多个图像;基于多个图像,生成包括目标对象的立体视图的遮罩界面,并展示遮罩界面;在遮罩界面的展示期间,基于多个图像,加载并渲染目标对象的虚拟现实界面;以及在虚拟现实界面的渲染完成之后,隐藏遮罩界面,并展示目标对象的虚拟现
实界面。
74.本公开的实施例也可以被实现为计算机可读存储介质。图5示出了根据本公开实施例的计算机可读存储介质500的示意图。根据本公开实施例的计算机可读存储介质500上存储有计算机可读指令510。当计算机可读指令510由处理器运行时,可以使得处理器:接收对目标对象的虚拟现实界面的展示请求;响应于接收到展示请求,获取目标对象的多个图像;基于多个图像,生成包括目标对象的立体视图的遮罩界面,并展示遮罩界面;在遮罩界面的展示期间,基于多个图像,加载并渲染目标对象的虚拟现实界面;以及在虚拟现实界面的渲染完成之后,隐藏遮罩界面,并展示目标对象的虚拟现实界面。
75.计算机可读存储介质500包括但不限于例如易失性存储器和/或非易失性存储器。易失性存储器例如可以包括随机存取存储器(ram)和/或高速缓冲存储器(cache)等。非易失性存储器例如可以包括只读存储器(rom)、硬盘、闪存等。
76.根据本公开的实施例,还提供了一种计算机程序产品或计算机程序,该计算机程序产品或者计算机程序包括计算机可读指令,该计算机可读指令存储在计算机可读存储介质中。计算机设备的处理器可以从计算机可读存储介质读取该计算机可读指令,处理器执行该计算机可读指令,使得该计算机设备执行如上文参照图1描述的虚拟现实界面的加载方法。
77.以上所述的方法的各个操作可以通过能够进行相应的功能的任何适当的手段而进行。该手段可以包括各种硬件和/或软件组件和/或模块,包括但不限于电路、专用集成电路(asic)或处理器。
78.可以利用被设计用于进行在此所述的功能的通用处理器、数字信号处理器(dsp)、asic、现场可编程门阵列信号(fpga)或其他可编程逻辑器件(pld)、离散门或晶体管逻辑、离散的硬件组件或者其任意组合而实现或进行所述的各个例示的逻辑块、模块和电路。通用处理器可以是微处理器,但是作为替换,该处理器可以是任何商业上可获得的处理器、控制器、微控制器或状态机。处理器还可以实现为计算设备的组合,例如dsp和微处理器的组合,多个微处理器、与dsp核协作的一个或多个微处理器或任何其他这样的配置。
79.结合本发明描述的方法或算法的步骤可以直接嵌入在硬件中、处理器执行的软件模块中或者这两种的组合中。软件模块可以存在于任何形式的有形存储介质中。可以使用的存储介质的一些例子包括随机存取存储器(ram)、只读存储器(rom)、快闪存储器、eprom存储器、eeprom存储器、寄存器、硬盘、可移动盘、cd

rom等。存储介质可以耦接到处理器以便该处理器可以从该存储介质读取信息以及向该存储介质写信息。在替换方式中,存储介质可以与处理器是整体的。软件模块可以是单个指令或者许多指令,并且可以分布在几个不同的代码段上、不同的程序之间以及跨过多个存储介质。
80.本领域技术人员能够理解,本公开所披露的内容可以出现多种变型和改进。例如,以上所描述的各种设备或组件可以通过硬件实现,也可以通过软件、固件、或者三者中的一些或全部的组合实现。
81.此外,虽然本公开对根据本公开的实施例的系统中的某些单元做出了各种引用,然而,任何数量的不同单元可以被使用并运行在客户端和/或服务器上。所述单元仅是说明性的,并且所述系统和方法的不同方面可以使用不同单元。
82.此外,本公开中使用了流程图用来说明根据本公开实施例的实施例的系统所执行
的操作。应当理解的是,前面或下面的操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各种步骤。同时,也可以将其他操作叠加到这些过程中,或从这些过程移除某一步或数步操作。
83.除非另有定义,这里使用的所有术语(包括技术和科学术语)具有与本公开所属领域的普通技术人员共同理解的相同含义。还应当理解,诸如在通常字典里定义的那些术语应当被解释为具有与它们在相关技术的上下文中的含义相一致的含义,而不应用理想化或极度形式化的意义来解释,除非这里明确地这样定义。
84.以上是对本公开的说明,而不应被认为是对其的限制。尽管描述了本公开的若干示例性实施例,但本领域技术人员将容易地理解,在不背离本公开的新颖教学和优点的前提下可以对示例性实施例进行许多修改。因此,所有这些修改都意图包含在权利要求书所限定的本公开范围内。应当理解,上面是对本公开的说明,而不应被认为是限于所公开的特定实施例,并且对所公开的实施例以及其他实施例的修改意图包含在所附权利要求书的范围内。本公开由权利要求书及其等效物限定。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献