首页> 中国专利> 将多个头戴式显示器同步到统一空间并且使统一空间中的对象移动关联

将多个头戴式显示器同步到统一空间并且使统一空间中的对象移动关联

摘要

一种用于与其他HMD共享内容的方法,其包括在与第一用户相关联的头戴式显示器的显示屏幕上呈现虚拟环境场景的内容。呈现所述虚拟环境场景的所述显示屏幕表示所述第一用户的虚拟现实空间。检测对共享所述第一用户的所述虚拟现实空间的请求。所述请求以第二用户为目标。响应于检测到接受所述共享请求,与所述第二用户共享所述第一用户的所述虚拟现实空间。所述共享允许使所述第一用户和所述第二用户的所述头戴式显示器上呈现的所述虚拟环境场景同步。

著录项

  • 公开/公告号CN106716306A

    专利类型发明专利

  • 公开/公告日2017-05-24

    原文格式PDF

  • 申请/专利权人 索尼互动娱乐股份有限公司;

    申请/专利号CN201580052166.0

  • 发明设计人 B.沃森;X.毛;

    申请日2015-09-28

  • 分类号G06F3/01(20060101);A63F13/26(20140101);A63F13/35(20140101);A63F13/213(20140101);A63F13/42(20140101);A63F13/30(20140101);

  • 代理机构11105 北京市柳沈律师事务所;

  • 代理人张贵东

  • 地址 日本东京都

  • 入库时间 2023-06-19 02:14:58

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2020-06-02

    授权

    授权

  • 2017-06-16

    实质审查的生效 IPC(主分类):G06F3/01 申请日:20150928

    实质审查的生效

  • 2017-05-24

    公开

    公开

说明书

发明领域

本发明涉及用于使多个头戴式显示器同步的方法和系统。

背景技术

视频游戏行业这些年已经发生了许多变化。随着计算能力的扩展,视频游戏的开发者同样已经创建了利用这些提高的计算能力的游戏软件。为此目的,视频游戏开发者一直在编码游戏和开发游戏平台,所述游戏平台并入有复杂操作和数学运算以便产生非常逼真的游戏体验。

示例性游戏平台可以是SonySony Playstation(PS2)以及Sony Playstation(PS3),每一种游戏平台都以游戏控制台的形式出售。众所周知,游戏控制台被设计成连接到监视器(通常是电视机),并且通过手持式控制器实现用户交互。游戏控制台被设计成具有专门处理硬件,所述专门处理硬件包括CPU、用于处理密集图形操作的图形合成器、用于执行几何变换的向量单元以及其他胶连硬件、固件和软件。游戏控制台被进一步设计有用于接纳游戏压缩光盘的光盘托盘,以便通过游戏控制台进行本地游戏。在线游戏也是可能的,其中用户可通过互联网与其他用户交互地比赛或一起玩游戏。随着游戏复杂性不断地激起玩家的兴趣,游戏开发者和硬件制造商不断进行革新来实现额外的交互性。

计算机游戏行业的发展趋势在于开发增加用户与游戏系统之间的交互的游戏。实现更丰富的交互体验的一种方式是使用无线游戏控制器,所述无线游戏控制器的移动由游戏系统跟踪以便跟踪玩家的移动和手势并且使用这些移动和手势作为用于游戏的输入。一般来说,手势输入由诸如计算系统、视频游戏控制台、智能家电等的电子装置使用,其对玩家做出并且被电子装置捕获的某个手势执行游戏应用动作以便影响游戏的结果。

实现更具沉浸式的交互体验的另一种方式是使用头戴式显示器。头戴式显示器由用户佩戴,并且可以被配置来展示各种图形,诸如虚拟空间的视图。在头戴式显示器上展示的图形可覆盖用户视野的很大一部分或甚至全部。因此,头戴式显示器可向用户提供视觉上的沉浸式体验。

所述产业的另一个发展趋势涉及基于云端游戏系统的开发。此类系统可包括执行应用(诸如游戏应用)、并且与本地精简客户端通信的远程处理服务器,所述本地瘦客户端可以被配置来从用户接收输入并在显示器上呈现视频。

在此上下文中,本发明的实施方案应运而生。

概述

本发明的实施方案提供了用于利用多个头戴式显示器(HMD)来在虚拟现实空间中呈现内容的方法和系统。跨多个HMD共享内容并且使内容同步。允许用户使用现实世界对象来与内容交互,并且用户交互用作为HMD提供内容的应用的输入。在一些实施方案中,使现实世界对象与在虚拟现实空间中呈现的虚拟世界同步。在此类实施方案中,将应用的输入转换成虚拟世界中的动作。动作用于影响应用的结果,从而导致改变在HMD处呈现的内容。

应理解的是,本发明可以在计算机可读介质上以多种方式来实现,诸如过程、设备、系统、装置或方法。本发明的若干发明实施方案在下文进行描述。

在一个实施方案中,本发明公开了一种方法。方法包括提供用于在与第一用户相关联的头戴式显示器的显示屏幕上呈现的虚拟环境场景的内容。响应于检测到对第一用户所发起的内容的请求而提供内容。呈现虚拟环境场景的显示屏幕表示第一用户的虚拟现实空间。检测对共享第一用户的虚拟现实空间的请求。请求以第二用户为目标。响应于检测到接受共享请求的信号,与第二用户共享第一用户的虚拟现实空间。共享包括提供用于在与第二用户相关联的头戴式显示器上限定的第二虚拟现实空间中呈现的内容,并且允许与第一用户和第二用户相关联的头戴式显示器的显示屏幕中限定的虚拟现实空间和第二虚拟现实空间中呈现的内容基本上实时地同步。

在一个实施方案中,共享请求由第一用户发起并且扩展到第二用户。

在一个实施方案中,第二用户向第一用户发起共享请求。

在一个实施方案中,从第二用户的社交联系人识别第一用户。

在一个实施方案中,第二用户是第一用户的社交联系人,并且在一些实施方案中,在第一用户的附近。

在一个实施方案中,共享允许第一用户和第二用户访问在第一用户和第二用户的头戴式显示器中呈现的内容。访问允许第一用户和第二用户与提供虚拟环境场景的内容的应用交互。交互用作应用的输入,并且基本上实时地动态调整在第一用户和第二用户的头戴式显示器处展示的虚拟环境场景,以便基于交互反映应用的结果。

在一个实施方案中,共享包括从第一用户和第二用户附近内的现实世界场景识别一个或多个现实世界对象;将现实世界对象的位置协调到虚拟环境场景中的特定对象或位置;以及将与现实世界场景中的现实世界对象相关的所采取的动作转换成虚拟环境场景中的应用所采取的动作。所采取的动作用于动态地调整内容,并且使内容与第一用户和第二用户的头戴式显示器上展示的虚拟环境场景同步。

在一个实施方案中,协调位置包括使用一个或多个相机来跟踪现实世界场景中的现实世界对象的位置,以及使现实世界对象的位置与虚拟环境场景中的特定对象或位置同步。

在一个实施方案中,共享包括在第一用户的虚拟现实空间内展示与第二用户相关联的用户相关信息,以及在第二用户的虚拟现实空间内展示与第一用户相关联的用户相关信息。

在一个实施方案中,展示用户相关信息包括使第一用户和第二用户的用户相关信息在相应的虚拟现实空间内逐渐聚焦。

在一个实施方案中,共享包括生成用于暂停在检测到授予共享请求的信号之前第二用户参与的活动的信号,其中所述活动用于影响在第二用户的头戴式显示器处呈现第二内容,并且展示来自第一用户的虚拟环境场景的内容。第二内容与第一用户的头戴式显示器处呈现的内容不同。

在一个实施方案中,检测对离开第一用户的虚拟现实空间的请求,其中离开请求由第二用户发起。响应于检测到离开请求,停止在第二用户的头戴式显示器上呈现来自第一用户的虚拟现实空间的内容,并且在接受加入请求之前第二用户参与的活动从其被暂停的点恢复。活动的恢复致使在第二用户的头戴式显示器的显示屏幕上呈现第二内容。

在一个实施方案中,离开请求包括从第一用户的虚拟现实空间移除第二用户的用户相关信息。移除是通过使第二用户的用户相关信息从第一用户的虚拟现实空间逐渐淡出。

在一个实施方案中,检测对离开虚拟现实空间的请求。请求由第一用户发起。响应于检测到离开请求,停止在第一用户和第二用户的虚拟现实空间中呈现的内容。

在一个实施方案中,停止包括向第二用户提供应用的部分以便允许第二用户继续与应用的交互。应用的部分提供用于在第二用户的头戴式显示器上呈现的内容,并且是缩略版本、小于整个应用的部分或具有较少特征的应用中的一个。

在一个实施方案中,本发明公开了一种方法。方法包括从第一用户接收对地理位置的虚拟旅游的请求。响应于请求,返回与虚拟旅游相关联的视频内容,以用于在与第一用户相关联的头戴式显示器的显示屏幕上限定的虚拟现实空间中展示。在三维空间中展示视频内容。检测加入地理位置的虚拟旅游的邀请。第一用户将邀请扩展到第二用户。在第二用户接受邀请之后,向第二用户提供来自第一用户的虚拟现实空间的视频内容。接受加入致使在第二用户的头戴式显示器的显示屏幕上呈现与地理位置的虚拟旅游相关联的视频内容。

在一个实施方案中,在虚拟现实空间中展示的视频内容包括在接收请求时采取地理位置的虚拟旅游的其他用户的一个或多个用户相关信息。

在一个实施方案中,通过查询第一用户的一个或多个社交网络来检索第一用户的社交联系人,并在显示屏幕上展示所述社交联系人以供选择。检测从第一用户的社交联系人中选择第二用户,其中第二用户与在虚拟现实空间中呈现其用户相关信息的其他用户不同。通过加入地理位置的虚拟旅游的邀请扩展所选择的第二用户。

在一个实施方案中,在虚拟旅游期间展示的视频内容包括由第一用户或一个其他用户预先记录的并且可用于共享的内容。

在一个实施方案中,共享虚拟现实空间包括:生成用于暂停在接受加入邀请之前第二用户参与的活动的信号,识别用于恢复活动的重启点,停止在第二用户的头戴式显示器处呈现与活动相关联的内容,以及提供在第一用户的虚拟现实空间中展示的视频内容,以用于在与第二用户相关联的头戴式显示器的显示屏幕上呈现;以及将第二用户的用户相关信息插入第一用户所共享的虚拟现实空间中。

在一个实施方案中,检测对离开虚拟旅游的请求,其中离开请求由第二用户发起。响应于检测到离开请求,停止在第二用户的头戴式显示器的显示屏幕上呈现虚拟旅游的视频内容,并且从重启点恢复在加入虚拟旅游之前第二用户参与的活动。从与第一用户共享的虚拟现实空间移除第二用户的用户相关信息。

在一个实施方案中,本发明公开了一种方法。方法包括识别佩戴第一头戴式显示器的第一用户的第一虚拟现实空间。将第一虚拟现实空间限定在用于展示来自第一应用的内容的第一头戴式显示器的显示屏幕上。识别佩戴第二头戴式显示器的第二用户的第二虚拟现实空间。第二虚拟现实空间用于展示来自第二应用的内容,其中在第一虚拟现实空间中展示的内容与在第二虚拟现实空间中展示的内容不同。检测加入第一用户的第一虚拟现实空间的邀请。第一用户将邀请扩展到第二用户。在第二用户接受邀请之后,与第二用户共享来自第一用户的第一虚拟现实空间的内容。共享致使在第一虚拟现实空间和第二虚拟现实空间中呈现的内容同步。

在一个实施方案中,当第一用户或第二用户移动时,动态调整在第一虚拟现实空间和第二虚拟现实空间中展示的内容,以便与第一用户或第二用户的移动相关的新位置或新方向协调。

在另一个实施方案中,本发明公开了一种方法。方法包括提供用于在与第一用户相关联的头戴式显示器的显示屏幕上呈现的虚拟环境场景的内容。应用提供虚拟环境场景的内容。显示屏幕限定第一用户的第一虚拟现实空间。检测来自第二用户的对加入第一用户的第一虚拟现实空间以便观看内容的请求。检测第一用户接受请求。响应于检测到接受,通过提供用于在第二用户的头戴式显示器的显示屏幕上呈现的内容,将第二用户转换到第一用户的第一虚拟现实空间。在与第二用户相关联的头戴式显示器上限定的第二虚拟现实空间中呈现内容,并且使所述内容与第一虚拟现实空间中呈现的内容基本上实时地同步。

结合附图来阅读以下详细描述,本发明的其他方面将变得显而易见,以下详细描述通过举例的方式来说明本发明的原理。

附图简述

通过参考以下结合附图进行的描述可以更好地理解本发明,在附图中:

图1A示出根据本发明的实施方案的用于使用头戴式显示装置来执行交互式应用(诸如视频游戏)的系统配置。

图1B示出根据本发明的实施方案的用于操作头戴式显示装置的配置。

图1C示出根据本发明的替代性实施方案的用于操作头戴式显示装置的配置。

图2A概念性地示出根据本发明的实施方案的与正执行的应用(诸如视频游戏)相结合的HMD的功能。

图2B示出根据本发明的实施方案的用于在虚拟现实空间中与多个HMD共享内容的示例性系统。

图3A示出根据本发明的实施方案的在HMD装置上呈现的虚拟环境的视图,其作为使共同定位的用户的多个HMD同步的一部分。

图3B示出根据本发明的实施方案的在HMD装置上呈现的虚拟环境的视图,其作为使与远程定位的用户相关联的多个HMD同步的一部分。

图4A和图4B概念性地示出根据本发明的实施方案的基于第一用户向第二用户发起的请求而在虚拟现实空间中呈现的内容的共享。

图4C和图4D概念性地示出根据本发明的替代性实施方案的基于第二用户向第一用户发起的请求而在虚拟现实空间中呈现的内容的共享。

图5A-5D概念性地示出根据本发明的实施方案的在虚拟环境中反映的用户交互。

图6A-6C示出根据本发明的不同实施方案的示例性流程图,其各自概念性地示出用于跨多个头戴式显示器使内容同步的过程。

图7示出根据本发明的实施方案的用于执行不同应用的系统,其提供用于在用户的头戴式显示器上呈现的内容。

图8示出根据本发明的实施方案的头戴式显示器的部件。

图9是根据本发明的各种实施方案的游戏系统的框图。

详细描述

以下实施方案描述了方法和设备,其用于跨多个头戴式显示器共享和同步化内容,并且使用户交互与在头戴式显示器中限定的虚拟现实空间中呈现的内容关联。

然而,对于本领域技术人员将显而易见的是,可以在没有这些具体细节的一些或全部的情况下实践本发明。在其他情况下,众所周知的过程操作尚未进行详细描述,以免不必要地混淆本发明。

图1A示出根据本发明的实施方案的用于执行交互式应用(诸如交互式视频游戏)的系统。示出用户100正佩戴头部耦合显示器或头戴式显示器(HMD)102。以类似于眼镜、护目镜或头盔的方式佩戴HMD 102,并且所述HMD 102被配置来向用户100显示视频游戏或其他应用内容(交互式内容和非交互式内容)。HMD 102借助于靠近用户的眼睛提供的显示机构向用户100提供非常隐私和沉浸式的体验。HMD 102在用户的一只或每只眼睛的前面提供显示区,所述显示区覆盖用户视场的大部分或甚至全部。

在一个实施方案中,HMD 102可连接到计算机106。到计算机106的连接可以是有线或无线的。计算机106可以是本领域已知的任何通用或专用计算机,包括但不限于:游戏控制台、个人计算机、膝上型计算机、台式计算机、移动装置、蜂窝电话、平板计算机、瘦客户端、机顶盒、媒体流式传输装置等。在一个实施方案中,计算机106可以被配置来执行视频游戏应用,并且从视频游戏中输出视频和音频内容以便由HMD 102呈现。

用户100可操作控制器104来提供视频游戏的输入。此外,相机108可以被配置来捕获用户100位于其中的交互式环境的图像。可分析这些所捕获的图像来确定用户100、HMD102和控制器104的位置、视向和移动。在一个实施方案中,控制器104包括可以被跟踪来确定其位置和定向的一个或多个灯和/或视觉指示器。类似地,HMD 102可包括可以被跟踪来确定HMD 102的位置和定向的一个或多个等和/或视觉指示器。相机108以及HMD 102可包括用于捕获来自交互式环境的声音的一个或多个麦克风。可处理麦克风阵列所捕获的声音来识别声源的位置。通过选择性地过滤出不是来自所识别位置的其他声音,可选择性地利用或处理来自所识别位置的声音。此外,相机108可以被限定成包括多个图像捕获装置(诸如立体相机对)、IR相机、深度相机及其组合。

在另一个实施方案中,计算机106充当通过网络110与云应用提供商112通信的瘦客户端。云应用提供商112维护和执行用户100与其交互的应用(诸如视频游戏)。计算机106从HMD 102、控制器104和相机108接收输入,并且将所述输入传输到云应用提供商112,所述云应用提供商112处理所述输入以便影响正执行的应用(诸如视频游戏)的状态。来自正执行的视频游戏的输出(包括视频数据、音频数据、文本数据、图形数据、触觉反馈数据等)被传输到计算机106。计算机106在传输之前可进一步处理数据,或可将数据直接传输到相关装置。例如,将视频流、音频流、文本数据和图形数据提供到HMD102,而将振动反馈命令提供到控制器104。

在一个实施方案中,HMD 102、控制器104和相机108本身可以是连接到网络110的联网装置,以便与云应用提供商112通信。例如,计算机106可以是本地网络装置(诸如路由器),其不另外执行应用处理(即,在视频游戏应用的情况下的视频游戏处理),但通过在HMD102、控制器104、相机108和云应用提供商112之间传递数据来促进网络流量。HMD 102、控制器104和相机108到网络的连接可以是有线或无线的。

如前所述,HMD 102可以包括可使用图像捕获装置来跟踪的多个灯或视觉指示器。这些灯中的每一个可以被配置来具有特定的定向、形状,并且可以被配置来具有与其他灯相同或不同的颜色。例如,灯或视觉指示器可以布置在HMD 102的前表面上、HMD 102的侧表面上、以及在HMD 102的拐角处,以便跨越HMD 102的前表面和侧表面。可在用户使用HMD102的交互式环境的所捕获图像中识别灯或视觉指示器。灯或视觉指示器也可以设置在HMD102的背侧上,以便允许进一步跟踪用户所佩戴的HMD 102的定向。基于对设置在HMD 102的表面上的不同灯或视觉指示器的识别和跟踪,可以确定HMD 102在交互式环境中的位置和定向。将进一步了解,灯或视觉指示器中的一些可以是或可以不是随时可见的,这取决于HMD 102相对于图像捕获装置的具体定向。并且,可暴露灯或视觉指示器的不同部分以用于图像捕获,这取决于HMD 102相对于图像捕获装置的定向。

在一个实施方案中,基于被选择用于执行的应用的状态,灯或视觉指示器可以被配置来向附近的其他灯或视觉指示器指示HMD 102的当前状态。例如,灯中的一些或全部可以被配置成具有某种颜色布置、密度布置,可以被配置成以某些方式闪烁、具有某种开/关配置、或在与应用的主动交互期间指示HMD 102的当前状态的其他布置、以及在不活动状态期间的不同颜色和强度布置。灯还可以被配置来指示应用的不同等级(诸如游戏玩法的相对强度等级)。例如,当游戏玩法的强度增加时,灯的强度或闪烁的速率可以增加,以便向其他人提供用户正在参与的游戏和游戏等级的感觉的指示。

HMD 102可另外包括一个或多个麦克风。处理来自麦克风的数据以便确定声源的位置和/或方向。

在一个实施方案中,HMD 102还可以包括一个或多个图像捕获装置(未示出),诸如立体相机、IR相机等。通过利用立体图像捕获装置对,可从HMD 102的视角捕获环境的三维(3D)图像和视频。可将此类视频展示给用户以便在佩戴HMD 102时模仿“视频透视”模式。在此实施方案中,HMD 102的显示屏幕本质上被认为是“不透明的”,并且图像捕获装置所捕获的视频可以提供HMD附近的外部环境的功能等效物(好像通过HMD观看)。所展示的视频可利用虚拟元素来增强,以便提供增强的现实体验,或可与虚拟元素以其他方式组合或共混。应当理解,可以存在任何数量的面向外的相机,其在安装在HMD102上并且以任何方向定向。举例来说,在另一个实施方案中,HMD102的侧面上可安装有相机,以便提供对环境的额外全景图像捕获。

在一个实施方案中,HMD 102还可以包括用于保持诸如移动电话装置的外部计算装置107(未示出)的套筒/口袋。套筒的功能可以类似于“对接站”,因为当外部计算装置107接收到套管/口袋中时,套筒可以向其中接收的外部计算装置107提供电力,并且直接地或通过网络连接到HMD 102、控制器104(其也连接到HMD 102)。在一个实施方案中,外部计算装置107可以提供计算资源以便处理由HMD 102中的各种模块、以及通信地连接到HMD 102和/或外部计算装置107的各种装置捕获的数据,并且将处理的数据传输到计算机106以用于进一步处理。在替代性实施方案中,外部计算装置107可以提供处理资源以便在其上执行应用,并将内容传输到HMD 102以用于在HMD102的显示屏幕上呈现。在一个实施方案中,外部计算装置107的显示屏幕还可以用于呈现来自应用的内容,从而提供用于呈现内容的替代性显示屏幕。在一个实施方案中,在对接到HMD 102的外部计算装置107的显示屏幕上呈现的内容可以与正在HMD 102的显示屏幕上呈现的内容同步,并且这种同步可以甚至在外部计算装置107已经从HMD 102的套筒脱离之后继续。

图1B示出根据本发明的实施方案的用于操作头戴式显示装置102的配置。在所示实施方案中,示出了用户100正佩戴HMD装置102。HMD装置102连接到可穿戴计算装置1106。在一个实施方案中,可穿戴计算装置1106是以背包或其他身体可附接单元的形式,或可以在背包/身体可附接单元中携带。控制器104由用户100操作,并且将输入数据传送到计算装置1106。用户100可以具有与可穿戴计算装置1106通信的外部计算装置,诸如移动装置1108(例如蜂窝电话)。可穿戴计算装置1106可以被配置来执行交互式应用(诸如视频游戏),并且向HMD装置102提供视频数据、音频数据、文本数据和/或图形数据,所述HMD装置102可以用于呈现由视频游戏限定的虚拟环境场景的视图。在替代性实施方案中,移动装置1108的显示屏幕也可以与HMD装置102的显示屏幕同步,以使得在HMD装置102上呈现的内容可以同时在移动装置1108的显示部分上呈现。

图1C示出根据本发明的实施方案的用于操作头戴式显示装置的另一个配置。在图1C的实施方案中,移动装置1108直接与HMD装置102通信。在一些实现方式中,HMD装置102被配置来执行交互式应用(诸如视频游戏)。因此,HMD装置102还可以与控制器装置104通信以便接收输入数据,并且还可以从移动装置1108接收用于在HMD装置102上呈现的文本信息。在又另一个实现方式中,视频游戏可以由移动装置1108执行。在此实施方案中,移动装置1108可以被配置来提供用于向HMD装置1102呈现的视频数据和音频数据。在一个实施方案中,移动装置1108与控制器装置104通信以便接收输入数据。

图2A概念性地示出根据本发明的实施方案的与正执行的交互式应用(诸如视频游戏)相结合的HMD 102中的不同模块的功能。正执行的视频游戏应用由游戏引擎320限定,所述游戏引擎320接收输入以便更新视频游戏的游戏状态。游戏引擎320可以设置在计算机中(由图1A中的参考数字106表示)。计算机可以是以下的一部分:设置在云上并且通过网络访问的云计算服务器、连接到HMD的游戏控制台、或可以通过局域网访问的计算装置等。视频游戏的游戏状态可至少部分地由视频游戏的各种参数值限定,所述视频游戏的各种参数值限定或控制当前游戏玩法的各种方面,诸如对象的存在和位置、虚拟环境的条件、事件的触发、用户档案、游戏点、游戏胜利、观察角度等。

在所示出的实施方案中,例如,游戏引擎接收控制器输入314、音频输入316和运动输入318。可从与HMD 102分开的游戏控制器(例如控制器104)的操作限定控制器输入314。举例来说,控制器输入314可包括方向输入、按钮按压、触发器激活、移动、或由游戏控制器的操作处理的其他类型的输入。音频输入316可由HMD 102的麦克风302,或由包括在图像捕捉装置108中的麦克风处理。举例来说,运动输入318可以由包括HMD 102的手势或移动,可以从包括在HMD102中的运动传感器300获得,或在图像捕获装置108捕获用户或HMD 102的图像时从所述图像捕获装置108获得所述手势或移动。运动传感器可以处理来自设置在HMD102中的惯性传感器(诸如陀螺仪、磁力计、加速度计等)的运动输入。游戏引擎320从运动传感器和/或图像捕获装置108接收输入,根据游戏引擎的配置处理输入,以便更新视频游戏的游戏状态。游戏引擎320将游戏状态数据输出到各个呈现模块,所述呈现模块处理游戏状态数据以便限定向用户展示的内容。

在所示出的实施方案中,视频呈现模块322被限定来传输用于在HMD 102上展示的视频流。视频流可由显示器/投影仪机构310展示,并且由用户的眼睛306通过光学器件308观察。音频呈现模块324被配置来呈现用于由用户收听的音频流。在一个实施方案中,通过与HMD 102相关联的扬声器304输出音频流。应当理解,扬声器304可采用户外扬声器、耳机或者能够展示音频的任何其他类型的扬声器的形式。

在一个实施方案中,面向内的相机312包括在HMD 102中以便允许跟踪用户的注视。相机312捕捉用户眼睛的图像,分析所述图像以确定用户的注视方向。在一个实施方案中,可利用有关用户的注视方向的信息来影响视频呈现。例如,如果用户的眼睛被确定为正看着具体方向,那么可以优先或强调该方向的视频呈现,诸如通过对用户正在看的区提供更详细或更快的更新。应当理解,可以相对于HMD102、相对于用户所处的现实世界环境、和/或相对于正在HMD 102上呈现的虚拟环境来限定用户的注视方向。

此外,触觉反馈模块326被配置来将信号提供到包括在HMD 102或由用户操作的另一个装置(诸如控制器104)中的触觉反馈硬件。触觉反馈可采取各种类型的触感的形式,诸如振动反馈、温度反馈、压力反馈等。

如已经指出的,本文描述的HMD 102能够向用户提供高度沉浸式体验,其包围用户视野的大部分或甚至整体。有时,用户可能期望与其社交网络内的其他用户中的所选用户共享这种沉浸式体验。因此,根据本文描述的本发明的实施方案,本发明提供了方法、设备和系统,其用于跨多个头戴式显示器(HMD)装置上共享交互式应用的内容、以及在HMD装置中限定的统一空间内使内容同步。

图2B概念性地示出根据本发明的实施方案的内容共享应用250的不同模块,其与HMD 102交互并且允许共享交互式应用内容。内容共享应用模块250提供了与其他HMD和计算装置共享在一个HMD 102中限定的虚拟现实空间中呈现的内容的能力。内容共享应用模块250可以是由游戏引擎或应用引擎所限定的交互式应用261的一部分,或可以是单独的独立应用,其被配置来与游戏引擎和/或其他应用引擎所限定的交互式应用261交互以便提供期望内容以用于共享。在一个实施方案中,内容共享应用250在与不同用户的HMD交互的计算装置(例如,服务器计算机)上执行。在替代性实施方案中,内容共享应用250可以是用户的HMD的一部分,并且在被执行时可以被配置来连接并且与其他用户的HMD共享内容。在又另一个实施方案中,内容共享应用250的一部分可以设置在诸如游戏控制台、云服务器、联网应用服务器等的计算装置上,并且第二部分可以设置在HMD 102中。内容共享应用250可以包括多个子模块,其包括内容选择器模块251、虚拟现实(VR)空间内容生成器模块253、请求服务模块255、输入解释器模块257和VR空间内容修改器模块259。应当理解,所列出的子模块是示例性的,并且可以包括更少或附加的子模块以便解释对内容以及对跨多个HMD共享和/或同步化内容的请求。

内容选择器模块251从佩戴HMD 102的用户接收对内容的请求。可以通过在HMD102的显示屏幕上呈现的界面来提供请求,并且可以使用控制器输入来提供请求。所请求的内容可以具有任何类型,包括视频、音频、照片、视频旅游、游戏内容、电子邮件、社交馈送、消息聊天、新闻、互联网内容、促销内容等。内容选择器模块251通过验证请求用户的识别来认证请求,并且通过确定请求用户是否被授权观看请求的内容来认证请求的适当性。对于电子邮件、社交馈送、消息聊天或类似的个人或私人内容,可能尤其如此。在成功验证后,内容选择器模块251从适当源249a-249h检索内容。在一个实施方案中,请求可以通过网络被转发到内容服务器249,并且内容服务器249从内容源249a-249h中的任何一个或多个识别和检索适当的内容。然后,内容服务器249可以向内容选择器模块251提供所检索的内容。在替代性实施方案中,内容服务器249可以是游戏控制台,并且可以识别适当的内容并且将其传输到内容选择器模块251。

由内容服务器249返回的内容被转发到虚拟现实(VR)空间内容生成器模块253,其中内容被格式化以用于在请求用户的HMD 102的显示屏幕中限定的VR空间。格式化内容被转发到HMD 102,用于在HMD 102的显示屏幕中限定的VR空间中呈现。在一些实施方案中,格式化内容可以包括交互式对象、场景(在游戏或视频应用的情况下)等。相对于在HMD 102的VR空间中呈现的对象/场景检测到的用户交互被传输到输入解释器模块257。在一些实施方案中,用户交互可以作为手势提供,或者可能以通过控制器或其他输入装置提供的输入的形式。输入由输入解释器257解释,以便限定VR对象需要采取或朝向VR场景中展示的VR对象的动作、或需要在VR场景内采取的动作。此类动作针对修改提供VR场景的内容的交互式应用261的结果。输入解释器257可以包括对象跟踪器子模块257a,其用于跟踪现实世界对象(诸如控制器、HMD等)、以及用于向交互式应用261提供输入的用户的肢体(诸如手、腿等)的位置、定位,定向。对象跟踪器257a可以从设置在HMD 102中或HMD 102外部的一个或多个相机接收现实世界对象的跟踪信息。输入解释器257可以分析跟踪信息,以便确定由HMD 102、控制器、其他输入装置和/或用户提供的输入的类型,并将此信息传输到VR空间内容修改器模块259。

VR空间内容修改器模块259解释由输入解释器模块257提供的输入信息,将现实世界对象的位置、定位、定向映射到由交互式应用261提供的对应VR对象、场景等的位置、定位、定向。另外,通过手势和输入装置提供的用户输入可以被解释为限定将执行以便影响交互式应用261的结果的动作。在HMD 102的虚拟环境场景中呈现交互式应用261的受影响的结果。

在交互式应用261的执行期间,可以在请求服务模块255处接收对共享内容的请求。在一个实施方案中,请求可以由佩戴HMD 102的用户发起。响应于共享请求,可以从用户的一个或多个社交网络检索用户的一个或多个社交联系人,并且在HMD 102的显示屏幕上提供所述联系人以用于选择。例如,从识别第二用户的HMD 102接收对共享内容的用户选择。在替代性实施方案中,对共享内容的请求可以由佩戴HMD 102的第二用户发起。第二用户可以在第一用户的附近,位于与第一用户相同的地理位置中,和/或可以检测与交互式应用261交互的第一用户,并且请求第一用户共享其VR空间。请求服务模块255可以认证请求,并且在请求者的成功认证之后,接收者和请求可以允许第二用户加入第一用户的VR空间。请求服务模块255可以向VR空间内容生成器模块253发送对以下请求:与在第二用户的HMD102内限定的第二VR空间共享将在第一用户的VR空间中展示的内容。此外,请求服务模块255可以请求VR空间内容修改器模块259使VR空间中展示的内容、第一用户和第二用户的第二VR空间同步,以使得第一用户和第二用户正观看相同的内容。

在一个实施方案中,被识别用于共享的内容可以从第一用户的HMD 102直接传输到第二用户的HMD 102。在此实施方案中,设置在HMD 102内的处理器可以与HMD 102内执行的内容共享应用250的子模块(例如,请求服务模块、内容生成器模块和内容修改器模块)交互,以便通过将在第一用户的VR空间中呈现的内容直接传输到在第二用户的HMD 102中限定的第二VR空间来共享在第一用户的VR空间中展示的内容。在替代性实施方案中,在外部计算装置上执行的内容共享应用250可以接收信号或指令以便与第二用户的HMD共享内容,并且作为响应,将内容传输到第二用户的HMD 102。除了在第二用户的HMD 102上共享内容之外,请求还可以识别与其上需要共享内容的第二用户相关联的电视、第二计算装置或其他显示装置。基于请求中提供的细节,内容共享应用可以与相应的显示装置共享来自第一用户的VR空间的内容。

响应于内容的共享,第二用户可以能够在与第二用户相关联的HMD 102中限定的第二VR空间中查看共享内容。在一个实施方案中,可以不允许第二用户与交互式应用或第二用户的HMD的VR空间中展示的内容交互。相反,仅为观看而提供内容。这可以是以下情况:提供地理位置的虚拟旅游的内容以用于在第二VR空间中共享。在替代性实施方案中,可以允许第二用户与交互式应用261交互。在此实施方案中,输入解释器257通过对象跟踪器模块257a接收来自第二用户的交互,并且输入用于影响交互式应用261的结果。VR空间内容修改器应用259解释第二用户的输入,并且调整交互式应用261的内容,以便反映来自第一用户和第二用户的输入。在第一用户的VR空间和第二用户的第二VR空间处展示的内容被同步,以便允许第一用户和第二用户查看包括来自第一用户和第二用户的输入的共享和同步的内容。

在一个实施方案中,VR空间内容修改器259可以通过允许将用户相关信息(诸如用户的头像、标识符、代表图像等)引入到第一用户和第二用户的HMD 102处展示的VR空间中,允许内容增强。在一个实施方案中,VR空间内容修改器259可以在第二用户的第二VR空间中提供第一用户的信息,并且在第一用户的VR空间中提供第二用户的信息,以便向正在共享和观看内容的用户提供指示。在替代性实施方案中,可以在第一用户共享的VR空间中仅提供第二用户的信息,以便向第一用户提供有关已经被邀请共享内容的第二用户的信息。在替代性实施方案中,可以在第二用户的第二VR空间中仅展示第一用户的信息,以便向请求正被共享的原始内容的第一用户提供信息。

当第一用户或第二用户希望离开共享VR空间时,他们可以通过选择在对应HMD102的VR空间处可用的适当选项来这样做。请求服务模块255接收选项选择并且解释选项选择,以便确定第一用户或第二用户离开VR空间的意图。基于所述解释,请求服务模块255可以向VR空间内容生成器模块253和VR空间内容修改器模块259发送信号,以便停止在适当的VR空间处呈现内容。例如,如果第二用户请求离开VR空间,则第二用户的第二VR空间停止呈现由第一用户共享的内容。附加地,如果在第二用户的第二VR空间中展示第一用户的信息,则阻止呈现这种信息。除了停止呈现内容之外,请求服务模块255可以确定第二用户在接受对查看共享内容的请求之前是否参与活动或正在观看不同的内容。在第二用户参与先前活动或观看不同内容的情况下,那么请求服务模块255将与内容选择器模块251交互以便恢复内容的呈现或恢复先前活动。在一个实施方案中,可以识别从其将呈现内容或必须恢复活动的重启点,并且从重启点开始内容或活动。在一个实施方案中,例如,当第二用户接受由第一用户扩展的内容共享请求时,可以先前已经设置了重启点,并且当将要恢复先前活动时使用所述重启点。

另一方面,如果第一用户请求离开VR空间,则第一用户和第二用户的VR空间停止呈现由第一用户共享的内容。移除对应VR空间中存在的任何用户信息。在一个实施方案中,在停止呈现由第一用户共享的内容时,可以使交互式应用261的一部分可用于第二用户,以便允许第二用户继续与交互式应用261交互。所提供的交互应用261的一部分可以是应用的缩略版本、小于整个应用的一部分或具有较少特征的应用,以便允许第二用户对交互应用261进行采样。例如,这种选项允许第二用户在做出购买应用的决定之前测试交互式应用261。

应当理解,本文所描述的具体实现可以应用于呈现来自任何交互式应用源的任何类型的内容,包括:游戏相关信息,诸如交互式游戏场景、游戏内更新、得分信息、资源级别、能量级别、指令、提示、游戏内消息、游戏胜利、玩家对玩家消息传送/聊天、标题、对话、玩家成就、玩家状态等;游戏和/或非游戏社交网络活动,诸如社交媒体流、帖子、消息、社交图形的添加、最近活动、流行活动、生日提醒、社交网络应用通知等;移动装置相关信息、诸如来电、警报、通知、文本/SMS消息、聊天消息、应用通知等;以及其他类型的信息,诸如日历/日程表提醒、电子邮件消息、电视内容、视频流、互联网内容、任何上述内容的接收、任何前述的组合等。

图3A示出第一用户的HMD 102上的显示屏幕的视图,在一个实施方案中,所述显示屏幕用于呈现来自交互式应用(诸如视频游戏应用)所提供的虚拟环境场景的内容,并且用于与共同定位的其他用户的HMD 102'和其他显示装置111共享内容。如图所示,第一用户U1(100)参与视频游戏应用的游戏玩法。可以在计算机106上执行视频游戏应用,并且可以通过有线或无线通信连接将内容传输到HMD102。作为游戏玩法的一部分,在与第一用户U1(100)相关联的HMD102的显示屏幕上展示来自游戏应用的内容。显示屏幕限定其中呈现来自虚拟环境场景的内容的第一用户的虚拟现实(VR)空间。游戏应用可以包括可由不同用户选择和控制的多个虚拟现实对象。在图3A所示的实施方案中,第一用户U1被示为在进行游戏玩法期间控制虚拟现实对象。

在计算机106上执行的应用检测对共享来自第一用户的VR空间的内容的请求。请求可以由第一用户发起,并且包括与第一用户U1(100)希望与其共享内容的第二用户U2(100')相关的信息。第二用户U2(100')可以是第一用户U1(100)的社交联系人,并且可以选自第一用户的社交网络。在一个实施方案中,基于他/她的在线状态来选择第二用户U2。例如,第二用户U2可以是第一用户U1的活动社交联系人中的一个。在一个实施方案中,活动用户被限定为当前在线并且正在积极地使用应用/与应用交互的用户。在替代性实施方案中,请求可以由第二用户U2(100')发起。在此实施方案中,第二用户U2(100')可以是第一用户U1(100)的社交联系人。可以响应于第二用户U2检测到第一用户U1执行应用而生成请求。在一个实施方案中,第二用户U2可以在物理上紧密接近第一用户U1。在图3A所示的实施方案中,第二用户U2被示出为与第一用户U1共同位于位置1中。

在一个实施方案中,在接收到请求时,应用可以通过验证请求者和接收者的身份来验证请求和请求者的真实性。作为验证的一部分,应用可以确定第一用户和第二用户的地理位置。在一个实施方案中,在成功验证之后,应用可以进行检查以便查看内容是否被配置用于共享。如果内容被配置用于共享,则将内容传输到第二用户U2的HMD102'以用于呈现,如图3A中的气泡1所示。为了促进转移来自应用的内容,第二用户U2的HMD 102'通信地连接到执行应用的计算机106。在应用在云服务器上执行的一个实施方案中,第二用户U2的HMD 102'可以通过网络(诸如因特网)通信地连接到云服务器。在第二用户U2的HMD 102'上展示的内容与在第一用户U1的HMD 102上展示的内容同步。HMD 102和HMD 102'的显示部分分别限定与第一用户和第二用户(U1、U2)相关联的第一虚拟现实空间和第二虚拟现实空间。

在一个实施方案中,除了将内容传输到第二用户U2的HMD 102'之外,在计算机106上执行的应用还可以将在第一用户的HMD 102上展示的内容传输到与第二用户的第二计算装置或电视111相关联的显示屏幕(如图3中的气泡2所示),以用于在显示屏幕上公开地呈现内容,以便允许第三用户查看在HMD 102和102'中展示的内容。在此实施方案中,第二计算装置或电视111可以通过有线或无线通信连接来通信地连接到计算机106。

在替代性实施方案中,通过允许第二用户U2将内容从其HMD102'传输到第二计算装置或电视、或其他用户的另外一个或多个HMD(未示出),向第二用户U2提供与其他用户共享内容的能力。在此实施方案中,第二用户U2的HMD 102'通信地连接到第二计算装置、电视111、或第二用户U2选择与其共享由第一用户U1共享的内容的其他用户的其他HMD 102。HMD102'与第二计算装置/电视/其他HMD之间的通信连接可以通过具有以下通信协议的有线或无线连接,所述通信协议使得能够传输由应用提供并且在第一用户的HMD 102上呈现的虚拟环境场景的内容。

在一个实施方案中,可以允许第一用户U1所共享的内容的用户交互。在此实施方案中,用户交互可以用于基于第一用户U1和第二用户U2所提供的输入来影响交互应用的结果,诸如修改交互式场景内的交互式虚拟对象等。交互允许用户U1、U2中的每一个操纵和控制交互式应用的不同虚拟对象。

图3B示出替代性实施方案,其中也与第二用户的HMD 102'共享来自在第一用户U1的HMD 102上呈现的正在执行的应用的内容。在此实施方案中,第一用户U1和第二用户U2远程定位,其中第一用户U1位于位置1并且第二用户U2位于位置2。在此实施方案中,计算机106可以通过有线或无线通信链路利用因特网通信地连接到第二用户U2(100')的HMD102',以便允许将交互式应用内容传输到HMD 102'以用于呈现。在HMD 102和102'上呈现的内容被动态同步化,以使得用户U1和U2正在观看相同的内容。在一个实施方案中,第一用户U1可以交互地控制交互式应用的虚拟对象,并且第二用户U2是被动观看者,在第一用户U1正在与交互式应用交互时,允许所述被动观看者仅观看他的HMD 102'的显示屏幕上的内容。在另一个实施方案中,用户U1可以交互地控制交互式应用的第一虚拟对象,并且可以允许用户U2交互地控制交互式应用的第二虚拟对象。在一个实施方案中,第一用户或第二用户可以单独地或共同地决定社交地共享正在HMD 102、102'的显示屏幕上呈现的交互式应用的内容。在此实施方案中,可以由第一用户U1和/或第二用户U2生成计算机106上执行的交互式应用解释的信号,所述计算机106然后基于所述解释开始将内容传输到计算装置的电视或显示监视器/显示装置的“社交屏幕”111。如在应用中使用的,社交屏幕111被限定为允许在其上呈现的内容由位于装置附近的一个或多个用户查看的可公开观看的显示屏幕。在图3B所示的实施方案中,在社交屏幕111上呈现的内容正由在位置2的社交屏幕111附近的用户U3观看。在一个实施方案中,应用可以进行验证以便查看在将内容传输到社交屏幕111以用于与其他用户共享之前,识别内容是否用于共享。这种附加验证可以用于确保将被保持私有的内容不被公共共享。

图4A-4D示出接收对在用户的HMD上呈现的共享内容的请求的不同选项。在图4A和图4B所示的实施方案中,第一用户U1正在观看来自诸如游戏应用、视频旅游应用等的交互式应用的内容。在第一用户U1的HMD的显示屏幕上限定的虚拟现实空间(即,VR空间1)中展示内容。在一个实施方案中,第一用户U1可能已经选择与包括从他/她自己的社交网络识别的用户U2和U12的其他用户共享内容。在替代性实施方案中,第一用户可能正在观看其他用户(用户U2和U12)也在访问和观看的内容。在另一个实施方案中,第一用户可以正在观看由用户U2或用户U12或两者共享的内容。在此实施方案中,用户U1可以是用户U2或用户U12或两者的社交联系人。通过包括例如现实世界对象、评论、文本、正在观看相同内容的其他用户的头像、互联网内容、用户生成内容、赞助内容、用户相关信息或其组合,可以增强在第一用户U1的VR空间1中展示的内容。用于增加VR空间1的上述列表是示例性的,并且不应被认为是穷举的。

在一个实施方案中,控制共享在第一用户的HMD 102中限定的VR空间1中展示的内容的第一用户U1是主用户。主用户与其共享内容的用户是次用户。在一个实施方案中,允许次用户观看内容,但可能不允许次用户与其他用户交互或进一步其他用户共享内容。在此实施方案中,据称通过仅允许一个主用户控制内容共享并且多个次用户观看由主用户共享的内容,应用以模式1操作。在替代性实施方案中,可以向第二用户提供与他/她的社交网络内的其他用户交互并且与其他用户共享内容的能力。在此实施方案中,第二用户被指定为主用户,并且被设置有与第一用户相同的用于与其他用户的HMD共享内容的特权。在此实施方案中,应用被认为以模式2操作,在模式2中允许多个主用户控制交互式应用的内容共享,其中每个主用户具有与多个次用户共享内容的能力。在一个实施方案中,可以向每个主用户提供指定附加主用户的能力,从而允许新指定的主用户与其他次用户共享内容。可以从相应的主用户的社交网络挑选被选择用于共享的附加主要和次用户中的每一个。

因此,如图4A所示,第一用户U1可以向第二用户U4发起请求第二用户U4加入VR空间1的共享请求(如气泡‘A’所示)。第二用户U4可以是第一用户U1的社交联系人,并且可以选自第一用户U1的社交网络。在接收到共享请求时,第二用户U4可以沉浸在其自己的VR空间(VR空间2)中呈现的内容中,并且可能存在附加用户U10和U3,其可以是第一用户U1的社交联系人、第二用户U4的社交联系人,或可以是位于第一用户和/或第二用户附近并且沉浸在其自己的VR空间(分别是VR空间3和VR空间4)中的独立用户。在向第二用户U4展示共享请求时,第二用户U4可以选择忽略/拒绝所述请求,或者可以选择加入第一用户U1的VR空间1。如果第二用户选择忽略/拒绝请求,则第二用户U4可以继续沉浸在其VR空间2中呈现的内容中。另一方面,如果第二用户U4选择接受请求并加入VR空间1,则他可以向第一用户U1发送回响应,从而显示他有兴趣加入第一用户U1的VR空间1(如图4B中的气泡‘B’所示)。响应于第二用户U4接受加入邀请,第二用户U4被转换到第一用户U1的VR空间1。这通过交互式应用与第二用户U4共享在第一用户U1的HMD的VR空间1中呈现的内容来完成。通过首先停止在第二用户的HMD中限定的VR空间2中当前正在呈现的内容,并且然后在VR空间2中展示在VR空间1中呈现的内容,在第二用户的HMD上呈现共享内容。在VR空间2中呈现的内容与在VR空间1中的内容同步。

图4C和图4D示出替代性实施方案,其中共享请求源自第二用户U4并且针对在VR空间1中正观看内容的第一用户U1。第二用户U4可以与第一用户U1共同定位(即,在附近),或第二用户可以远程定位但是具有用户U1正在与交互式应用交互的指示。可以通过检查用户U1的在线状态、通过访问社交媒体网站等来确定指示。在图4C所示的实施方案中,第二用户U4发送对加入第一用户U1的VR空间1的请求。交互式应用检测对共享来自第二用户U4的内容的请求,并且执行第二用户U4的必要验证。验证可以是确定第二用户U4是否与第一用户U1社交相关,并且可以通过检查第一用户U1的社交联系人来进行验证。在替代性实施方案中,第一用户U1可能不与第二用户U4社交相关,但可能已经共享共同兴趣。在此实施方案中,验证可以是验证用户的兴趣。在成功验证第一用户和第二用户的社交连接或兴趣连接之后,应用可以确定VR空间1中呈现的内容是否被配置用于共享。如果内容被配置用于共享并且用户U1已经接受对共享内容的请求,则如图4D所示,通过将内容从VR空间1传输到第二用户佩戴的HMD以用于在其上限定的VR空间2中呈现,应用允许U4转换到U1的VR空间1。

图5A-5D示出在一个实施方案中由交互式应用(诸如视频游戏应用)提供的虚拟环境场景的视图,可以在第一用户U1的HMD装置102上呈现并且与第二用户U2共享所述虚拟环境场景。图5A示出在时间t0在不同用户的虚拟现实空间中呈现的内容。例如,可以在为第一用户U1限定的VR空间1中向第一用户U1展示来自第一交互式应用(诸如视频游戏应用1)的内容,并且可以在为第二用户U2限定的VR空间2中向第二用户U2展示来自第二交互式应用(诸如视频游戏应用2)的内容。应当理解,用于在VR空间1和/或VR空间2中呈现的内容可以来自任何应用,并且不一定来自视频游戏应用。此外,交互式应用1和/或交互式应用2可以允许用户与交互式游戏场景交互,并且这种用户交互转换为改变相应交互式应用的结果的用户输入。例如,第一用户U1可以选择第一应用的交互式游戏场景内的VR对象来与其交互,并且可以使用用户U1的输入来操纵所选择的VR对象。类似地,第二用户U2可以与第二应用的交互式游戏场景内的VR对象交互,并且可以使用用户U2的输入来操纵所选择的VR对象。可以通过诸如用户输入装置(即控制器等)的现实世界对象/或通过使用用户身体部分(诸如四肢等)的手势来提供来自用户U1/U2的输入,并且这种用户输入可以与交互式游戏场景中的相应VR对象同步。例如,由用户处理/控制的对象的位置、或用户身体部位的位置可以由一个或多个相机跟踪,并且这些对象的位置可以被协调和同步到交互式游戏场景中的相应VR对象的特定位置或动作。

图5A示出第一用户U1已经选择以便与VR空间1中的VR角色UA1交互、并且第二用户已经选择以便与VR空间2中的第二VR角色UA2交互的VR对象。来自第一用户U1和第二用户U2的用户输入用于改变应用的结果。图5A示出示例性控制器104、104',第一用户U1和第二用户U2使用所述示例性控制器104、104'以便与相应的应用进行交互(诸如与应用所提供的虚拟对象交互)。当然,可以使用其他类型的控制器或输入装置来提供用户输入。

当第一用户U1向第二用户U2发送加入VR空间1的邀请时,如图5B所示,通过在第二用户U2接受邀请时提供对观看VR空间1中展示的内容的访问,允许第二用户U2加入第一用户U1的VR空间1。在一个实施方案中,允许第二用户U2观看,但不被允许第二用户U2与在VR空间1中展示的交互式游戏场景内的任何VR对象交互。在另一个实施方案中,响应于第二用户U2接受加入第一用户U1的VR空间1的邀请,允许第二用户U2与在交互式游戏场景中展示的VR对象交互。在此实施方案中,可以向第二用户U2提供从VR空间1中提供的交互式游戏场景内选择VR对象并且与所选择的VR对象交互的选项。使用来自第一用户U1和第二用户U2的用户输入来影响应用的结果,并且根据应用的结果调整在VR空间1中呈现的交互式游戏场景。

图5B和图5D分别示出在时间t1和t3的此类用户交互的屏幕视图,其中游戏场景内的VR对象1由来自第一用户U1的输入控制,并且图5C示出在时间t2的用户交互的屏幕视图,其中VR对象2由来自第二用户U2的输入控制。

应当理解,第一用户U1可以使用第一类型的控制器或输入装置与第一应用交互,并且第二用户U2可以使用第二类型的控制器、或使用手势或不同于第一类型的控制器的输入装置与第一应用交互。不管用于与应用交互的输入装置或模式,第一用户U1和第二用户U2使用不同的输入装置/手势所提供的输入键/手势被映射到第一应用将采取以影响应用结果的特定动作。

在一个实施方案中,第一用户U1可以访问虚拟旅游应用并且请求地理位置的虚拟旅游。响应于请求,虚拟旅游应用可以返回与虚拟旅游相关联的视频内容。在与第一用户U1相关联的头戴式显示器的显示屏幕上展示返回的视频内容。显示屏幕限定第一用户U1的虚拟现实空间。在一些实施方案中,视频内容被展示为三维呈现以便向第一用户U1提供更逼真的体验。来自虚拟旅游的视频可以被展示为交互式旅行,以便使看起来已经从第一用户的角度捕获所述视频。因此,当第一用户U1到处移动时,在虚拟旅游视频中提供的透视图也改变以便适应第一用户U1的移动。

在一个实施方案中,第一用户U1可以使用虚拟旅游应用来观看虚拟旅游的视频。当第一用户U1正在观看虚拟旅游时,第一用户U1可能期望与其他用户(诸如他的朋友、亲戚、商业熟人、社交联系人等)共享虚拟旅游。因此,第一用户U1向一个或多个其他用户发送邀请,从而请求他们加入第一用户U1当前正参与创建的虚拟旅游。在一个实施方案中,其他用户选自第一用户U1的一个或多个社交网络。其他用户可以正在观看来自另一个应用的内容,或可以使用其相应的HMD来参与活动。当每个其他用户接受加入虚拟旅游的邀请时,暂停呈现来自另一应用或其他用户参与的活动的内容,并且当观看虚拟旅游时,基本上实时地开始在相应用户的HMD装置中展示来自VR空间1中呈现的虚拟旅游的内容。在一个实施方案中,除了呈现内容之外,相应用户的头像或用户代表图像或其他用户相关信息可以包括在虚拟现实空间1中,以便使得看起来其他用户在虚拟旅游期间已经加入第一用户U1。

在替代性实施方案中,向第一用户U1展示并且由第一用户U1共享的视频旅游可以包括与一个或多个其他用户相关的信息,所述一个或多个其他用户还在第一用户U1请求虚拟旅游的同时已经请求针对地理位置的虚拟旅游的视频内容。在此实施方案中,如在先前的实施方案中,与其他用户相关的信息可以包括其头像或用户代表图像以便提供已经加入虚拟旅游的不同用户的透视图。应当理解,头像是可以包括在VR空间1中的一种类型的信息,并且与用户相关的其他信息也可以包括在与其他用户共享的VR空间1中。共享致使在相应用户的HMD装置中呈现来自地理位置的虚拟旅游的内容。在每个用户HMD装置中呈现的内容与在第一用户的HMD装置中呈现的内容同步。

在一个实施方案中,第一用户U1可以邀请第二用户U2加入虚拟旅游。在此实施方案中,当第二用户U2接受邀请时,在第二用户U2的HMD中呈现来自VR空间1的内容。与内容一起,第一用户U1的用户相关信息包括在第二用户U2的HMD中呈现的VR空间1中,并且第二用户U2的用户相关信息包括在第一用户U1的HMD的VR空间1中,从而使得看起来两个用户一起进行虚拟旅游。在一些实施方式中,缓慢地使第一用户U1和第二用户U2的用户相关信息在相应的VR空间处聚焦。在VR空间1中观看虚拟旅游的用户可以能够与内容交互以及彼此交互,并且这种交互可以是以文本、语音、手势、发布等形式,并且这种交互可以调整在相应VR空间处呈现的内容。例如,如果第一用户或第二用户在特定方向上移动,则由应用检测移动,并且可以调整在第一用户HMD或第二用户HMD的VR空间处呈现的内容以便对应于所检测的移动。这些交互向内容的共享增加深度,并且使得协作观看比仅观看内容更加有趣。

在一个实施方案中,虚拟旅游的内容是由第一用户U1或其他用户之一预先记录并且可用于共享的内容。在另一个实施方案中,虚拟旅游的内容是由第一用户U1捕获并且与其他用户基本上实时共享的内容。在一个实施方案中,第二用户U2可以参与观看其他内容,或者可以在第二用户U2接收加入虚拟旅游的邀请时,参与在第二用户U2的HMD处提供内容的活动。在此实施方案中,可以向第二用户U2展示请求作为对应HMD处的用户警报。第二用户U2可以响应于用户警报。因此,停止正在第二用户U2的HMD处展示的内容或暂停活动,并且呈现来自虚拟旅游的视频内容,从而允许第二用户U2在地理位置的虚拟旅游期间跟随第一用户U1。在一个实施方案中,响应于第二用户U2对用户警报的动作,第二用户U2的头像或代表图像或与第二用户U2相关的任何其他信息可以包括在由第一用户U1共享的虚拟空间中。用户相关信息提供正在与第一用户U1观看虚拟旅游的用户的数量的指示。

当第二用户U2选择离开虚拟旅游时,第二用户U2可以生成指示他/她打算离开虚拟旅游的信号或用户警报。响应于信号,应用可以停止在第二用户U2的HMD上呈现来自VR空间1的内容。如果第二用户U2在加入虚拟旅游中的第一用户U1之前与另一个应用交互或参与活动,则来自此应用的内容将开始呈现或活动将从暂停其时建立的重启点恢复。附加地,如果第二用户U2的头像或代表图像或信息包括在VR空间1中,则响应于加入虚拟旅游,从VR空间1移除第二用户U2的头像、代表图像或信息。

应当理解,参考邀请其他用户以及共享来自地理位置的虚拟旅游的内容所描述的各种实施方案可以扩展到:例如,购物(共享评论、提供/接收意见、购买产品/商品)、酒店预订(通过酒店旅游和预订来预览酒店)、实况体育赛事(评论和共享)、针对地点或人物定制的广告/赞助内容、游戏(共享评论、提供意见、邀请用户参与游戏(例如,邀请用户成为赛车中的乘客)和购买)等。

图6A是概念性地示出在一个实施方案中的用于与多个用户在其HMD上共享视频内容、并且使HMD上展示的视频内容同步的过程的流程图。过程开始于操作610,其中在与第一用户相关联的头戴式显示器的显示屏幕上呈现来自虚拟环境场景的内容。内容可以由任何源提供并且包括来自以下的内容:电子邮件、互联网新闻、社交网络馈送、即时消息传送/聊天、日历事件、音频/视频呼叫、文本消息、应用警报/提醒、照片、与事件相关联的视频内容、地理位置、人员等、或其任何组合。应当理解,上述内容列表是示例性的。虚拟环境场景可以由正执行的应用提供,所述应用诸如电子邮件应用、虚拟旅游应用、即时消息传送应用、日历应用、社交实用应用、照片应用等。HMD的显示屏幕限定虚拟现实空间。

在操作620中,检测对共享第一用户的虚拟现实空间的请求。请求可以由第一用户发起并且从第一用户的社交网络识别第二用户。可替代地,请求可以由第二用户发起。当第二用户检测沉浸在来自应用的内容中的第一用户时,可以发起请求。

响应于共享请求,如操作630所示,与第二用户共享第一用户的虚拟现实(VR)空间。在一些实现方式中,在接收共享请求之后,用户可以通过生成授予请求的信号来进行响应。例如,当共享请求源自第一用户时,第二用户可以生成接受加入第一用户的VR空间的请求的信号。在共享请求源自第二用户的实例中,第一用户可以生成接受对以下的请求的信号:共享来自第一用户当前参与观看的VR空间的内容。响应于信号,应用通过将第一用户的VR空间中的内容呈现传输到第二用户的HMD来与第二用户共享VR空间。在第二用户与第一用户共享VR空间期间,应用继续使内容同步。

图6B是概念性地示出在替代性实施方案中的用于与多个用户在其HMD上共享视频内容、并且使HMD上展示的视频内容同步的过程的流程图。过程开始于操作640,其中在与第一用户相关联的头戴式显示器的显示屏幕上呈现来自虚拟环境场景的内容。内容可以由任何内容提供商提供,并且可以包括交互式内容。虚拟环境场景可以由正执行的交互式应用提供。HMD的显示屏幕限定第一虚拟现实空间。

在操作645中,检测源自第一用户的请求第二用户加入第一用户的虚拟现实空间的邀请。在请求中识别的第二用户可以是通过访问第一用户的一个或多个社交网络选择的第一用户的社交联系人。

第二用户可以或可以不接受加入第一用户的第一虚拟现实空间的邀请。在第二用户拒绝邀请的情况下,第二用户继续参与他在接收到来自第一用户的邀请之前参与的活动。在第二用户接受邀请的情况下,应用可以检测接受,并且如操作650所示,通过提供对当前在第一用户的第一虚拟现实空间中呈现的内容的访问,继而将第二用户的HMD显示屏幕转换到第一用户的第一虚拟现实空间。如操作655所示,使在第二用户的HMD中呈现的内容与在第一用户的HMD中呈现的内容同步。

图6C示出了概念性地示出在一个实施方案中的用于与多个用户在其HMD上共享多媒体内容、并且使HMD上展示的视频内容同步的过程的流程图。过程开始于操作660,其中在与第一用户相关联的头戴式显示器的显示屏幕上呈现来自虚拟环境场景的内容。内容可以由任何内容提供商提供,并且可以包括交互式内容。虚拟环境场景可以由正执行的交互式应用提供。HMD的显示屏幕限定第一虚拟现实空间。

在操作665中,检测对加入第一用户的虚拟现实空间的请求,其中所述请求源自第二用户。发起请求的第二用户可以是第一用户的社交联系人。例如,当第二用户检测到第一用户的在线状态并且确定第一用户沉浸在来自应用的内容中时,第二用户可以发起请求。

第一用户可以或可以不接受以下请求:允许第二用户访问正在第一用户的第一虚拟现实空间中呈现的内容。在第一用户拒绝请求的情况下,第二用户继续参与在他发起加入第一用户的第一虚拟现实空间的请求之前参与的活动。在第一用户接受请求的情况下,如操作670所示,应用可以检测接受,并且如操作675所示,通过提供对第一虚拟现实空间中呈现的内容的访问,继而将第二用户的HMD显示屏幕转换到第一用户的第一虚拟现实空间。使在第二用户的HMD中呈现的内容与在第一用户的HMD中呈现的内容同步。

各种实施方案提供了协作多媒体内容共享应用,以便使得用户能够基本上实时地与其他用户共享其内容。用户可以是从一个或多个社交网络识别的社交联系人。应当理解,尽管已经描述了用于共享视频的一些实施方案,但是实施方案可以扩展到共享能够在用户的HMD上或在计算装置上呈现的任何其他多媒体内容。

图7示出根据本发明的实施方案的用于在用户的头戴式显示器上呈现各种类型的内容信息的系统。计算机106被配置来执行视频游戏261。计算机106可以通过网络110与游戏服务器112通信。在一些实施方案中,游戏服务器112被配置来存储与视频游戏261相关的各种类型的信息,诸如玩家进度、成就、资源等。游戏服务器112还可以促进通过网络110的多玩家游戏,并且因此游戏服务器112可以与可执行视频游戏的其他实例的其他计算装置通信。在云游戏实现方式中,游戏服务器112被配置来执行视频游戏261并且向计算机106提供视频和音频数据,其中计算机106被配置来充当用于与在游戏服务器112处执行的视频游戏通信的远程终端或接口。在一些实现方式中,游戏服务器112可以在虚拟机中例示视频游戏,并且与计算机106共享与虚拟机处生成的视频游戏相关的数据。

头戴式显示器102与计算机106通信。头戴式显示器102可以从计算机106接收用于在头戴式显示器102上呈现的视频数据和音频数据。此外,头戴式显示器102可以将输入数据传送到计算机106,所述输入数据诸如惯性传感器数据、图像捕获数据、注视跟踪数据、以及可由头戴式显示器102检测或处理的其他类型的数据。附加地,提供控制器装置104作为用于向视频游戏261提供输入的另一个输入装置。

诸如相机的图像捕获装置108被配置来捕获现实世界交互式环境的图像,其中用户操作头戴式显示器102和控制器104。计算机106可以被配置来处理这些捕获的图像,以便识别在交互式环境中的各种元素的定位/位置/定向,所述各种元素诸如用户或用户的部分、头戴式显示器102、控制器装置104、其他输入装置、或交互式环境中的任何其他元件。附加地,图像捕获装置108可以包括用于捕获来自交互式环境的声音的至少一个麦克风。在一些实施方式中,包括多个麦克风以实现声音定位,即识别从其产生交互式环境中的声音的位置、和/或此类声音的特定源(例如,用户)。

正执行的视频游戏可以限定虚拟环境,并且可以在头戴式显示器102上呈现虚拟环境的视图以供用户观看。

在一些实施方式中,移动装置或其他计算装置107与计算机106通信。计算机106可以被配置来例如从移动装置107接收文本信息以用于向用户显示。响应于接收到文本信息,计算机106可以被配置来确定何时以及如何在头戴式显示装置102上呈现这种文本信息。在各种实现方式中,移动装置107可以被配置来接收各种类型的文本或其他多媒体内容信息,诸如电子邮件、社交网络更新、文本消息、即时消息、聊天消息等。移动装置107因此可以与各种服务器通信以便接收这种文本或其他多媒体内容信息,诸如参考图7示出和描述的各种服务器(例如,游戏服务器112、游戏社交网络服务器249b、电子邮件服务器249f、社交网络服务器249g、新闻服务器249a、消息传送/聊天服务器249e等)。

在附加的实施方式中,移动装置107可以直接与头戴式显示器102通信,以便实现与以上描述的关于向用户通知和/或显示文本信息相似或相同的功能。

游戏社交网络服务器249b提供游戏社交网络,并且还向计算机106提供关于游戏社交网络的更新(例如,帖子、新闻等),以用于在头戴式显示器102上显示。电子邮件服务器249f提供用户的电子邮件账户,可以向头戴式显示器102上的计算机106显示器提供对所述电子邮件账户的更新(例如,新消息等)。社交网络服务器249g提供与上述游戏社交网络服务器249b不同的社交网络。社交网络服务器249g同样可以向计算机106提供关于社交网络上的活动的更新,以用于在HMD装置102上显示。新闻服务器249a可以被配置来向计算机106提供包括标题、文章或其他新闻信息的新闻供应,以用于在HMD装置102上显示。消息传送/聊天服务器249e提供消息传送/聊天服务,诸如文本消息传送、即时消息传送、文本/语音/视频聊天等。消息传送/聊天服务器249e可以被配置来向计算机106传送消息传送/聊天信息(诸如通知和/或消息/聊天内容),以用于向HMD装置102呈现。除了上述提供内容的服务器之外,诸如多媒体内容服务器的附加服务器可以提供可传送到计算机106以用于向HMD装置102呈现的内容。

尽管上述服务器已经被描述为将各种类型的文本或其它内容信息传送到计算机106,但是应当理解,给定服务器可以首先将这种信息传送到游戏服务器112,所述游戏服务器112继而可以将文本信息中继到计算机106以用于进一步处理和传输到HMD 102、控制器104或用于直接传输到HMD 102和/或控制器104。

本文所述的各种实施方案已参考展示在头戴式显示器装置上的视频游戏进行了描述。然而,应当理解,根据其他实施方案,描述的原理和方法因此也可在其他类型交互应用的环境中应用,以及在展示在其他类型的装置上的环境中应用,其包括但不限于可在其上展示交互应用的电视屏幕、其他计算装置的显示装置、以及其他类型的显示器。

参考图8,根据本发明的实施方案展示了示出头戴式显示器102的部件的图。头戴式显示器102包括用于执行程序指令的处理器1300。存储器1302被提供用于存储目的,并且可包括易失性存储器和非易失性存储器。包括显示器1304,所述显示器1304提供用户可观看的视觉界面。电池1306被提供为头戴式显示器102的电源。运动检测模块1308(例如,位置和定向模块/惯性传感器)可包括各种运动敏感硬件中的任一种,诸如磁力仪1310、加速计1312和陀螺仪1314。

加速计是用于测量反作用力所引起的加速度和重力的装置。单轴和多轴模型可用来检测不同方向上的加速度的量级和方向。加速计用于感测倾斜度、振动和冲击。在一个实施方案中,使用三个加速计1312来提供重力方向,所述重力方向为两个角度(世界空间俯仰和世界空间横滚)给出绝对参考。

磁力仪测量头戴式显示器附近的磁场的强度和方向。在一个实施方案中,在头戴式显示器内使用三个磁力仪1310,从而确保世界空间偏航角的绝对参考。在一个实施方案中,磁力仪被设计来跨越地球磁场,所述地球磁场为±80微特斯拉。磁力仪受金属影响,并且提供与实际偏航无变化的偏航测量。磁场可由于环境中的金属而扭曲,这导致偏航测量的偏差。如果必要的话,那么可使用来自其他传感器(如陀螺仪或相机)的信息来校准此偏差。在一个实施方案中,加速计1312与磁力仪1310一起使用,以便获得头戴式显示器102的倾斜度和方位角。

陀螺仪1314是用于基于角动量的原理来测量或维持定向的装置。在一个实施方案中,三个陀螺仪1314基于惯性感测提供关于越过相应轴线(x、y和z)的移动的信息。陀螺仪1314帮助检测快速旋转。然而,陀螺仪1314在不存在绝对参考的情况下可随时间而漂移。这需要定期重新设置陀螺仪1314,所述重新设置可使用其他可利用的信息来完成,所述信息诸如基于对物体、加速计、磁力仪等的视觉追踪的位置/定向确定。

提供相机1316来用于捕获真实环境的图像和图像流。头戴式显示器102可包括一个以上相机,其包括后置相机(当用户正在观看头戴式显示器102的显示时背离用户)和前置相机(当用户正在观看头戴式显示器102的显示时直接朝向用户)。另外,深度相机1318可以被包括在头戴式显示器102内,以用于感测真实环境中的物体的深度信息。

头戴式显示器102包括用于提供音频输出的扬声器1320(图2A的扬声器304)。并且,可包括麦克风1322(图2A的麦克风302),以用于从真实环境捕获音频,所述音频包括来自周围环境的声音、用户的语音等。头戴式显示器102包括用于向用户提供触觉反馈的触觉反馈模块1324。在一个实施方案中,触觉反馈模块1324能够引起头戴式显示器102的移动和/或振动,以便向用户提供触觉反馈。在另一个实施方案中,触觉反馈模块1324能够引起控制器104的移动和/或振动,以便向用户提供触觉反馈。

LED 1326被提供为头戴式显示器102的状态的视觉指示器。举例来说,LED可指示电池电量、通电等。提供读卡器1328来使头戴式显示器102从存储卡读取信息和将信息写入到存储卡。包括USB接口1330作为用于实现外围装置的连接或连到其他装置(诸如其他便携式装置、计算机等)的连接的接口的一个实例。在头戴式显示器102的各个实施方案中,可包括各种接口中的任一种来实现头戴式显示器102的更大的连通性。

包括WiFi模块1332,以用于实现通过无线联网技术来连接到互联网。并且,头戴式显示器102包括用于实现无线连接到其他装置的蓝牙模块1334。还可包括通信链路1336,以用于连接到其他装置。在一个实施方案中,通信链路1336利用红外线传输来进行无线通信。在其他实施方案中,通信链路1336可利用用于与其他装置通信的各种无线或有线传输协议中的任一种。

包括输入按钮/传感器1338来提供用户的输入接口。可包括各种输入接口中的任一种,诸如按钮、触摸板、操纵杆、轨迹球等。超声波通信模块1340可包括在头戴式显示器102中,以用于促进经由超声波技术与其他装置的通信。

包括生物传感器1342来实现来自用户的生理数据的检测。在一个实施方案中,生物传感器1342包括一个或多个干电极,其用于通过用户皮肤来检测用户的生物电信号。

已将头戴式显示器102的前述部件描述为仅是可包括在头戴式显示器102中的示例性部件。在本发明的各个实施方案中,头戴式显示器102可或可不包括前面提及的各种部件中的一些部件。头戴式显示器102的实施方案可另外包括目前未描述、但在本领域已知的其他部件,以用于促进如本文所述的本发明的方面的目的。

本领域技术人员将了解,在本发明的各个实施方案中,可结合显示器上所显示的交互式应用来利用前面提及的手持式装置,以提供各种交互式功能。仅作为实例且不作为限制来提供本文所述的示范性实施方案。

图9是根据本发明的各种实施方案的游戏系统1400的框图。游戏系统1400被配置来通过网络1415将视频流提供到一个或多个客户端1410。游戏系统1400通常包括视频服务器系统1420和任选的游戏服务器1425。视频服务器系统1420被配置来以最低的服务质量向一个或多个客户端1410提供视频流。例如,视频服务器系统1420可接收改变视频游戏的状态或所述视频游戏内的视角的游戏命令,并且以最小的滞后时间给客户端1410提供反映这种状态变化的更新后的视频流。视频服务器系统1420可以被配置来以多种替代视频格式(包括还未限定的格式)提供视频流。此外,视频流可包括配置用于以多种帧速率展示给用户的视频帧。典型的帧速率是每秒30帧、每秒60帧和每秒1420帧。但是本发明的替代实施方案中包括更高或更低的帧速率。

在本文中被单独提及为1410A.、1410B.等的客户端1410可包括头戴式显示器、终端、个人计算机、游戏控制台、平板计算机、电话、机顶盒、一体机、无线装置、数码pad、独立装置、手持式玩游戏装置和/或类似装置。通常,客户端1410被配置来接收经编码的视频流,对视频流进行解码,并且将所得的视频展示给用户,例如游戏玩家。接收经编码的视频流和/或对视频流进行解码的过程通常包括将个别视频帧存储在客户端的接收缓冲器中。可以在与客户端1410成一体的显示器上或在如监视器或电视机等单独装置上将视频流展示给用户。客户端1410任选地被配置来支持一个以上游戏玩家。例如,游戏控制台可以被配置来支持两个、三个、四个或更多个同时玩家。这些玩家中的每一个可接收单独的视频串流,或单个视频串流可包括特别针对每个玩家所产生(例如,基于每个玩家的视角所产生)的帧的多个区。客户端1410任选地在地理上分散。游戏系统1400中所包括的客户端的数目可从一个或两个广泛变化到几千个、几万个或更多个。如本文所使用,术语“游戏玩家”用于指玩游戏的人,并且术语“玩游戏装置”用于指用于玩游戏的装置。在一些实施方案中,玩游戏装置可以指多个计算装置,其进行合作来向用户传达游戏体验。例如,游戏控制台或HMD可与视频服务器系统1420合作来传达通过HMD观察的游戏。在一个实施方案中,游戏控制台从视频服务器系统1420接收视频流,并且游戏控制台将视频流或对视频流的更新转发给HMD以便进行呈现。

客户端1410被配置来通过网络1415接收视频流。网络1415可以是任何类型的通信网络,其包括电话网络、互联网、无线网络、电力线网络、局域网、广域网、私有网络和/或类似网络。在典型的实施方案中,通过如TCP/IP或UDP/IP的标准协议来传达视频流。可替代地,通过专有标准来传达视频流。

客户端1410的典型实例是个人计算机,所述个人计算机包括处理器、非易失性存储器、显示器、解码逻辑、网络通信能力以及输入装置。解码逻辑可包括硬件、固件和/或存储在计算机可读介质上的软件。用于解码(和编码)视频流的系统在本领域中是熟知的,并且根据所使用的具体编码方案而变化。

客户端1410可(但不需要)还包括被配置来用于修改接收到的视频的系统。举例来说,客户端可以被配置来:执行进一步呈现,将一个视频图像叠加在另一个视频图像上,修剪视频图像,和/或类似操作。例如,客户端1410可以被配置来接收各种类型的视频帧,如I帧、P帧和B帧,并且被配置来将这些帧处理成图像以向用户显示。在一些实施方案中,客户端1410的构件被配置来对视频流执行进一步呈现、阴影处理、转换成3-D或类似操作。客户端1410的构件任选地被配置来接收一个以上的音频或视频流。客户端1410的输入装置可包括:例如,单手游戏控制器、双手游戏控制器、手势识别系统、注视识别系统、语音识别系统、键盘、操纵杆、指向装置、力反馈装置、运动和/或位置传感装置、鼠标、触摸屏、神经接口、相机、还未开发出的输入装置,和/或类似装置。

客户端1410所接收的视频流(和任选的音频流)是由视频服务器系统1420产生并提供的。如在本文其他地方进一步描述的,这个视频流包括视频帧(并且音频流包括音频帧)。视频帧(例如,在适当数据结构中它们包括像素信息)被配置来有意义地构成向用户显示的图像。如本文所使用,术语“视频帧”用于指主要包括被配置来构成(例如实现)展示给用户的图像的信息的帧。本文中关于“视频帧”的大部分教义也可以适用于“音频帧”。

客户端1410通常被配置来从用户接收输入。这些输入可包括游戏命令,所述游戏命令被配置来改变视频游戏的状态或以其他方式影响游戏玩法。可以使用输入装置接收游戏命令,且/或可由在客户端1410上执行的计算指令自动产生游戏命令。将接收到的游戏命令通过网络1415从客户端1410传达到视频服务器系统1420和/或游戏服务器1425。例如,在一些实施方案中,将游戏命令通过视频服务器系统1420传达到游戏服务器1425。在一些实施方案中,将游戏命令的单独拷贝从客户端1410传达到游戏服务器1425和视频服务器系统1420。游戏命令的传达任选地取决于命令的身份。通过用来向客户端1410A提供音频或视频流的不同路线或通信信道,从客户端1410A任选地传达游戏命令。

游戏服务器1425任选地由不同于视频服务器系统1420的实体来操作。例如,游戏服务器1425可由多玩家游戏发行商来操作。在此实例中,视频服务器系统1420任选地被游戏服务器1425视为客户端,并且任选地被配置来(从游戏服务器1425的角度看)表现为执行现有技术游戏引擎的现有技术客户端。视频服务器系统1420与游戏服务器1425之间的通信任选地通过网络1415发生。因此,游戏服务器1425可以是向多个客户端发送游戏状态信息的现有技术多玩家游戏服务器,所述客户端中的一个是视频服务器系统1420。视频服务器系统1420可以被配置来同时与游戏服务器1425的多个实例通信。例如,视频服务器系统1420可以被配置来向不同用户提供多个不同视频游戏。这些不同视频游戏中的每一个可由不同游戏服务器1425支持和/或由不同实体发行。在一些实施方案中,视频服务器系统1420的一些地理上分布式实例被配置来向多个不同用户提供游戏视频。视频服务器系统1420的这些实例中的每一个可与游戏服务器1425的相同实例通信。视频服务器系统1420与一个或多个游戏服务器1425之间的通信任选地通过专用通信信道发生。例如,视频服务器系统1420可通过高带宽信道连接到游戏服务器1425,所述高带宽信道专门用于这两个系统之间的通信。

视频服务器系统1420至少包括:视频源1430、I/O装置1445、处理器1450,以及非暂时性存储装置1455。视频服务器系统1420可包括一个计算装置或分布在多个计算装置当中。这些计算装置任选地通过如局域网的通信系统连接。

视频源1430被配置来提供视频流,例如,流式视频或形成运动图片的一系列视频帧。在一些实施方案中,视频源1430包括视频游戏引擎和呈现逻辑。视频游戏引擎被配置来:从玩家接收游戏命令,并且基于接收到的命令维持视频游戏的状态的拷贝。这个游戏状态包括游戏环境中的对象的定位,以及典型地视角。游戏状态还可以包括对象的性质、图像、色彩和/或纹理。通常基于游戏规则以及游戏命令(如,移动、转动、攻击、设置焦点、互动、使用和/或类似命令)来维持游戏状态。游戏引擎的部分任选地安置在游戏服务器1425内。游戏服务器1425可基于使用地理上分散的客户端从多个玩家接收到的游戏命令来维持游戏状态的拷贝。在这些情况下,游戏服务器1425将游戏状态提供给视频源1430,其中存储游戏状态的拷贝并且执行呈现。游戏服务器1425可通过网络1415直接从客户端1410接收游戏命令,和/或可通过视频服务器系统1420接收游戏命令。

视频源1430通常包括呈现逻辑,例如被存储在计算机可读介质如存储装置1455上的硬件、固件和/或软件。这个呈现逻辑被配置来基于游戏状态创建视频流的视频帧。所述呈现逻辑的全部或部分任选地安置在图形处理单元(GPU)内。呈现逻辑通常包括被配置来用于确定对象之间的三维空间关系且/或用于基于游戏状态和视角来应用适当的纹理等的处理级。呈现逻辑产生原始视频,然后常常对原始视频进行编码,然后传达给客户端1410。例如,可根据Adobe标准、.wav、H.264、H.263、On2、VP6、VC-1、WMA、Huffyuv、Lagarith、MPG-x.Xvid.FFmpeg、x264、VP6-8、realvideo、mp3或类似标准对原始视频进行编码。编码过程产生视频流,任选地将所述视频流打包以便传达到远程装置上的解码器。视频流是由帧大小和帧速率来表征。典型的帧大小包括800x 600、1280x 720(例如720p)、1024x768,但是可使用任何其他帧大小。帧速率是每秒的视频帧数。视频流可包括不同类型的视频帧。举例来说,H.264标准包括“P”帧和“I”帧。I帧包括用来刷新显示装置上的全部宏块/像素的信息,而P帧包括用来刷新所述宏块/像素的子集的信息。P帧的数据大小通常小于I帧。如本文中所使用,术语“帧大小”意在指帧内的像素数。术语“帧数据大小”是用来指存储所述帧所需的字节数。

在替代实施方案中,视频源1430包括如相机的视频录制装置。此相机可用来产生可以包括在计算机游戏的视频流中的延迟视频或实况视频。所得的视频流任选地包括所呈现的图像与使用静态相机或视频相机录制的图像。视频源1430还可以包括被配置来存储将要包括在视频流中的先前录制视频的存储装置。视频源1430还可以包括:被配置来检测对象(例如,人)的运动或定位的运动或定位传感装置;以及被配置来基于所检测运动和/或定位来确定游戏状态或产生视频的逻辑。

视频源1430任选地被配置来提供被配置来放在其他视频上的叠加。例如,这些叠加可包括命令界面、登入指令、发给游戏玩家的消息、其他游戏玩家的图像、其他游戏玩家的视频馈送(例如网络相机视频)。在客户端1410A包括触摸屏界面或注视检测界面的实施方案中,所述叠加可包括虚拟的键盘、操纵杆、触摸板和/或类似物。在叠加的一个实例中,将玩家的语音叠加在音频流上。视频源1430任选地还包括一个或多个音频源。

在视频服务器系统1420被配置来基于来自一个以上的玩家的输入来维持游戏状态的实施方案中,每个玩家可以有不同视角,视角包括观察的位置和方向。视频源1430任选地被配置来基于玩家的视角给每个玩家提供单独的视频流。此外,视频源1430可以被配置来向客户端1410中的每一个提供不同的帧大小、帧数据大小和/或编码。视频源1430任选地被配置来提供3-D视频。

I/O装置1445被配置用于视频服务器系统1420,用来发送和/或接收信息,所述信息如:视频、命令、对信息的请求、游戏状态、注视信息、装置运动、装置位置、用户运动、客户端身份、玩家身份、游戏命令、安全信息、音频和/或类似信息。I/O装置1445通常包括如网卡或调制解调器的通信硬件。I/O装置1445被配置来与游戏服务器1425、网络1415和/或客户端1410通信。

处理器1450被配置来执行本文中讨论的视频服务器系统1420的各种部件内所包括的逻辑,例如软件。例如,处理器1450可编程有软件指令,以便执行视频源1430、游戏服务器1425和/或客户端限定器1460的功能。视频服务器系统1420任选地包括处理器1450的一个以上的实例。处理器1450还可以编程有软件指令,以便执行视频服务器系统1420所接收的命令或协调本文中讨论的游戏系统1400的各种元件的操作。处理器1450可包括一个或多个硬件装置。处理器1450是电子处理器。

存储装置1455包括非暂时性模拟和/或数字存储装置。例如,存储装置1455可包括被配置来存储视频帧的模拟存储装置。存储装置1455可包括计算机可读数字存储装置,例如,硬盘驱动器、光盘驱动器或固态存储装置。存储装置1415(例如由适当的数据结构或文件系统)被配置来存储视频帧、人工帧、包括视频帧与人工帧的视频流、音频帧、音频流和/或类似物。存储装置1455任选地分布在多个装置当中。在一些实施方案中,存储装置1455被配置来存储本文中其他地方所讨论的视频源1430的软件部件。这些部件可以按需要时随时可以供应的格式来存储。

视频服务器系统1420任选地还包括客户端限定器1460。客户端限定器1460被配置用于远程确定如客户端1410A或1410B的客户端的能力。这些能力可包括客户端1410A本身的能力与介于客户端1410A与视频服务器系统1420之间的一个或多个通信信道的能力。例如,客户端限定器1460可以被配置来测试通过网络1415的通信信道。

客户端限定器1460可手动或自动地确定(例如,发现)客户端1410A的能力。手动确定包括:与客户端1410A的用户通信,以及要求用户提供能力。例如,在一些实施方案中,客户端限定器1460被配置来在客户端1410A的浏览器上显示图像、文字和/或类似物。在一个实施方案中,客户端1410A是包括浏览器的HMD。在另一实施方案中,客户端1410A是具有浏览器的游戏控制台,所述浏览器可显示在HMD上。所显示的对象请求用户输入客户端1410A的信息,如操作系统、处理器、视频解码器类型、网络连接类型、显示器分辨率等。向客户端限定器1460传达回用户所输入的信息。

自动确定可例如通过在客户端1410A上执行代理程序和/或通过向客户端1410A发送测试视频来进行。代理程序可包括嵌入网页中或安装为加载项的计算指令,如java脚本。代理程序任选地由客户端限定器1460提供。在各种实施方案中,代理程序可发现:客户端1410A的处理能力、客户端1410A的解码和显示能力、客户端1410A与视频服务器系统1420之间的通信信道的滞后时间可靠性和带宽、客户端1410A的显示器类型、客户端1410A上存在的防火墙、客户端1410A的硬件、在客户端1410A上执行的软件、客户端1410A内的注册表项和/或类似物。

客户端限定器1460包括硬件、固件和/或存储在计算机可读介质上的软件。客户端限定器1460任选地放置在与视频服务器系统1420的一个或多个其他元件分开的计算装置上。例如,在一些实施方案中,客户端限定器1460被配置来确定客户端1410与视频服务器系统1420的一个以上的实例之间的通信信道的特性。在这些实施方案中,客户端限定器所发现的信息可以用来确定视频服务器系统1420的哪个实例最适合于向客户端1410中的一个传达流式视频。

本发明的实施方案可以通过各种计算机系统配置来实践,包括手持式装置、微处理器系统、基于微处理器的或可编程的消费型电子产品、小型计算机、大型计算机等。本发明也可以在分布式计算环境下实践,其中由通过基于有线或无线的网络链接的远程处理装置来执行任务。

考虑到以上实施方案,应理解,本发明可以采用涉及存储于计算机系统中的数据的各种计算机实施的操作。这些操作是需要对物理量进行物理操作的操作。本文所述的形成本发明的一部分的任何操作都是有用的机器操作。本发明还涉及用于执行这些操作的装置或设备。所述装置可出于所要求的目的而专门构造而成,或所述装置可为由存储于计算机中的计算机程序选择性地激活或配置的通用计算机。具体来说,各种通用机器可以与根据本文的教示所编写的计算机程序一起使用,或者可以更方便地构造更专门的装置来执行所要求的操作。

本发明也可以体现为计算机可读介质上的计算机可读代码。所述计算机可读介质是可以存储数据的任何数据存储装置,所述数据随后可由计算机系统读取。计算机可读介质的实例包括硬盘驱动器、网络附加存储装置(NAS)、只读存储器、随机存取存储器、CD-ROM、CD-R、CD-RW、磁带以及其他光学和非光学数据存储装置。所述计算机可读介质可以包括分布在网络耦合计算机系统上的计算机可读有形介质,使得计算机可读代码以分布式方式存储和执行。

尽管以特定顺序描述了所述方法操作,但应理解,其他内务处理操作可以在操作之间执行,或者可以调整操作以使得它们在略微不同的时间发生,或者可以分布在系统中,所述系统允许处理操作以与所述处理相关的各种时间间隔发生,只要重叠操作的处理以所需方式执行即可。

尽管为了理解的清楚性目的而略微详细地描述了前述发明,但很显然,可以在所附权利要求的范围内做出某些变化和修改。因此,本发明的实施方案被认为是说明性的而非限制性的,并且本发明不限于本文给出的细节,而可以在所附权利要求的范围和等效范围内进行修改。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号