一种虚拟现实娱乐驾驶的实现方法、装置及系统转让专利

申请号 : CN201610127118.X

文献号 : CN105807922B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 沈浩王海宁

申请人 : 湖南大学

摘要 :

本发明实施例公开了一种虚拟现实娱乐驾驶的实现方法、装置及系统,通过获取所有驾驶载体在驾驶场地中的位置信息,并获取第一驾驶载体上用户的观察姿态信息;根据位置信息和观察姿态信息,判断第一驾驶载体上用户的视域范围内是否出现第二驾驶载体;根据判断结果,使用第二虚拟用户和/或第一驾驶载体当前位置的虚拟环境,生成相应虚拟现实驾驶场景,并显示。在上述过程中,通过实时采集驾驶载体的实际位置,从而根据实际位置以及驾驶载体之间的相对位置,生成相应的多用户互动的虚拟现实驾驶场景,有效提高多人交互效率;而且,用户控制真实的驾驶载体,通过场景模式切换,实现不同虚拟环境的驾驶体验,具有真实度高、娱乐性强和成本低的特点。

权利要求 :

1.一种虚拟现实娱乐驾驶的实现方法,其特征在于,包括以下步骤:获取所有驾驶载体在驾驶场地中的位置信息;

获取第一驾驶载体上用户的观察姿态信息;

根据所述位置信息和所述观察姿态信息,判断第一驾驶载体上用户的视域范围内是否出现第二驾驶载体;

如果是,根据第二驾驶载体对应的第二虚拟用户和第一驾驶载体当前位置的虚拟环境,生成与所述视域范围相匹配的虚拟现实驾驶场景,并为第一驾驶载体上用户显示;如果否,根据第一驾驶载体当前位置的虚拟环境,生成与所述视域范围相匹配的虚拟现实驾驶场景,并为第一驾驶载体上用户显示。

2.根据权利要求1所述的虚拟现实娱乐驾驶的实现方法,其特征在于,还包括以下步骤:选择虚拟现实场景模式;

根据所述虚拟现实场景模式,在第一驾驶载体当前位置处,确定虚拟环境的环境属性信息,以及第一驾驶载体和/或第二驾驶载体对应的用户属性信息;

根据所述环境属性信息和所述用户属性信息,生成虚拟环境和虚拟用户。

3.根据权利要求2所述的虚拟现实娱乐驾驶的实现方法,其特征在于,还包括:根据所述环境属性信息和所述第一驾驶载体的用户属性信息,调整第一驾驶载体的行驶阻力和操作灵敏度。

4.根据权利要求1所述的虚拟现实娱乐驾驶的实现方法,其特征在于,还包括:根据第一驾驶载体和第二驾驶载体当前位置的虚拟环境,计算第一虚拟用户和第二虚拟用户之间的虚拟距离;

判断所述虚拟距离是否大于或等于可视阈值距离;

如果是,则第一虚拟用户和第二虚拟用户之间不可见,以第一驾驶载体对应的虚拟环境生成第一驾驶载体对应的虚拟现实驾驶场景;或者,如果否,当第一驾驶载体上用户观察姿态对应的视域范围内出现任意多个第二驾驶载体时,确定第二虚拟用户与虚拟环境的遮挡关系,并根据所述遮挡关系生成第一驾驶载体对应的虚拟现实驾驶场景。

5.一种虚拟现实娱乐驾驶的实现装置,其特征在于,包括:

位置信息获取模块,用于获取所有驾驶载体在驾驶场地中的位置信息;

观察姿态获取模块,用于获取第一驾驶载体上用户的观察姿态信息;

视域判断模块,用于根据所述位置信息和所述观察姿态信息,判断第一驾驶载体上用户的视域范围内是否出现第二驾驶载体;

第一虚拟现实场景生成模块,用于根据视域判断模块的判断结果,如果是,根据第二驾驶载体对应的虚拟用户和第一驾驶载体当前位置的虚拟环境,生成与所述视域范围相匹配的虚拟现实驾驶场景,并为第一驾驶载体上用户显示;如果否,根据第一驾驶载体当前位置的虚拟环境,生成与所述视域范围相匹配的虚拟现实驾驶场景,并为第一驾驶载体上用户显示。

6.根据权利要求5所述的虚拟现实娱乐驾驶的实现装置,其特征在于,包括:模式选择模块,用于选择虚拟现实场景模式;

属性信息确定模块,用于根据所述虚拟现实场景模式,在第一驾驶载体当前位置处,确定虚拟环境的环境属性信息,以及第一驾驶载体和/或第二驾驶载体对应的用户属性信息;

虚拟环境和用户管理模块,用于根据所述环境属性信息和所述用户属性信息,生成虚拟环境和虚拟用户。

7.根据权利要求6所述虚拟现实娱乐驾驶的实现装置,其特征在于,还包括:驾驶载体调整模块,用于根据所述环境属性信息和所述第一驾驶载体的用户属性信息,调整第一驾驶载体的行驶阻力和操作灵敏度。

8.根据权利要求5所述的虚拟现实娱乐驾驶的实现装置,其特征在于,还包括:虚拟距离计算模块,用于根据第一驾驶载体和第二驾驶载体当前位置的虚拟环境,计算第一虚拟用户和第二虚拟用户之间的虚拟距离;

虚拟距离判断模块,用于判断所述虚拟距离是否大于或等于可视阈值距离;

第二虚拟现实驾驶场景生成模块,用于根据虚拟距离判断模块22的判断结果,如果是,则第一虚拟用户和第二虚拟用户之间不可见,以第一驾驶载体对应的虚拟环境生成第一驾驶载体对应的虚拟现实驾驶场景;如果否,当第一驾驶载体上用户观察姿态对应的视域范围内出现任意多个第二驾驶载体时,确定第二虚拟用户与虚拟环境的遮挡关系,并根据所述遮挡关系生成第一驾驶载体对应的虚拟现实驾驶场景。

9.一种虚拟现实娱乐驾驶的实现系统,其特征在于,包括驾驶载体主体、用于控制驾驶载体主体的操作手柄、室内定位装置、信号天线、虚拟现实头盔、从计算机和主计算机,其中:所述室内定位装置设置于所述驾驶载体主体内,用于发出定位信号;

所述从计算机与所述驾驶载体主体对应设置、且与所述定位装置和所述信号天线均相连接,用于控制所述定位装置通过所述信号天线,向所述主计算机发送所述定位信号;

所述主计算机,接收来自驾驶载体主体的定位信号,并将驾驶载体在驾驶场地中的位置信息发送至相应的从计算机;

所述虚拟现实头盔包括陀螺仪和加速度传感器,用于获取用户的观察姿态信息;

所述从计算机还与所述虚拟现实头盔通过高清视频线缆和高速信号线缆相连接;所述从计算机通过所述高速信号线缆从所述虚拟现实头盔获取所述观察姿态信息,并根据所述观察姿态信息以及所述位置信息生成当前位置处、与所述观察姿态信息的视域范围相对应的虚拟现实驾驶场景,所述虚拟现实驾驶场景包括虚拟环境和虚拟用户;以及,将所述虚拟现实驾驶场景通过所述高清视频线缆发送到虚拟现实头盔中显示。

10.根据权利要求9所述的虚拟现实娱乐驾驶的实现系统,其特征在于,所述室内定位装置为蓝牙定位模组或WIFI定位模组。

说明书 :

一种虚拟现实娱乐驾驶的实现方法、装置及系统

技术领域

[0001] 本发明涉及虚拟现实技术领域,特别是涉及一种虚拟现实娱乐驾驶的实现方法、装置及系统。

背景技术

[0002] 虚拟现实技术主要是通过全视野显示屏配合手势、肢体等输入采集设备,让体验者享受完全身临其境的虚拟体验。虚拟现实技术目前正被广泛应用于娱乐体验项目,比如将虚拟现实和振动平台联合在一起开发的虚拟过山车、碰碰车等驾驶类娱乐体验内容。
[0003] 在虚拟碰碰车娱乐驾驶体验项目中,一般用户进入固定在模拟平台上的驾驶载体中,佩戴虚拟现实装置,就进入虚拟的碰碰车驾驶场景中,通过控制驾驶载体上的方向盘、踏板等装置,进行虚拟驾驶,并由虚拟现实装置提供不同操作如前进、后退、碰撞等带来的视觉效果,由模拟平台的传动系统给用户带来碰撞等触觉效果;然而目前的虚拟娱乐驾驶体验项目,由于多人互动需要耗费大量的计算资源例如需要不断采集用户的真实操作以计算用户在虚拟场景中定位位置,并且实时采集用户姿态,计算渲染相应的虚拟驾驶场景,当多个用户同时参与时,耗费更大的计算量,甚至造成卡顿,大大降低娱乐体验,所述虚拟娱乐驾驶体验项目一般是单人体验。因此如何方便实现虚拟娱乐驾驶体验项目的多人互动是本领域技术人员亟需解决的技术问题。

发明内容

[0004] 本发明实施例中提供了一种虚拟现实娱乐驾驶的实现方法、装置及系统,以解决现有技术中的娱乐驾驶交互性难以实现的问题。
[0005] 为了解决上述技术问题,本发明实施例公开了如下技术方案:
[0006] 本发明实施例公开了一种虚拟现实娱乐驾驶的实现方法,该方法包括:
[0007] 获取所有驾驶载体在驾驶场地中的位置信息;
[0008] 获取第一驾驶载体上用户的观察姿态信息;
[0009] 根据所述位置信息和所述观察姿态信息,判断第一驾驶载体上用户的视域范围内是否出现第二驾驶载体;
[0010] 如果是,根据第二驾驶载体对应的第二虚拟用户和第一驾驶载体当前位置的虚拟环境,生成与所述视域范围相匹配的虚拟现实驾驶场景,并为第一驾驶载体上用户显示;如果否,根据第一驾驶载体当前位置的虚拟环境,生成与所述视域范围相匹配的虚拟现实驾驶场景,并为第一驾驶载体上用户显示。
[0011] 优选地,所述虚拟现实娱乐驾驶的实现方法,还包括:
[0012] 选择虚拟现实场景模式;
[0013] 根据所述虚拟现实场景模式,在第一驾驶载体当前位置处,确定虚拟环境的环境属性信息,以及第一驾驶载体和/或第二驾驶载体对应的用户属性信息;
[0014] 根据所述环境属性信息和所述用户属性信息,生成虚拟环境和虚拟用户。
[0015] 优选地,所述虚拟现实娱乐驾驶的实现方法,还包括:
[0016] 根据所述环境属性信息和所述第一驾驶载体的用户属性信息,调整第一驾驶载体的行驶阻力和操作灵敏度。
[0017] 优选地,所述虚拟现实娱乐驾驶的实现方法,还包括:
[0018] 根据第一驾驶载体和第二驾驶载体当前位置的虚拟环境,计算第一虚拟用户和第二虚拟用户之间的虚拟距离;
[0019] 判断所述虚拟距离是否大于或等于可视阈值距离;
[0020] 如果是,则第一虚拟用户和第二虚拟用户之间不可见,以第一驾驶载体对应的虚拟环境生成第一驾驶载体对应的虚拟现实驾驶场景;或者,
[0021] 如果否,当第一驾驶载体上用户观察姿态对应的视域范围内出现任意多个第二驾驶载体时,确定第二虚拟用户与虚拟环境的遮挡关系,并根据所述遮挡关系生成第一驾驶载体对应的虚拟现实驾驶场景。
[0022] 本发明实施例还公开了一种虚拟现实娱乐驾驶的实现装置,该装置包括:
[0023] 位置信息获取模块,用于获取所有驾驶载体在驾驶场地中的位置信息;
[0024] 观察姿态获取模块,用于获取第一驾驶载体上用户的观察姿态信息;
[0025] 视域判断模块,用于根据所述位置信息和所述观察姿态信息,判断第一驾驶载体上用户的视域范围内是否出现第二驾驶载体;
[0026] 第一虚拟现实场景生成模块,用于根据视域判断模块的判断结果,如果是,根据第二驾驶载体对应的虚拟用户和第一驾驶载体当前位置的虚拟环境,生成与所述视域范围相匹配的虚拟现实驾驶场景,并为第一驾驶载体上用户显示;如果否,根据第一驾驶载体当前位置的虚拟环境,生成与所述视域范围相匹配的虚拟现实驾驶场景,并为第一驾驶载体上用户显示。
[0027] 优选地,所述虚拟现实娱乐驾驶的实现装置,还包括:
[0028] 模式选择模块,用于选择虚拟现实场景模式;
[0029] 属性信息确定模块,用于根据所述虚拟现实场景模式,在第一驾驶载体当前位置处,确定虚拟环境的环境属性信息,以及第一驾驶载体和/或第二驾驶载体对应的用户属性信息;
[0030] 虚拟环境和用户管理模块,用于根据所述环境属性信息和所述用户属性信息,生成虚拟环境和虚拟用户。
[0031] 优选地,所述虚拟现实娱乐驾驶的实现装置,还包括:
[0032] 驾驶载体调整模块,用于根据所述环境属性信息和所述第一驾驶载体的用户属性信息,调整第一驾驶载体的行驶阻力和操作灵敏度。
[0033] 优选地,所述虚拟现实娱乐驾驶的实现装置,还包括:
[0034] 虚拟距离计算模块,用于根据第一驾驶载体和第二驾驶载体当前位置的虚拟环境,计算第一虚拟用户和第二虚拟用户之间的虚拟距离;
[0035] 虚拟距离判断模块,用于判断所述虚拟距离是否大于或等于可视阈值距离;
[0036] 第二虚拟现实驾驶场景生成模块,用于根据虚拟距离判断模块22的判断结果,如果是,则第一虚拟用户和第二虚拟用户之间不可见,以第一驾驶载体对应的虚拟环境生成第一驾驶载体对应的虚拟现实驾驶场景;如果否,当第一驾驶载体上用户观察姿态对应的视域范围内出现任意多个第二驾驶载体时,确定第二虚拟用户与虚拟环境的遮挡关系,并根据所述遮挡关系生成第一驾驶载体对应的虚拟现实驾驶场景。
[0037] 本发明实施例还公开了一种虚拟现实娱乐驾驶的实现系统,包括驾驶载体主体、用于控制驾驶载体主体的操作手柄、室内定位装置、信号天线、虚拟现实头盔、从计算机和主计算机,其中:
[0038] 所述室内定位装置设置于所述驾驶载体主体内,用于发出定位信号;
[0039] 所述从计算机与所述驾驶载体主体对应设置、且与所述定位装置和所述信号天线均相连接,用于控制所述定位装置通过所述信号天线,向所述主计算机发送所述定位信号;
[0040] 所述主计算机,接收来自驾驶载体主体的定位信号,并将驾驶载体在驾驶场地中的位置信息发送至相应的从计算机;
[0041] 所述虚拟现实头盔包括陀螺仪和加速度传感器,用于获取用户的观察姿态信息;
[0042] 所述从计算机还与所述虚拟现实头盔通过高清视频线缆和高速信号线缆相连接;所述从计算机通过所述高速信号线缆从所述虚拟现实头盔获取所述观察姿态信息,并根据所述观察姿态信息以及所述位置信息生成当前位置处、与所述观察姿态信息的视域范围相对应的虚拟现实驾驶场景,所述虚拟现实驾驶场景包括虚拟环境和虚拟用户;以及,将所述虚拟现实驾驶场景通过所述高清视频线缆发送到虚拟现实头盔中显示。
[0043] 优选地,所述室内定位装置为蓝牙定位模组或WIFI定位模组。
[0044] 由以上技术方案可见,本发明实施例提供的虚拟现实娱乐驾驶的实现方法、装置及系统,通过获取所有驾驶载体在驾驶场地中的位置信息,并获取第一驾驶载体上用户的观察姿态信息;根据所述位置信息和所述观察姿态信息,判断第一驾驶载体上用户的视域范围内是否出现第二驾驶载体;如果是,根据第二驾驶载体对应的虚拟用户和第一驾驶载体当前位置的虚拟环境,生成与所述视域范围相匹配的虚拟现实驾驶场景,并为第一驾驶载体上用户显示;如果否,根据第一驾驶载体当前位置的虚拟环境,生成与所述视域范围相匹配的虚拟现实驾驶场景,并为第一驾驶载体上用户显示。在上述过程中,通过实时采集驾驶载体的实际位置,从而根据所述实际位置对应的虚拟环境,以及驾驶载体之间的相对位置生成相应的与其他用户互动的虚拟现实驾驶场景,无需精确采集用户的实际操作、操作时间等,有效节省了虚拟用户在虚拟环境位置的计算量,提高虚拟现实驾驶场景的多人交互效率;而且,用户控制真实的驾驶载体,进一步保证了虚拟现实娱乐驾驶体验的真实感;另外,通过场景模式的切换,可以实现不同虚拟环境的娱乐驾驶体验,具有娱乐性强和成本低的特点。

附图说明

[0045] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0046] 图1为本发明实施例提供的一种虚拟现实娱乐驾驶的实现方法的流程示意图;
[0047] 图2为本发明实施例提供的一种虚拟环境和虚拟用户生成方法的流程示意图;
[0048] 图3为本发明实施例提供的另一种虚拟现实娱乐驾驶的实现方法的流程示意图;
[0049] 图4为本发明实施例提供的一种虚拟现实娱乐驾驶的实现装置的结构示意图;
[0050] 图5为本发明实施例提供的一种第一虚拟现实场景生成模块的结构示意图;
[0051] 图6为本发明实施例提供的另一种虚拟现实娱乐驾驶装置的结构示意图;
[0052] 图7为本发明实施例提供的一种虚拟现实娱乐驾驶的实现系统的结构示意图。

具体实施方式

[0053] 为了使本技术领域的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
[0054] 参见图1,为本发明实施例提供的一种虚拟现实娱乐驾驶的实现方法的流程示意图,该方法包括以下步骤:
[0055] 步骤S101:获取所有驾驶载体在驾驶场地中的位置信息。
[0056] 在本发明实施例中,所述驾驶载体可以为配置有动力系统以及操作系统的娱乐用驾驶载体,例如可以为碰碰车、电动车等,且所述驾驶载体的形式不做限制,例如可以为坦克样式或赛车样式的驾驶载体,用户控制所述驾驶载体在一定尺寸的驾驶场地内进行真实地运动。
[0057] 为了获取所述驾驶载体在驾驶场地中的位置信息,本发明实施例采用室内定位技术对驾驶载体的实际位置进行定位,优选地,可以使用蓝牙定位、WIFI定位;当然,在具体实施时,还可以使用其他例如GPS定位、红外线定位和超声波定位等定位技术以获取所述位置信息。而且,由于用户被限制驾驶载体内,通过定位驾驶载体就能方便实现用户的定位,即无需再对用户进行定位。
[0058] 需要说明的是,所述驾驶载体包括任意多个驾驶载体,即在本发明实施例中,可以进行单人模式的虚拟现实娱乐驾驶,也可以进行多人互动的虚拟现实娱乐驾驶对战等;例如在单人模式中,只有用户A操纵驾驶载体A在驾驶场地中进行娱乐,则只需要获取所述驾驶载体A在驾驶场地中的位置信息;在多人互动时,例如用户A操纵驾驶载体A,用户B操纵驾驶载体B,用户C操纵驾驶载体C以及用户D操纵驾驶载体D,上述用户和驾驶载体同时在驾驶场地中进行娱乐,则对于用户A以及驾驶载体A,不但需要通过定位装置实时获取驾驶载体A的位置信息,同时还需获取驾驶载体B、驾驶载体C和驾驶载体D分别对应的位置信息,并将所有驾驶载体对应的位置信息发送至驾驶载体A,以便于为用户A显示相应的虚拟现实驾驶场景;同样对于其他驾驶载体,所述位置信息的获取如上所述,在此不再赘述。
[0059] 步骤S102:获取第一驾驶载体用户的观察姿态信息。
[0060] 在实际虚拟现实娱乐驾驶中,使用虚拟现实头盔为用户提供虚拟现实画面,同时所述虚拟现实头盔覆盖用户人眼的全部视野,防止用户余光看到真实的环境,从而增强娱乐沉浸感。当然,在具体实施时,所述虚拟现实头盔也可以为其他虚拟现实装置,例如虚拟现实眼镜等。在本发明实施例中,以虚拟现实头盔为例,对所述虚拟现实娱乐驾驶的实现方法进行详细描述。
[0061] 所述虚拟现实头盔中设置陀螺仪等方向传感器,以及加速度传感器,通过所述陀螺仪和加速度传感器,采集用户的俯仰角、翻滚角以及不同坐标方向的加速度值等,进而确定用户的观察姿态信息;所述观察姿态信息,包括用户的观察方向。在具体实施时,例如用户的驾驶载体处于静止状态,仅当用户的头部发生转动、仰视或俯视时,所述陀螺仪和加速度传感器能够采集用户头部的位置变化,并确定观察方向;或者,当用户的驾驶载体在用户的操作下进行旋转时,所述陀螺仪和加速度传感也能够采集用户整体随驾驶载体的位置变化,并确定观察方向,具体通过陀螺仪和加速度传感器确定用户驾驶姿态的过程,为目前常用的技术手段,在此不再赘述。
[0062] 步骤S103:根据所述位置信息和所述观察姿态信息,判断第一驾驶载体上用户的视域范围内是否出现第二驾驶载体。
[0063] 在步骤S101描述的多人互动模式中,通过驾驶载体对应的位置信息判断驾驶载体之间是否可见;在具体实施时,对于用户A和驾驶载体A,通过对驾驶场地中参与游戏的所有驾驶载体位置信息的采集,计算得到驾驶载体B、驾驶载体C以及驾驶载体D分别与驾驶载体A的实际距离;判断所述实际距离是否大于或等于一预设的距离阈值,如果是,则可以认为无论用户A如何调整观察姿态也无法在观察到所述驾驶载体,例如如果驾驶载体B相对于驾驶载体A的实际距离大于所述距离阈值,则判定用户A无法观察到驾驶载体B,即在用户A的虚拟现实头盔现实的虚拟画面中,用户A无法观察到驾驶载体B对应的虚拟用户形象;而如果驾驶载体C相对于驾驶载体A的实际距离小于所述距离阈值,则判定驾驶载体C在用户A的视野内,即驾驶载体C有可能被用户A在虚拟现实头盔中观察到,进一步判断驾驶载体C是否位于用户A观察姿态对应的视域范围内,如果是,则判定用户A能够观察到驾驶载体C,否则,则判定用户A无法观察到驾驶载体C;其中,所述驾驶载体C是否位于用户A观察姿态对应的视域范围内,可以通过人眼的视角(120度-188度)、用户A的位置信息以及所述距离阈值,划定所述视域范围,进一步通过比对驾驶载体C的位置信息,从而确定所述驾驶载体C是否位于所述视域范围内。基于上述过程的描述,可以判定从用户A的角度能否观察到其他所有的驾驶载体对应的虚拟用户,同样,对于其他参与游戏的用户例如用户B、用户C或用户D,也采用同样的方式判定能否观察到其他驾驶载体对应的虚拟用户。
[0064] 步骤S104:如果是,根据第二驾驶载体对应的虚拟用户和第一驾驶载体当前位置的虚拟环境,生成与所述视域范围相匹配的虚拟现实驾驶场景,并为第一驾驶载体上用户显示;如果否,根据第一驾驶载体当前位置的虚拟环境,生成与所述视域范围相匹配的虚拟现实驾驶场景,并为第一驾驶载体上用户显示。
[0065] 所述虚拟用户可以理解为,虚拟现实头盔中显示的、参与游戏用户的虚拟形象,同时由于在实际场景中用户被限制在驾驶载体中,因此所述虚拟用户可以理解为用户虚拟形象与驾驶载体虚拟形象的组合,例如所述用户虚拟形象可以为卡通人物,而驾驶载体虚拟形象可以为坦克或者战舰等,而虚拟用户则可以为由卡通人物乘坐在坦克上构成的虚拟形象。
[0066] 所述虚拟环境可以理解为,虚拟现实头盔中渲染显示的、虚拟用户所处的虚拟环境。例如所述虚拟环境可以为森林、沙漠、海洋等,且为了增加游戏的趣味性和真实性,还可以增加雨、雷电等天气因素,以使用户在不同的虚拟环境中进行娱乐。
[0067] 根据步骤S103的判断结果,如果第一驾驶载体上用户的虚拟现实头盔中需要显示一个或多个第二驾驶载体时,根据第二驾驶载体对应的虚拟用户和第一驾驶载体当前位置的虚拟环境,生成与所述视域范围相匹配的虚拟现实驾驶场景,并为第一驾驶载体上用户显示。在具体实施时,如果判断用户C以及驾驶载体C对应的虚拟用户C需要在用户A的虚拟现实头盔中显示,则渲染出驾驶载体A当前所在位置、以及用户A当前观察姿态对应的虚拟环境,并在根据驾驶载体A和驾驶载体C的位置信息,计算驾驶载体A和驾驶载体C之间的实际距离,利用透视原理,在上述虚拟环境中渲染出由用户C和驾驶载体C的虚拟形象构成的虚拟用户C,使得在用户A的虚拟头盔中能够看到包括虚拟环境和虚拟用户C的虚拟现实驾驶场景,而且给用户A带来在虚拟现实驾驶场景中与虚拟用户C远近程度的直观感受。当然,如果第二驾驶载体无需在用户A的虚拟现实头盔中显示,则直接根据驾驶载体A当前位置对应的虚拟环境渲染生成所述虚拟现实驾驶场景。同样,对于参与游戏的其他用户例如用户B或用户C等,采用同样的方式,分别为用户B的虚拟现实头盔渲染相应的虚拟现实驾驶场景,以及为用户C的虚拟现实头盔渲染相应的虚拟现实驾驶场景。
[0068] 为了生成所述虚拟用户和所述虚拟环境,参见图2,为本发明实施例提供的一种虚拟环境和虚拟用户生成方法的流程示意图,该方法包括以下步骤:
[0069] 步骤S1041:选择虚拟现实场景模式。
[0070] 用户可以在游戏开始前,设置选择虚拟现实场景模式。在具体实施时,可以对虚拟环境和虚拟用户进行分别设置,例如设置所述虚拟环境为沙漠模式、平原模式、城市模式、森林模式或者海洋模式等,以实现对不同环境的虚拟;同时,设置所述虚拟用户为真人模式,即以用户的真人头像作为虚拟用户形象,或者卡通人物模式,即以卡通动漫人物形象作为虚拟用户形象等;而且,在虚拟用户的确定过程中,同时选择驾驶载体的虚拟形象为坦克模式、战船模式、潜艇模式等。
[0071] 步骤S1042:根据所述虚拟现实场景模式,在第一驾驶载体当前位置处,确定虚拟环境的环境属性信息,以及第一驾驶载体和/或第二驾驶载体对应的用户属性信息。
[0072] 所述环境属性信息用于描述在所述第一驾驶载体所在位置处周边虚拟环境的属性。在具体实施时,例如如果选择虚拟现实场景模式为沙漠模式,则所述环境属性信息可以包括当前位置附近沙丘的起伏程度;如果选择虚拟现实场景模式为森林模式,则所述环境属性信息包括当前位置附近地面的起伏度、泥泞度等。需要说明的是,所述环境属性信息与所述位置信息紧密相关,可以在所述位置信息对应位置处或者所述位置信息对应位置区域处设置所述环境属性信息,以实现对虚拟环境的控制。所述用户属性信息用于描述驾驶载体对应虚拟用户的属性,例如所述用户属性信息包括虚拟用户的尺寸以及虚拟用户的损伤度等;在具体实施时,对于用户A,从用户A的虚拟现实头盔中显示虚拟用户A的驾驶窗口等组件,根据选择的虚拟现实场景模式,例如虚拟用户A为坦克时获取虚拟用户A驾驶窗口尺寸等用户属性信息,或者如果虚拟用户C处于用户A的视域内,还需要显示虚拟用户C,则同样需要获取虚拟用户C的用户属性信息。所述用户属性信息可以是根据游戏进程不断变化的属性信息,例如在对战中,虚拟用户C被虚拟用户A击中,则在用户A的虚拟现实头盔中显示的虚拟用户C的损伤度增加,或者虚拟用户C在虚拟场景中获得了修理包,则虚拟用户C对应的损伤度减少。
[0073] 步骤S1403:据所述环境属性信息和所述用户属性信息,生成虚拟环境和虚拟用户。
[0074] 根据步骤S1402中确定的环境属性信息和所述用户属性信息,使用计算机渲染技术生成逼真的虚拟环境和虚拟用户,并最终产生虚拟现实驾驶场景。
[0075] 通过虚拟现实场景模式的选择设置,在同一块驾驶场地中使用相同的驾驶载体,可以进行多种不同场景下的虚拟驾驶体验,在增强娱乐性的同时,免去了为不同驾驶场景设计不同的驾驶场地和驾驶载体,有效降低成本。
[0076] 为了增加虚拟驾驶的真实感,可选地,在上述虚拟现实娱乐驾驶实现方法的基础上,本发明实施例还包括以下步骤:根据所述环境属性信息和所述第一驾驶载体的用户属性信息,调整第一驾驶载体的行驶阻力和操作灵敏度。
[0077] 在具体实施时,根据驾驶载体A当前的位置信息,获取与所述位置信息对应的环境属性信息,例如如果所述环境属性信息表明虚拟用户A在虚拟环境中山坡上并向上爬坡,则增大驾驶载体A的行驶阻力,给用户A真实的上坡的感觉,具体可以通过在轮子上增加摩擦片、进而控制摩擦片与轮子摩擦力的方式进行控制,在此不再赘述;或者如果根据当前位置对应的环境属性信息的泥泞度很高,例如虚拟用户A位于热带雨林的虚拟环境中,则相应的降低驾驶载体A的转向操作系统的灵敏度,以模拟在非常泥泞的虚拟环境中虚拟用户A难以控制的情况。另外,根据虚拟用户A的用户属性信息,例如虚拟用户A被击中,为了模拟发动机受损,也可增加所述驾驶载体A的形式阻力。
[0078] 在图1所示的虚拟现实娱乐驾驶的实现方法的基础上,参见图3,为本发明实施例提供的另一种虚拟现实娱乐驾驶的实现方法的流程示意图,该方法包括以下步骤:
[0079] 步骤S201:根据第一驾驶载体和第二驾驶载体当前位置的虚拟环境,计算第一虚拟用户和第二虚拟用户之间的虚拟距离。
[0080] 在具体实施时,根据步骤S101获得的第一驾驶载体的位置信息,以及第二驾驶载体的位置信息;根据第一驾驶载体的位置信息确定所述第一驾驶载体在其当前位置的虚拟环境,根据第二驾驶载体的位置信息确定第二驾驶载体在其当前位置的虚拟环境,例如在虚拟环境中,第一驾驶载体对应的第一虚拟用户在山顶,第二驾驶载体对应的第二虚拟用户在山谷,则计算所述山顶到山谷的距离作为所述虚拟距离。具体地,所述虚拟距离的计算可以通过所述第一驾驶载体和所述第二驾驶载体在驾驶场地的实际距离,乘以一倍数因子的方式进行,所述倍数因子与虚拟环境相对应,例如如果当前虚拟环境为山地,则所述倍数因子可以为山地的斜率等;另外,所述虚拟距离还可以通过以下方式获得:通过第一驾驶载体的位置信息获得对应的虚拟环境中的场景坐标,以及第二驾驶载体的位置信息获得对应的虚拟环境中的场景坐标,根据所述场景坐标,计算所述虚拟距离。
[0081] 步骤S202:判断所述虚拟距离是否大于或等于可视阈值距离。
[0082] 根据步骤S201的计算结果,比对所述虚拟距离与所述可视阈值距离的大小;其中,所述可视阈值距离可以为预设的固定距离,也可以为根据虚拟环境动态变化的阈值距离。在具体实施时,例如对于驾驶载体A,根据驾驶载体A当前的位置信息获得相应的虚拟环境,如果驾驶载体A当前位置对应的虚拟环境为浓雾环境,则设置所述可视阈值距离较小,即实现即使驾驶载体A与驾驶载体B实际距离很近,且对应的虚拟用户A与虚拟用户B在虚拟环境的虚拟距离很近,从用户A的虚拟现实头盔也无法从视觉上发现虚拟用户B的效果;当然,如果驾驶载体A当前位置对应的虚拟环境为平原,则设置所述可视阈值距离较大,以模拟虚拟环境视野较好的情景。
[0083] 步骤S203:如果是,则第一虚拟用户和第二虚拟用户之间不可见,以第一驾驶载体对应的虚拟环境生成所述虚拟现实驾驶场景。
[0084] 如果判断第一虚拟用户和第二虚拟用户之间在虚拟环境中的虚拟距离大于所述可视阈值距离,则判断所述第一虚拟用户和所述第二虚拟用户之间不可见;对于第一驾驶载体上用户而言,只需显示第一驾驶载体当前位置对应的虚拟环境,作为所述虚拟现实驾驶场景为第一驾驶载体用户显示;对于第二驾驶载体上用户而言,同样只需显示第二驾驶载体当前位置对应的虚拟环境,作为所述虚拟现实驾驶场景为第二驾驶载体用户显示。
[0085] 步骤S204:如果否,当第一驾驶载体上用户观察姿态对应的视域范围内出现任意多个第二驾驶载体时,确定第二驾驶载体对应的虚拟用户与虚拟环境的遮挡关系,并根据所述遮挡关系生成虚拟现实驾驶场景。
[0086] 即使通过步骤S202中虚拟距离的判断,第一驾驶载体上用户从虚拟现实头盔中可以看到任意多个第二驾驶载体对应的第二虚拟用户,第一驾驶载体当前位置与第二驾驶载体当前位置之间的虚拟环境仍然可以阻碍第一驾驶载体上用户对第二虚拟用户的观察。在本发明实施例中,进一步确定第二虚拟用户与虚拟环境的遮挡关系,进而通过所述遮挡关系实现所述第二虚拟用户的部分显示或不显示。具体地,通过第一虚拟用户对应的场景坐标和第二虚拟用户对应的场景坐标,确定在上述场景坐标之间是否存在虚拟环境中的虚拟遮挡物,其中所述虚拟遮挡物可以为树木、石头等虚拟环境中设定的物体;如果存在所述虚拟遮挡物,进一步比对所述虚拟遮挡物的尺寸和第二虚拟用户的尺寸,需要说明的是为了增加交互的真实性,所述虚拟遮挡物的尺寸和所述第二虚拟用户的尺寸均为从第一驾驶载体用户观察姿态基础上的透视尺寸,如果所述虚拟遮挡物的尺寸大于所述第二虚拟用户的尺寸,则第二虚拟用户在第一驾驶载体上用户的虚拟现实头盔中不显示,如果所述虚拟遮挡物的尺寸小于所述第二虚拟用户的尺寸,则在上述虚拟现实头盔中只显示第二虚拟用户的部分组件例如车头、车尾或车顶等。
[0087] 为了防止用户的操作不当导致所述驾驶载体冲出驾驶场地、造成安全事故,可选地,所述虚拟现实娱乐驾驶的实现方法还包括步骤:在驾驶场地中设置预警位置,当驾驶载体到达所述预警位置时,产生预警虚拟现实驾驶场景。
[0088] 在具体实施时,所述预警位置可以以驾驶场地边缘向内缩进一定距离确定所述预警位置,当驾驶载体到达所述预警位置时,产生预警虚拟现实驾驶场景。具体地,所述预警虚拟现实驾驶场景可以为高耸的高山或者栅栏等,给驾驶载体上用户禁止前进的直观视觉印象;当然,也可以在用户的虚拟现实头盔中显示警报信息,以提醒用户超出游戏场地边界,需要后退等。另外,当所述驾驶载体到达所述预警位置时,还可以切断所述驾驶载体的动力或者控制所述驾驶载体进行刹车操作,以保证用户的安全。
[0089] 由上述实施例可见,本发明实施例提供的虚拟现实娱乐驾驶的实现方法,通过获取所有驾驶载体在驾驶场地中的位置信息,并获取第一驾驶载体上用户的观察姿态信息;根据所述位置信息和所述观察姿态信息,判断第一驾驶载体上用户的视域范围内是否出现第二驾驶载体;如果是,根据第二驾驶载体对应的虚拟用户和第一驾驶载体当前位置的虚拟环境,生成与所述视域范围相匹配的虚拟现实驾驶场景,并为第一驾驶载体上用户显示;
如果否,根据第一驾驶载体当前位置的虚拟环境,生成与所述视域范围相匹配的虚拟现实驾驶场景,并为第一驾驶载体上用户显示。在上述过程中,通过实时采集驾驶载体的实际位置,从而根据所述实际位置对应的虚拟环境,以及驾驶载体之间的相对位置生成相应的与其他用户互动的虚拟现实驾驶场景,无需精确采集用户的实际操作、操作时间等,有效节省了虚拟用户在虚拟环境位置的计算量,提高虚拟现实驾驶场景的多人交互效率;而且,用户控制真实的驾驶载体,进一步保证了虚拟现实娱乐驾驶体验的真实感;另外,通过场景模式的切换,可以实现不同虚拟环境的娱乐驾驶体验,具有娱乐性强和成本低的特点。
[0090] 通过以上的方法实施例的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:只读存储器(ROM)、随机存取存储器(RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
[0091] 与本发明提供的虚拟现实娱乐驾驶的实现方法实施例相对应,本发明还提供了一种虚拟现实娱乐驾驶的实现装置。
[0092] 参见图4,为本发明实施例提供的一种虚拟现实娱乐驾驶的实现装置的结构示意图,该装置包括:
[0093] 位置信息获取模块11,用于获取所有驾驶载体在驾驶场地中的位置信息;
[0094] 观察姿态获取模块12,用于获取第一驾驶载体上用户的观察姿态信息;
[0095] 视域判断模块13,用于根据所述位置信息和所述观察姿态信息,判断第一驾驶载体上用户的视域范围内是否出现第二驾驶载体;
[0096] 第一虚拟现实场景生成模块14,用于根据视域判断模块130的判断结果,如果是,根据第二驾驶载体对应的虚拟用户和第一驾驶载体当前位置的虚拟环境,生成与所述视域范围相匹配的虚拟现实驾驶场景,并为第一驾驶载体上用户显示;如果否,根据第一驾驶载体当前位置的虚拟环境,生成与所述视域范围相匹配的虚拟现实驾驶场景,并为第一驾驶载体上用户显示。
[0097] 可选地,参见图5,为本发明实施例提供的一种第一虚拟现实场景生成模块的结构示意图,所述第一虚拟现实场景生成模块14还包括:
[0098] 模式选择模块141,用于选择虚拟现实场景模式;
[0099] 属性信息确定模块142,用于根据所述虚拟现实场景模式,在第一驾驶载体当前位置处,确定虚拟环境的环境属性信息,以及第一驾驶载体和/或第二驾驶载体对应的用户属性信息;
[0100] 虚拟环境和用户管理模块143,根据所述环境属性信息和所述用户属性信息,生成虚拟环境和虚拟用户。
[0101] 可选地,所述虚拟现实娱乐驾驶的实现装置还包括:
[0102] 驾驶载体调整模块,用于根据所述环境属性信息和所述第一驾驶载体的用户属性信息,调整第一驾驶载体的行驶阻力和操作灵敏度。
[0103] 可选地,参见图6,为本发明实施例提供的另一种虚拟现实娱乐驾驶装置的结构示意图,为了增加用户互动的真实感,在图4所示装置的基础上还包括:
[0104] 虚拟距离计算模块21,用于根据第一驾驶载体和第二驾驶载体当前位置的虚拟环境,计算第一虚拟用户和第二虚拟用户之间的虚拟距离;
[0105] 虚拟距离判断模块22,用于判断所述虚拟距离是否大于或等于可视阈值距离;
[0106] 第二虚拟现实驾驶场景生成模块23,用于根据虚拟距离判断模块22的判断结果,如果是,则第一虚拟用户和第二虚拟用户之间不可见,以第一驾驶载体对应的虚拟环境生成第一驾驶载体对应的虚拟现实驾驶场景;如果否,当第一驾驶载体上用户观察姿态对应的视域范围内出现任意多个第二驾驶载体时,确定第二虚拟用户与虚拟环境的遮挡关系,并根据所述遮挡关系生成第一驾驶载体对应的虚拟现实驾驶场景。
[0107] 可选地,为了保证虚拟现实娱乐驾驶的安全性,本发明实施例中的虚拟现实娱乐驾驶装置还包括:
[0108] 预警管理模块,用于在驾驶场地中设置预警位置,当驾驶载体到达所述预警位置时,向第二虚拟现实驾驶场景生成模块23发出预警指令,用于控制所述第二虚拟现实驾驶场景生成模块23产生预警虚拟现实驾驶场景。
[0109] 由上述实施例可见,本发明实施例提供的虚拟现实娱乐驾驶的实现装置,通过获取所有驾驶载体在驾驶场地中的位置信息,并获取第一驾驶载体上用户的观察姿态信息;根据所述位置信息和所述观察姿态信息,判断第一驾驶载体上用户的视域范围内是否出现第二驾驶载体;如果是,根据第二驾驶载体对应的虚拟用户和第一驾驶载体当前位置的虚拟环境,生成与所述视域范围相匹配的虚拟现实驾驶场景,并为第一驾驶载体上用户显示;
如果否,根据第一驾驶载体当前位置的虚拟环境,生成与所述视域范围相匹配的虚拟现实驾驶场景,并为第一驾驶载体上用户显示。在上述过程中,通过实时采集驾驶载体的实际位置,从而根据所述实际位置对应的虚拟环境,以及驾驶载体之间的相对位置生成相应的于其他用户互动的虚拟现实驾驶场景,无需精确采集用户的实际操作、操作时间等,有效节省了虚拟用户在虚拟环境位置的计算量,提高虚拟现实驾驶场景的多人交互效率;而且,用户控制真实的驾驶载体,进一步保证了虚拟现实娱乐驾驶体验的真实感;另外,通过场景模式的切换,可以实现不同虚拟环境的娱乐驾驶体验,具有娱乐性强和成本低的特点。
[0110] 本发明还提供了一种虚拟现实娱乐驾驶的实现系统,参见图7,为本发明实施例提供的一种虚拟现实娱乐驾驶的实现系统的结构示意图,该系统包括驾驶载体主体31、用于控制驾驶载体主体31的操作手柄32、室内定位装置33、信号天线34、虚拟现实头盔35、从计算机36和主计算机37,其中:
[0111] 所述室内定位装置33设置于所述驾驶载体主体31内,用于发出定位信号;
[0112] 所述从计算机36与所述驾驶载体主体31对应设置、且与所述室内定位装置33和所述信号天线34均相连接,用于控制所述室内定位装置33通过所述信号天线34,向所述主计算机37发送所述定位信号;其中所述对应设置可以理解为,每个驾驶载体主体31上均设置有1台所述从计算机36;
[0113] 所述主计算机37,接收来自驾驶载体主体31的定位信号,并将驾驶载体主体31在驾驶场地中的位置信息发送至相应的从计算机36;其中所述位置信息既包括与发出定位信号的驾驶载体主体31匹配的位置信息,还包括在驾驶场地中参与游戏的其他驾驶载体主体31的位置信息;
[0114] 所述虚拟现实头盔35包括陀螺仪和加速度传感器,用于获取用户的观察姿态信息;
[0115] 所述从计算机36还与所述虚拟现实头盔通过高清视频线缆和高速信号线缆相连接;所述从计算机36通过所述高速信号线缆从所述虚拟现实头盔35获取所述观察姿态信息,并根据所述位置信息和所述观察姿态信息,判断用户的视域范围内是否出现第二驾驶载体;如果是,根据第二驾驶载体对应的虚拟用户和当前驶载体所在位置的虚拟环境,生成与所述视域范围相匹配的虚拟现实驾驶场景;如果否,根据当前驾驶载体所在位置的虚拟环境,生成与所述视域范围相匹配的虚拟现实驾驶场景;以及,将所述虚拟现实驾驶场景通过所述高清视频线缆发送到虚拟现实头盔中显示。其中,所述当前驾驶载体可以理解为所述虚拟现实头盔对应的驾驶载体。
[0116] 可选地,所述室内定位装置33包括蓝牙定位模组或WIFI定位模组。
[0117] 另外,需要说明的是,在上述虚拟现实娱乐驾驶的实现方法、实现装置和实现系统的实施例中,第一驾驶载体和第二驾驶载体,以及相应的第一虚拟用户和第二虚拟用户,均是示例性描述,在实际游戏场景中,例如存在驾驶载体A、驾驶载体B、驾驶载体C和驾驶载体D同时游戏的情况时,为了构建驾驶载体A上用户的虚拟现实驾驶场景,驾驶载体A可以理解为所述第一驾驶载体,驾驶载体B、驾驶载体C和驾驶载体D可以理解为所述第二驾驶载体;同样,为了构建其他驾驶载体上用户的虚拟现实驾驶场景,例如对于驾驶载体B,所述驾驶载体B可以理解为所述第一驾驶载体,驾驶载体A、驾驶载体C和驾驶载体C可以理解为所述第二驾驶载体。而且,在多人互动的情况下,上述每个驾驶载体对应的虚拟现实驾驶场景,例如驾驶载体A上用户的虚拟现实驾驶场景,驾驶载体B上用户的虚拟现实驾驶场景,驾驶载体C上用户的虚拟现实驾驶场景以及驾驶载体D上用户的虚拟现实驾驶场景,均是同时构建以实现多用户的实时交互。
[0118] 为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本发明时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
[0119] 本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
[0120] 需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0121] 以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。