面向多人在线虚拟现实应用的重定向行走方法和装置

文档序号:32797953发布日期:2023-01-03 22:52阅读:33来源:国知局
面向多人在线虚拟现实应用的重定向行走方法和装置

1.本发明涉及虚拟现实技术领域,尤其涉及面向多人在线虚拟现实应用的重定向行走方法和装置。


背景技术:

2.随着元宇宙行业的兴起,多人在线vr互动应用正在成为现实。在多人在线的vr游戏/应用中,多个用户分处不同的物理环境中,而他们却可以在网络的连接下在同一个虚拟环境中进行交互,呈现“多人异地”的特点。多人在线vr互动应用与虚拟现实交互一样,都依赖于重定向行走技术。
3.在现有技术中,虚拟现实交互应用的重定向行走技术,大都只关注同一个物理空间中单个或多个用户行走的情况,不考虑物理上异地的多个用户在虚拟空间中状态的关联,因为相同的物理空间使得所有用户大体上有均等的运动机会,运动不公平问题并不显著。但是在多人在线的vr游戏/应用中,当某个用户因为自己空间的障碍物或其他原因而发生重置时(该用户的行为将在虚拟空间中暂停),其他用户在重置用户暂停的时段内却仍然可以在虚拟空间中继续运动,因此在这段时间内所有用户虚拟空间的相对位置发生了变化,这会对某些应用造成严重的不公平性(比如对抗性在线vr即时策略游戏)。此外,由于不同用户可能位于形状差异很大的物理空间,在进行相同的vr游戏时有的用户将固有地比其他用户重置更多次数、这会为vr游戏引入固有的不公平性。这种由不同物理空间带来的不公平性问题变得十分突出,虚拟现实交互应用的重定向行走技术不适用于多人在线的vr游戏/应用。
4.鉴于此,应当开发一种面向多人异地在线vr应用的重定向行走技术,以保证任一用户重置前后虚拟空间多个用户相对位置不发生变化,使所有用户拥有公平的运动机会,避免因虚拟空间运动不公平性而导致用户体验不佳。


技术实现要素:

5.本发明提供面向多人在线虚拟现实应用的重定向行走方法和装置,用以解决现有技术中多人在线的vr游戏/应用由用户物理空间不同导致的运动不公平的问题,通过控制所有用户的重置同时发生、同时结束来实现运动公平,同时尽可能延长所有用户重置间的步行距离,使重置次数尽可能少。
6.第一方面,本发明提供了一种面向多人在线虚拟现实应用的重定向行走方法,所述方法包括:
7.在重置发生时,确定多人在线虚拟现实应用中每一个用户的第一行走时间;其中,每一个用户的第一行走时间为每一个用户从所处虚拟位置行走到自身虚拟目标点所需的时间;
8.预估每一个用户在其当前物理位置重置时的最大可行走时间;
9.根据每一个用户的第一行走时间和每一个用户在其当前物理位置重置时的最大
可行走时间,确定每一个用户对应的重置朝向和重置运动增益;
10.基于每一个用户对应的重置朝向和重置运动增益,实现对每一个用户的重定向控制;
11.所述重置发生的条件为所述多人在线虚拟现实应用中任一用户在物理空间行走时遇到障碍物。
12.第二方面,本发明提供一种面向多人在线虚拟现实应用的重定向行走装置,所述装置包括:
13.第一行走时间确定模块,用于在重置发生时,确定多人在线虚拟现实应用中每一个用户的第一行走时间;其中,每一个用户的第一行走时间为每一个用户从所处虚拟位置行走到自身虚拟目标点所需的时间;
14.最大可行走时间确定模块,用于预估每一个用户在其当前物理位置重置时的最大可行走时间;
15.重置朝向和重置运动增益确定模块,用于根据每一个用户的第一行走时间和每一个用户在其当前物理位置重置时的最大可行走时间,确定每一个用户对应的重置朝向和重置运动增益;
16.重定向控制控制模块,用于基于每一个用户对应的重置朝向和重置运动增益,实现对每一个用户的重定向控制;
17.所述重置发生的条件为所述多人在线虚拟现实应用中任一用户在物理空间行走时遇到障碍物。
18.本发明提供的面向多人在线虚拟现实应用的重定向行走方法和装置,在重置发生时,确定多人在线虚拟现实应用中每一个用户的第一行走时间;其中,每一个用户的第一行走时间为每一个用户从所处虚拟位置行走到自身虚拟目标点所需的时间;所述重置发生的条件为所述多人在线虚拟现实应用中任一用户在物理空间行走时遇到障碍物;预估每一个用户在其当前物理位置重置时的最大可行走时间;根据每一个用户的第一行走时间和每一个用户在其当前物理位置重置时的最大可行走时间,确定每一个用户对应的重置朝向和重置运动增益;基于每一个用户对应的重置朝向和重置运动增益,实现对每一个用户的重定向控制。本发明控制位于不同物理空间的所有用户的重置同时发生、同时结束,保持用户虚拟空间状态的一致性,实现多人异地vr行走的运动公平;同时,在合理估计所有用户重置后至遇到障碍物的最大可行走时间以及所有用户从当前虚拟位置达到虚拟目标点所需时间的基础上,以延长所有用户重置间的步行距离为目的为每一个用户设定合适的重置朝向和重置运动增益,使得用户重置的频率显著降低。
附图说明
19.为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
20.图1是本发明提供的面向多人在线虚拟现实应用的重定向行走方法的流程示意图;
21.图2是本发明提供的在二维物理平面中构造的可行物理路径示意图;
22.图3是本发明提供的所述用户行走给定时间后可达物理空间范围示意图;
23.图4是本发明提供的面向多人在线虚拟现实应用的重定向行走装置的结构示意图;
24.图5是本发明提供实现面向多人在线虚拟现实应用的重定向行走方法的电子设备的结构示意图。
具体实施方式
25.为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
26.下面对领域专业名称进行阐述:
27.虚拟现实(virtual reality,vr)技术:是利用计算机模拟三维虚拟世界,并提供给用户沉浸式、交互式视听体验的一类新兴可视媒体展示技术,该技术融合可视媒体计算、人机交互、应用数学等多个领域,具有为解决诸多实际问题如病人康复、老人陪伴、虚拟游览等提供新途径和可能性的潜力。
28.重置:虚拟现实领域的专有名词,表示暂停用户虚拟体验,而使用户调整自己的物理位姿后再继续虚拟体验的过程。
29.重定向行走(redirected walking,rdw)即是利用人在虚拟环境中交互感知的不精确性,通过路径弯曲、运动放缩等方法,实现有限物理空间下减少重置次数的方法的统称。重定向行走主要依靠三种运动增益(gain),分别为平移增益(translation gain)、旋转增益(rotation gain)和曲率增益(curvature gain)。
30.平移增益:用来放缩用户的实际行走距离。
31.旋转增益:用来放缩用户的实际转身角度。
32.曲率增益:用来弯曲路径,使用户在虚拟空间中走直线时,实际在物理空间中走弧线。
33.下面结合图1-图5描述本发明的面向多人在线虚拟现实应用的重定向行走方法和装置。
34.第一方面,本发明提供一种面向多人在线虚拟现实应用的重定向行走方法,如图1所示,所述方法包括:
35.s11、在重置发生时,确定多人在线虚拟现实应用中每一个用户的第一行走时间;其中,每一个用户的第一行走时间为每一个用户从所处虚拟位置行走到自身虚拟目标点所需的时间;
36.在本发明中,每一个用户的第一行走时间,可以用每一个用户当前虚拟位置到虚拟目标点的距离,以及每一个用户在虚拟空间的行走速度来估计。
37.例如,假设用户在虚拟空间直线行走,用户在虚拟空间的行走速度已给定时,且在虚拟空间中用户当前位置正对其虚拟目标点;则用户uz当前虚拟位置到虚拟目标点的距离除以用户uz在虚拟空间的行走速度即为用户uz的第一行走时间。
38.又例如:假设用户在虚拟空间直线行走,用户在虚拟空间的行走速度已给定时,且在虚拟空间中用户当前位置不正对其虚拟目标点;则用户uz当前虚拟位置到虚拟目标点的距离除以用户uz在虚拟空间的行走速度得到的时间与用户以恒定角速度转向正对自身虚拟目标点的时间的加和即为用户uz的第一行走时间。
39.需要说明的是,自由交互是虚拟现实的重要特征,相较于手柄、万向跑步机等硬件设备,真实行走是虚拟现实中最具沉浸感的感知方式。用户佩戴vr眼镜在真实物理空间中自由行走,可以根据主观意愿控制虚拟化身在虚拟场景中自由地漫游。然而,由于用户所处的物理空间尺寸通常小于虚拟空间,用户的沉浸体验经常被物理障碍物和墙壁打断,此时vr应用不得不暂停虚拟体验并指引用户重置(reset)自己的朝向和运动增益。换句话讲,任一用户的重置,是指重新规划该用户朝向和运动增益的过程。如无特别指出本发明运动增益指曲率增益和平移增益。
40.所述重置发生的条件为:所述多人在线虚拟现实应用中任一用户在物理空间行走时遇到障碍物。
41.本发明设置的重置发生的条件,表明本发明重定向方法虚拟现实应用中任一用户遇到障碍物而需要重置时,其它用户同步跟随重置(即要求位于不同物理空间的用户的重置同时发生、同时结束),解决了现有重定向行走方法在多人异地交互条件下的困境,保证多人异地vr行走的运动公平。
42.s12、预估每一个用户在其当前物理位置重置时的最大可行走时间;
43.曲率增益和平移增益在满足合理的阈值时,物理空间路径的改变将不能被用户感知,物理空间可以更好地被利用。其中,最大曲率增益对应的曲率半径记为r,即用户在虚拟空间沿直线行走时引导用户在物理空间沿曲率半径为r或大于r的圆弧路径行走,用户一般无法察觉。最小平移增益和最大平移增益分别记为和当用户在虚拟空间直线行走,且平移增益g
t
在和之间时,虚拟空间的实际速度是物理空间的g
t
倍,并且用户一般无法察觉。值得说明的是,由于定义表述的不同,有人会将平移增益定义为物理空间速度与虚拟空间速度的比值,例如将所述称为“最大平移增益”、将所述称为“最小平移增益”,这些定义表述的区别不影响方法的实质。
44.本发明每一个用户在其当前物理位置重置时,由于朝向可选范围(候选朝向集合)、曲率增益可选范围(重置曲率增益对应的曲率半径不小于r)以及平移增益可选范围(平移增益g
t
处于和之间)的限定,可以有无数种重置选择,每一个重置选择对应一个可行走时间,其中最大的可行走时间即为每一个用户在其当前物理位置重置时的最大可行走时间。可行走时间是指重置后用户在物理空间中不受障碍物干扰持续行走的时间。
45.s13、根据每一个用户的第一行走时间和每一个用户在其当前物理位置重置时的最大可行走时间,确定每一个用户对应的重置朝向和重置运动增益;
46.重置打断用户体验,在用户沉浸式行走过程中减少用户的重置次数是vr中的一个重要问题,本发明也不例外。基于本发明要求位于不同物理空间的用户的重置同时发生、同时结束的特性,延长两次重置间所有用户的步行距离(或者说延长两次重置间的间隔时
间),将有利于减少重置次数的发生。
47.对此,本发明合理估计所有用户重置后至遇到障碍物的最大可行走时间,并合理估计所有用户从当前虚拟位置达到虚拟目标点所需时间,在此基础上,以延长两次重置的间隔时长为目的为每一个用户设定合适的重置朝向和重置运动增益,设定成果将使用户重置的频率显著降低。
48.s14、基于每一个用户对应的重置朝向和重置运动增益,实现对每一个用户的重定向控制。
49.本发明提供的面向多人在线虚拟现实应用的重定向行走方法,控制位于不同物理空间的所有用户的重置同时发生、同时结束,保持用户虚拟空间状态的一致性,实现多人异地vr行走的运动公平;同时,在合理估计所有用户重置后至遇到障碍物而再次触发重置所需的时间区间以及所有用户从当前虚拟位置达到虚拟目标点所需时间的基础上,以延长所有用户重置间的步行距离为目的为每一个用户设定合适的重置朝向和重置运动增益,使得用户重置的频率显著降低。
50.在上述实施例的基础上,作为一种可选的实施例,所述预估每一个用户在其当前物理位置重置时的最大可行走时间,包括:
51.对于每一个所述用户,预估所述用户在其当前物理位置向每一种候选朝向重置时的最大可行走时间;
52.从所述用户在其当前物理位置向每一种候选朝向重置时的最大可行走时间中选取最大值,并将所述最大值作为所述用户在其当前物理位置重置时的最大可行走时间。
53.即对于所述用户uz,预估所述用户uz在其当前物理位置pz向候选朝向集合中任一种候选朝向θj重置时的最大可行走时间t
max
(pz,θj),然后计算π(uz)即为所述用户uz在其当前物理位置重置时的最大可行走时间。
54.这里,候选朝向集合θ设置方式并不唯一,只要满足均匀性即可。例如在空间中均匀取λ种朝向,构成候选朝向集合
55.本发明考虑到不可能穷尽所有朝向,因此预先构建均匀分布的候选朝向集合,在候选朝向集合的范围内计算所述用户在其当前物理位置重置时的最大可行走时间,简化计算量级的同时能得到一个较为精准的计算结果,为重定向控制奠定基础。
56.在上述实施例的基础上,作为一种可选的实施例,所述预估所述用户在其当前物理位置向每一种候选朝向重置时的最大可行走时间,包括:
57.对于每一种所述候选朝向,确定由所述用户的物理位置和所述候选朝向构成的物理位姿;
58.根据最大曲率增益,在二维物理平面中构造一系列从所述物理位姿起始的具有不同曲率增益的可行物理路径;
59.确定每一条可行物理路径对应的可行走距离;
60.基于每一条可行物理路径对应的可行走距离和所述用户在虚拟空间中的行走速度,确定使用最大平移增益时所述用户在每一条可行物理路径上的可行走时间;
61.将所述使用最大平移增益时所述用户在每一条可行物理路径上的可行走时间中的最大值作为所述用户在其当前物理位置向所述候选朝向重置时的最大可行走时间;
62.其中,所述每一条可行物理路径对应的可行走距离为每一条可行物理路径上起始点距首个障碍物的距离。
63.进一步的,所述基于每一条可行物理路径对应的可行走距离和所述用户在虚拟空间中的行走速度,确定使用最大平移增益时所述用户在每一条可行物理路径上的可行走时间,包括:
64.计算每一条可行物理路径对应的可行走距离与所述用户在虚拟空间中的行走速度的比值;
65.将所述比值与所述最大平移增益的乘积作为使用最大平移增益时所述用户在每一条可行物理路径上的可行走时间。
66.具体的,定义用户的物理位姿ps=(p,θ)来统一指代用户的物理位置和物理朝向。
67.设所述用户uz当前物理位置坐标为pz=(p
zx
,p
zy
),所述候选朝向为θj,所述用户uz的物理位姿即为(pz,θj),用户uz在其当前物理位置pz向所述候选朝向θj重置时的最大可行走时间的计算步骤如下:
68.步骤1:根据用户uz的物理位姿即为(pz,θj)以及最大曲率增益,在二维物理平面中构造一系列从(pz,θj)出发的使用不同曲率增益的可行物理路径。
69.换句话讲,在二维物理平面中构造一系列相切于用户uz的物理位置pz,并且切向均与候选朝向θj一致的圆形或直线形物理路径{cz},共2k+1个。其中,k为精准系数,其值为大于0的正整数,为了衡量估计的精准程度。k值越大,方法效果越准确,但同时估计代价也更高。
70.图2示例了二维物理平面中构造的可行物理路径,如图2所示,c
2k+1
较特殊,其半径为∞,是经过pz并与θj朝向一致的直线,代表着不使用曲率增益的情况下行走的物理路径。当i≤2k时,代表分布在用户uz左侧或右侧的一系列半径大于等于r的圆,代表着使用不同曲率增益情况下行走的物理路径。第i个圆ci可以用下面的方程统一表示:
[0071][0072]
上面方程中的αi绝对值|αi|为第i个圆ci的半径与r的比值。调整αi的大小和符号可以改变ci的半径以及ci在用户uz左侧或右侧的空间分布。为了使路径分布较为均匀对称,αi的取值可以用下面公式统一表示:
[0073][0074]
αi采取上式取值,可以使2k个圆中有一半圆心位于用户左侧,一半圆心位于用户右侧,且分布相对比较匀称。具体地,i为奇数时ci圆心在用户左侧,i为偶数时ci圆心在用户右侧。
[0075]
步骤2:计算上述构造的物理路径的可行走距离。物理路径的可行走距离为物理路
径起始点pz距物理路径上首个障碍物的距离,换句话说为用户uz沿物理路径行走到障碍物的可行走距离。
[0076]
进一步的,将上述构造的所有物理路径{cz}与用户uz物理空间障碍物求交,并且将从用户(pz,θj)出发、沿ci行进至ci与障碍物的第一个交点时对应的已行进路径长度记为li,若ci与障碍物无交,则记其可行进路径长li=∞。li即为ci的可行走距离。
[0077]
步骤3:通过上述构造的物理路径的可行走距离计算用户uz从位姿(pz,θj)出发遇障碍物前的可行走时间范围。
[0078]
假定用户uz在虚拟空间以速度v行走,首先可以计算出在不使用平移增益情况下,沿上述构造的物理路径ci的行走时间ti:
[0079][0080]
li为物理路径ci的可行走距离。考虑到使用平移增益可以使用户的实际物理速度加快或放缓,从而使用平移增益情况下沿上述构造的物理路径ci行走到遇障碍物的最大行走时间为因此,沿上述构造的物理路径ci行走而遇障碍物前的可行走时间范围为:
[0081][0082]
特别地,若对于物理路径ci,其计算得到的可行走距离li=∞,则此时沿ci行走而遇障碍物前的可行走时间范围为ci:[0,∞]。
[0083]
考虑使用不同曲率增益的所有物理路径{ci},对应可得用户uz从位姿(pz,θj)出发遇障碍物前的可行走时间范围为:
[0084][0085]
步骤4:将的最大值作为用户uz在其当前物理位置pz向所述候选朝向θj重置时的最大可行走时间。
[0086]
其中,要想使用户uz重置后可以行走只需要使用朝向θj、最大平移增益并将曲率增益调整到编号并将曲率增益调整到编号对应的路径的曲率增益即可。
[0087]
本发明实际给出了合理估计任一用户在任一位姿重置时的可行走时间区间的方法,为把控两次重置间时间间隔提供可能,为重定向奠定基础。
[0088]
在上述实施例的基础上,作为一种可选的实施例,所述根据每一个用户的第一行走时间和每一个用户在其当前物理位置重置时的最大可行走时间,确定每一个用户对应的重置朝向和重置运动增益,包括:
[0089]
将每一个用户在其当前物理位置重置时的最大可行走时间记为每一个用户的第二行走时间;
[0090]
计算每一个用户的第二可行走时间与第一行走时间的差值;
[0091]
判断是否存在所述差值不大于0的用户;
[0092]
根据判断结果,确定每一个用户对应的重置朝向和重置运动增益。
[0093]
具体的,将用户uz的第一行走时间记为τz,用户uz在其当前物理位置重置时的最大可行走时间为π(uz),即用户uz的第二行走时间记为π(uz);
[0094]
当π(uz)大于τz时,说明至少存在一种可使用户uz在当前物理位置重置后能行走τz的重置选择,用户在物理空间行走τz在虚拟空间中就走到了自身虚拟目标点。即用户uz可一次性走到自身虚拟目标点。
[0095]
因此,将能一次性走到自身虚拟目标点的用户的集合用us表示,us={uz|π(uz)》τz}。相对地,其补集un={uz|π(uz)≤τz}即为不能一次性走到自身虚拟目标点的用户的集合。
[0096]
此后,根据un中是否存在用户,来针对性的确定每一个用户对应的重置朝向和重置运动增益。
[0097]
本发明基于每一个用户是否能一次性走到自身虚拟目标点的情况,区别性的规划用户对应的重置朝向和重置运动增益,以降低用户重置的频率。
[0098]
在上述实施例的基础上,作为一种可选的实施例,所述判断结果为是的情况下,每一个用户对应的重置朝向和重置运动增益的确定过程,包括:
[0099]
从所述差值不大于0的用户中选取第二可行走时间最小的用户;
[0100]
将选取的用户记为瓶颈用户,并将所述瓶颈用户的第二可行走时间作为此次重置到下次重置的间隔时间;
[0101]
将能使所述瓶颈用户行走所述间隔时间的朝向和运动增益作为所述瓶颈用户对应的重置朝向和重置运动增益;
[0102]
同时,基于所述间隔时间,分别确定每一个非瓶颈用户对应的重置朝向和重置运动增益。
[0103]
具体的,利用公式定位un中的瓶颈用户u
*
,用户u
*
在其当前物理位置重置时的最大可行走时间为π(u
*
)为此时重置所有用户的可行走时间(此次重置到下次重置的间隔时间)。
[0104]
因此,对于瓶颈用户u
*
而言,将能使其行走π(u
*
)的朝向和运动增益作为所述瓶颈用户对应的重置朝向和重置运动增益;即求解得到朝向θ
*
,求解对得到编号并获得编号对应的路径的曲率增益。最终瓶颈用户u
*
重置朝向为θ
*
,重置运动增益为和编号对应的路径的曲率增益。
[0105]
对于瓶颈用户u
*
而言,基于所述间隔时间进行最优重置规划。
[0106]
本发明将瓶颈用户对应的最大可行走时间作为此次重置所有用户的可行走时间,在使所有用户重置后行走时间尽可能长的前提下,规划重置朝向以及重置运动增益,保证运动的公平性。
[0107]
在上述实施例的基础上,作为一种可选的实施例,所述基于所述间隔时间,分别确
定每一个非瓶颈用户对应的重置朝向和重置运动增益,包括:
[0108]
对于每一个所述非瓶颈用户,从所述非瓶颈用户对应的物理空间下采样位置集合中寻找所述非瓶颈用户行走所述间隔时间能达到的采样位置,并将其归入第二集合;
[0109]
判断所述第二集合是否为空;
[0110]
若是,将能使所述非瓶颈用户行走自身第二行走时间的朝向和运动增益作为所述非瓶颈用户对应的重置朝向和重置运动增益;
[0111]
若否,计算所述非瓶颈用户在所述第二集合中每一个采样位置重置时的最大可行走时间;
[0112]
将最大可行走时间最大的采样位置作为第一最优采样位置;
[0113]
将能使所述非瓶颈用户耗费所述间隔时间从自身当前物理位置行走至所述第一最优采样位置的朝向和运动增益作为所述非瓶颈用户对应的重置朝向和重置运动增益。
[0114]
具体的,对于任一用户uz,在vr应用开始使用之前,需要做一些准备工作,具体如下:
[0115]
先在其物理空间e的二维平面上均匀采样一些不在障碍物上的位置{pc},构成采样位置集合χ(e)={pc}。位置的采样方式并不唯一,只要满足均匀性即可,比如一种位置采样方法是使用紧邻的若干个小正方形对物理空间e进行分割,每个正方形的边长均为δ,其中心为pc,所有这些中心位置的集合构成采样位置集合χ(e)={pc}。对采样位置集合和候选朝向集合取笛卡尔积可以得到该物理空间的采样位姿集合γ(e)={(pc,θj)|pc∈χ(e),θj∈θ}。
[0116]
而后计算采样位姿(pc,θj)∈γ(e)对应的最大可行走时间t
max
(pc,θj)(即用户uz在采样位置pc向所述候选朝向θj重置时的最大可行走时间);
[0117]
之后考虑不同的候选朝向,计算和这里,l(pc)表示用户uz从采样位置pc重置时的最大可行走时间,h(pc)表示用户uz从采样位置pc重置时的平均可行走时间。
[0118]
最后,保存采样位置pc对应的指标量l(pc)和h(pc),并对采样位置集合中其它的采样位置作同样处理。
[0119]
需要说明的是,l(pc)和h(pc)是衡量采样位置pc的指标。
[0120]
在实际应用时,对于任一非瓶颈用户从用户对应的采样位置集合中寻找用户行走所述间隔时间能达到的采样位置,并将其归入第二集合φi;即第二集合φi中包含的采样位置均可作为用户下一次重置时的物理位置;
[0121]
本发明计算对应的物理位置并将用户耗费所述间隔时间从自身当前物理位置行走至的朝向和运动增益作为所述非瓶颈用户对应的重置朝向
和重置运动增益。
[0122]
特别的,当第二集合φi为空时,以将能使用户行走其自身最大可行走时间的朝向和运动增益作为用户的重置朝向和重置运动增益。
[0123]
本发明这样设置的可以使用户下一次重置时的物理位置对应的最大可行走时间尽可能长,以降低用户重置的频率。
[0124]
在上述实施例的基础上,作为一种可选的实施例,从所述非瓶颈用户对应的物理空间下采样位置集合中寻找所述非瓶颈用户行走所述间隔时间能达到的采样位置,包括:
[0125]
基于最大平移增益和最小平移增益,确定所述非瓶颈用户在仅使用平移增益的情况下行走所述间隔时间能达到的第一物理空间范围;
[0126]
基于最大曲率增益,确定所述非瓶颈用户在使用最大平移增益和曲率增益的情况下行走所述间隔时间能达到的第二物理空间范围;
[0127]
遍历所述非瓶颈用户对应的物理空间下采样位置集合中的采样位置,得到满足第一条件或第二条件的采样位置;
[0128]
将所述满足第一条件或第二条件的采样位置认定为所述非瓶颈用户行走所述间隔时间能达到的采样位置;
[0129]
其中,所述第一条件为采样位置位于第一物理空间范围且所述非瓶颈用户当前物理位置与采样位置之间不存在障碍物;
[0130]
所述第二条件为采样位置位于第二物理空间范围且所述非瓶颈用户耗费所述间隔时间从自身当前物理位置行走至采样位置时的朝向和运动增益所决定的路径上不存在障碍物。
[0131]
具体的,确定用户行走所述间隔时间能达到的采样位置的流程如下:
[0132]
用户物理位置坐标已知,用户在虚拟空间的速度已知,用户所在的物理空间的障碍物布局已知,记所述间隔时间为t
γ

[0133]
步骤a:计算用户在仅使用平移增益的情况下行走t
γ
能达到的第一物理空间范围:
[0134]
由于仅使用平移增益,用户的物理路径是直线,通过调整平移增益可以改变物理路径的长度。即用户在仅使用平移增益的情况下行走t
γ
的最大可达距离以及用户在仅使用平移增益的情况下行走t
γ
的最小可达距离故第一物理空间范围为[s
near
(t
γ
),s
max
(t
γ
)];
[0135]
考虑到用户在当前位置重置时可以选择任意的重置朝向,若不考虑障碍物,在物理二维平面上以为圆心,以内半径为s
near
(t
γ
)、外半径为s
max
(t
γ
)的圆环内的任意一点均可以通过重置后面向并调整平移增益为与之间的某值,使用户在t
γ
时间沿指向的直线行走到达
[0136]
步骤b:计算用户在使用最大平移增益和曲率增益的情况下行走t
γ
能达到的第二物理空间范围:
[0137]
在仅使用最大平移增益的情况下,用户行走的物理路径长度已经较虚拟路径缩短了。如果再使用曲率增益使物理路径弯曲,则可以进一步缩小用户的可达距离。计算在使用最大平移增益和最大曲率增益下的最小可达距离故第二物理空间范围为[s
min
(t
γ
),s
near
(t
γ
)]。若不考虑障碍物,在物理二维平面上以为圆心,内半径为s
min
(t
γ
),外半径为s
near
(t
γ
)的圆环内的任意一点q,均可以通过使用最大平移增益,并指定重置后的初始方向和曲率增益后,在t
γ
时间行走到达。
[0138]
即步骤a和步骤b,实际给出了任一用户行走给定时间后可达物理空间范围计算方式,图3为任一用户行走t时间后可达物理空间范围示例图。
[0139]
步骤c:对于用户对应采样位置集合中的采样位置p
#
,判断用户行走t
γ
是否能达到p
#

[0140]
首先,判断p
#
是否在以为圆心,以内半径为s
near
(t
γ
)、外半径为s
max
(t
γ
)的圆环内,并判断p
#
与之间的直线路径没有障碍物是否成立,如果判断结果均为是,则用户行走t
γ
是否能达到p
#
。这种情况下,将向量的方向作为重置朝向(重置后的初始方向),利用到p
#
的物理距离为r1,用户在虚拟空间的速度和所述间隔时间为t
γ
计算用户使用的平移增益
[0141]
其次,判断p
#
是否在以为圆心,以内半径为s
min
(t
γ
)、外半径为s
near
(t
γ
)的圆环内,并判断用户耗费所述间隔时间从自身当前物理位置行走至p
#
时的朝向和运动增益所决定的路径上存在障碍物是否成立,如果判断结果均为是,则用户行走t
γ
是否能达到p
#

[0142]
这里,需要先找到用户耗费所述间隔时间从自身当前物理位置行走至p
#
时的朝向和运动增益所决定的路径,该路径下到p
#
的物理距离为r2,使用平移增益使用户虚拟速度/物理速度比值保持最大,并计算曲率半径大于r的曲率半径r

,r

是等式的解,该等式可以使用数值方法求得近似解。解得r

后,计算重置朝向(重置后的初始方向),即计算此处θ

的符号代表左右两种转向方式,具体由可以p
#
与的方向决定。重置后的初始方向是单位方向向量
的方向,其中,代表将向量顺时针旋转θ

的向量。因此,重置用户向y

所指向的方向,待用户重置后,使用曲率半径r和平移增益来引导用户到达p
#

[0143]
本发明能够合理估计任一用户在经过一段给定的时间后可以到达的空间范围,并能确定固定的曲率增益和平移增益使其能到达其中任意给定的位置,为重定向奠定基础。
[0144]
在上述实施例的基础上,作为一种可选的实施例,所述判断结果为否的情况下,每一个用户对应的重置朝向和重置运动增益的确定过程,包括:
[0145]
对于每一个所述用户,从所述用户对应的物理空间下采样位置集合中寻找所述用户行走自身第一行走时间能达到的采样位置,并将其归入第三集合;
[0146]
判断所述第三集合是否为空;
[0147]
若是,将能使所述用户行走自身第二可行走时间的朝向和运动增益作为所述用户对应的重置朝向和重置运动增益;
[0148]
若否,计算所述用户在所述第三集合中每一个采样位置重置后的平均可行走时间;
[0149]
将平均可行走时间最大的采样位置作为第二最优采样位置;
[0150]
将能使所述用户耗费自身第一行走时间从自身当前物理位置行走至所述第二最优采样位置的朝向和运动增益作为所述用户对应的重置朝向和重置运动增益。
[0151]
在实际应用时,对于任一用户uz,从用户uz对应的采样位置集合中寻找用户uz行走自身第一行走时间能达到的采样位置,并将其归入第三集合βi;即第三集合βi中包含的采样位置均可作为用户uz行走到其自身虚拟目标点;本发明计算对应的物理位置并将用户uz耗费其自身第一行走时间从自身当前物理位置行走至的朝向和运动增益作为用户uz对应的重置朝向和重置运动增益。
[0152]
特别的,当第二集合φi为空时,以将能使用户行走其自身最大可行走时间的朝向和运动增益作为用户的重置朝向和重置运动增益。
[0153]
本发明这样设置的可以使用户uz开始下一虚拟目标点的行走任务时,初始物理位置安全系数尽可能大,以降低行走任务用户重置的频率。
[0154]
在上述实施例的基础上,作为一种可选的实施例,所述从所述用户对应的物理空间下采样位置集合中寻找所述用户行走自身第一行走时间能达到的采样位置,包括:
[0155]
基于最大平移增益和最小平移增益,确定所述用户在仅使用平移增益的情况下行走所述用户自身第一行走时间能达到的第三物理空间范围;
[0156]
基于最大曲率增益,确定所述用户在使用最大平移增益和曲率增益的情况下行走所述用户自身第一行走时间能达到的第四物理空间范围;
[0157]
遍历所述用户对应的物理空间下采样位置集合中的采样位置,得到满足第三条件或第四条件的采样位置;
[0158]
将所述满足第三条件或第四条件的采样位置认定为所述用户行走自身第一行走时间能达到的采样位置;
[0159]
其中,所述第三条件为采样位置位于第三物理空间范围且所述用户当前物理位置与采样位置之间不存在障碍物;
[0160]
所述第四条件为采样位置位于第四物理空间范围且所述用户耗费自身第一行走时间从自身当前物理位置行走至采样位置时的朝向和运动增益所决定的路径上不存在障碍物。
[0161]
可以看出,从所述用户对应的物理空间下采样位置集合中寻找所述用户行走自身第一行走时间能达到的采样位置的实现方式与从所述非瓶颈用户对应的物理空间下采样位置集合中寻找所述非瓶颈用户行走所述间隔时间能达到的采样位置的实现方式相同,在此不做赘述。
[0162]
在上述实施例的基础上,作为一种可选的实施例,所述用户在所述第三集合中每一个采样位置重置后的平均可行走时间的确定过程,包括:
[0163]
预估所述用户在所述第三集合中每一个采样位置向每一种候选朝向重置时的最大可行走时间;
[0164]
将所述最大可行走时间的调和平均数作为所述用户在所述第三集合中每一个采样位置重置后的平均可行走时间。
[0165]
本发明计算采样位置pc对应的平均可行走时间h(pc)使用的是调和平均数,使用其他平均方法也可以。平均可行走时间h(pc)可以代表pc转向随机方向时的安全系数,其值越大说明位置越安全。
[0166]
总之,本发明在重置发生时,根据在线多个用户到各自虚拟目标点的行走时间和在物理空间的状态,控制不同用户的重置朝向以及重置运动增益,使所有用户重置频率尽可能降低的方法,vr应用结束前可多次调用,每次当用户需要重置时即调用该方法。
[0167]
此外,本发明多数时间使用固定的曲率和平移增益对用户进行重定向,导向连续性好,不易给用户造成不适;预计算耗时短,在线重定向方法计算迅速,实践性好。可以应用于运动公平性条件下的多人在线vr游戏、vr旅游、vr养老陪伴等诸多包含用户行走的vr场景中,减少所有用户vr行走中的重置次数。提升了vr应用的可用性与人性化,让用户获得更沉浸、更令人愉悦的vr体验。
[0168]
下面对本发明提供的面向多人在线虚拟现实应用的重定向行走装置进行描述,下文描述的面向多人在线虚拟现实应用的重定向行走装置与上文描述的面向多人在线虚拟现实应用的重定向行走方法可相互对应参照。图4示例了面向多人在线虚拟现实应用的重定向行走装置的结构示意图,如图4所示,所述装置包括:
[0169]
第一行走时间确定模块21,用于在重置发生时,确定多人在线虚拟现实应用中每一个用户的第一行走时间;其中,每一个用户的第一行走时间为每一个用户从所处虚拟位置行走到自身虚拟目标点所需的时间;所述重置发生的条件为所述多人在线虚拟现实应用中任一用户在物理空间行走时遇到障碍物;
[0170]
最大可行走时间确定模块22,用于预估每一个用户在其当前物理位置重置时的最大可行走时间;
[0171]
重置朝向和重置运动增益确定模块23,用于根据每一个用户的第一行走时间和每一个用户在其当前物理位置重置时的最大可行走时间,确定每一个用户对应的重置朝向和重置运动增益;
[0172]
重定向控制控制模块24,用于基于每一个用户对应的重置朝向和重置运动增益,实现对每一个用户的重定向控制。
[0173]
本发明提供的面向多人在线虚拟现实应用的重定向行走装置,控制位于不同物理空间的所有用户的重置同时发生、同时结束,保持用户虚拟空间状态的一致性,实现多人异地vr行走的运动公平;同时,在合理估计所有用户重置后至遇到障碍物而再次触发重置所需的时间区间以及所有用户从当前虚拟位置达到虚拟目标点所需时间的基础上,以延长所有用户重置间的步行距离为目的为每一个用户设定合适的重置朝向和重置运动增益,使得用户重置的频率显著降低。
[0174]
图5示例了一种电子设备的实体结构示意图,如图5所示,该电子设备可以包括:处理器(processor)510、通信接口(communications interface)520、存储器(memory)530和通信总线540,其中,处理器510,通信接口520,存储器530通过通信总线540完成相互间的通信。处理器510可以调用存储器530中的逻辑指令,以执行面向多人在线虚拟现实应用的重定向行走方法,该方法包括:在重置发生时,确定多人在线虚拟现实应用中每一个用户的第一行走时间;其中,每一个用户的第一行走时间为每一个用户从所处虚拟位置行走到自身虚拟目标点所需的时间;所述重置发生的条件为所述多人在线虚拟现实应用中任一用户在物理空间行走时遇到障碍物;预估每一个用户在其当前物理位置重置时的最大可行走时间;根据每一个用户的第一行走时间和每一个用户在其当前物理位置重置时的最大可行走时间,确定每一个用户对应的重置朝向和重置运动增益;基于每一个用户对应的重置朝向和重置运动增益,实现对每一个用户的重定向控制。
[0175]
此外,上述的存储器530中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0176]
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的面向多人在线虚拟现实应用的重定向行走方法,该方法包括:在重置发生时,确定多人在线虚拟现实应用中每一个用户的第一行走时间;其中,每一个用户的第一行走时间为每一个用户从所处虚拟位置行走到自身虚拟目标点所需的时间;所述重置发生的条件为所述多人在线虚拟现实应用中任一用户在物理空间行走时遇到障碍物;预估每一个用户在其当前物理位置重置时的最大可行走时间;根据每一个用户的第一行走时间和每一个用户在其当前物理位置重置时的最大可行走时间,确定每一个用户对应的重置朝向和重置运动增益;基于每一个用户对应的重置朝向和重置运动增益,实现对每一个用户的重定向控制。又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的面向多人在线虚拟现实应用的重定向行走方法,该方法包括:在重置发生时,确定多人在线
虚拟现实应用中每一个用户的第一行走时间;其中,每一个用户的第一行走时间为每一个用户从所处虚拟位置行走到自身虚拟目标点所需的时间;所述重置发生的条件为所述多人在线虚拟现实应用中任一用户在物理空间行走时遇到障碍物;预估每一个用户在其当前物理位置重置时的最大可行走时间;根据每一个用户的第一行走时间和每一个用户在其当前物理位置重置时的最大可行走时间,确定每一个用户对应的重置朝向和重置运动增益;基于每一个用户对应的重置朝向和重置运动增益,实现对每一个用户的重定向控制。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0177]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
[0178]
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1