游戏运行配套应用程序的制作方法

文档序号:17121112发布日期:2019-03-15 23:48阅读:212来源:国知局
游戏运行配套应用程序的制作方法

本公开涉及视频游戏。除了别的之外,本公开描述了用于生成和实现提供与游戏应用程序的游戏运行相关的游戏信息的配套应用程序的方法和系统,其中游戏信息基于用户的社交网络。



背景技术:

使用计算资源(硬件和软件)的基于云的系统通过网络(例如,互联网)提供服务。在游戏的上下文中,所述服务使得能够将内容流式传输到远程客户端,其中大多数处理在服务器上完成,所述服务器可为分布式的。在远程客户端处提供的输入继而将驱动视频游戏的执行,而不需要客户端位置处的专用游戏硬件。因此,基于云的游戏越来越受欢迎,因为用户发现能够在没有复杂硬件限制的情况下更容易访问更多视频游戏名称,并且游戏供应商发现从集中位置更容易管理游戏代码。

当用户进行可呈现给出不同结果的多个选项的视频游戏的游戏运行时,可能难以决定引导游戏运行的方向。例如,尽管用户可能想要避免在游戏运行中不能提供任何明显提升的方向,但在没有通过外部源获得的先验知识的情况下,用户无法避免导致死胡同的特定方向。在一些情况下,在找到给出推进游戏运行的结果的正确方向之前,用户可能会试遍视频游戏可在游戏的特定部分中呈现的所有可能的方向。避免在视频游戏中运行所有可能的方向是所希望的。

在此背景下,出现了本公开的实施方案。



技术实现要素:

本公开的实施方案涉及用于保存视频游戏的多个用户在游戏运行期间在各个点处生成的快照并且生成在视频游戏的游戏运行期间可向用户显示的时间线的系统和方法,并且其中相同或另一个用户利用快照从对应于选定快照的点开始跳转到游戏运行中。本公开的其他实施方案涉及用于使用户经由所存储的游戏运行的视频记录跳转到参与游戏应用程序的玩家所存储的游戏运行中(特别是当在基于云的游戏系统上执行时)的系统和方法。本公开的又其他实施方案涉及用于实现支持用户的游戏运行的配套应用程序的系统和方法,其中配套应用程序提供与用户和其他玩家的游戏运行相关的信息,用户和其他玩家均同时运行同一游戏应用程序。下面描述本公开的若干创造性实施方案。

在一个实施方案中,公开了一种用于在游戏世界中进行导航的方法。该方法包括捕获从与多个用户相关联地执行的视频游戏的多个实例生成的多个快照。该方法还包括显示运行视频游戏的第一用户的第一时间线,其中第一时间线包括处于视频游戏中的至少一个用户的快照图像,所述视频游戏与和第一用户相关联地执行的视频游戏的第一实例的当前渲染图像相关。该方法还包括在多个第一缩略图中显示第一时间线中与第一用户相关联的多个第一快照图像,其中多个第一快照包括至少一个渲染图像,所述渲染图像示出与当前渲染图像相比的第一用户的过去进度。该方法还包括在多个第二缩略图中显示与第二用户相关联的多个第二快照,其中多个第二快照包括至少一个渲染图像,所述渲染图像示出视频游戏中当前渲染图像之后的点处的第二用户的进度。

在另一个实施方案中,公开了一种用于在游戏世界中进行导航的方法。该方法包括在游戏云系统中与运行视频游戏的第一用户相关联地执行视频游戏的第一实例。该方法包括捕获与视频游戏的第一实例的执行相关联地生成的第一多个渲染图像的多个第一快照,其中每个第一快照与视频游戏中的唯一进度点相关联。该方法还包括捕获与视频游戏的第二实例的执行相关联地生成的第二多个渲染图像的多个第二快照,所述视频游戏的第二实例与运行视频游戏的第二用户相关联。该方法还包括显示示出运行视频游戏的第一用户和第二用户的进度的时间线,该时间线与从第一实例的执行生成的当前渲染图像同时显示。

在又一个实施方案中,公开了一种被配置用于在游戏世界中进行导航的游戏云系统。该游戏云系统包括被配置为管理多个虚拟游戏引擎的游戏服务器,所述虚拟游戏引擎被配置为与运行视频游戏的多个用户相关联地执行视频游戏的多个实例,其中虚拟游戏引擎被配置为捕获从执行多个实例生成的渲染图像的多个快照,其中对应快照使得能够从对应快照开始执行视频游戏的实例。游戏云系统包括用于存储多个快照的快照数据存储区。游戏云系统包括被配置为与第一用户相关联地执行视频游戏的第一实例的第一虚拟游戏引擎,其中第一虚拟游戏引擎被配置为生成运行视频游戏的第一用户的第一时间线,其中第一时间线包括多个第一快照图像,所述第一快照图像包括示出与第一实例的当前渲染图像相比的第一用户的过去进度的至少一个渲染图像,以及与第二用户相关联的多个第二快照,其中多个第二快照包括至少一个渲染图像,所述渲染图像示出视频游戏中当前渲染图像之后的点处的第二用户的进度。

在另一个实施方案中,公开了一种用于在游戏世界中进行导航的方法。该方法包括经由流式游戏服务执行视频游戏,该视频游戏在通过网络通信的用户装置的显示器上渲染,该用户装置与第一用户相关联。该方法包括为用户装置的显示器生成视频游戏的多个场景,所述场景通过视频游戏的不同路径进展。该方法包括生成用于与当前渲染的场景一起显示的时间线,其中时间线包括多个第一缩略图,所述第一缩略图示出与第一用户在视频游戏中的进度相关联的快照图像,其中时间线包括多个第二缩略图,所述第二缩略图示出与第二用户在视频游戏中的未来进度相关联的快照图像,其中对多个第二缩略图中的第一缩略图的选择使得能够跳转到为第二用户渲染的视频游戏的未来状态。

在一个实施方案中,公开了一种用于游戏的方法。该方法包括通过网络向与用户相关联的客户端装置传送游戏应用程序的玩家的游戏运行的视频记录,其中视频记录与在玩家的游戏运行中的第一点处捕获的快照相关联。该方法包括从客户端装置接收对游戏运行中的跳转点的选择。该方法包括基于快照发起游戏应用程序的实例,其中该实例对跳转游戏运行进行实例化。该方法包括访问用于引导游戏运行的输入命令序列,其中输入命令序列与快照相关联。该方法包括基于用于在客户端装置处进行渲染的输入命令序列在游戏应用程序的实例处生成多个图像帧。所述多个图像帧回放玩家从第一点到跳转点的游戏运行。该方法包括从跳转点开始处理跳转游戏运行中的游戏应用程序的实例中来自客户端装置的输入命令。

本文还公开了另一种用于游戏的方法。该方法包括基于在玩家的游戏运行中的第一点处捕获的发起快照来发起游戏应用程序的实例。该方法包括访问与快照相关联并用于引导游戏运行的输入命令序列。该方法包括基于用于在用户的客户端装置处进行渲染的输入命令序列在游戏应用程序的实例处生成多个图像帧,其中多个图像帧从游戏运行中的点回放游戏运行。该方法包括从对应于多个图像帧中的第一图像帧的客户端装置接收用于开始跳转游戏的发起请求,其中第一图像帧对应于游戏运行中的跳转点。该方法包括从跳转点开始在执行跳转游戏运行的游戏应用程序的实例处处理来自客户端装置的输入命令。

在另一个实施方案中,公开了一种被配置用于游戏的游戏云系统。该游戏云系统包括被配置为管理多个虚拟游戏引擎的游戏服务器,所述虚拟游戏引擎被配置为与运行游戏应用程序的多个用户相关联地执行游戏应用程序的多个实例,其中虚拟游戏引擎被配置为捕获从执行多个实例生成的渲染图像的多个快照并且捕获与多个快照中的每一个相关的信息,其中与对应快照相关的信息使得能够从对应快照开始执行游戏应用程序的实例。游戏云系统包括用于存储多个快照的快照数据存储区,以及用于存储信息的用户数据存储区。游戏云系统包括虚拟游戏引擎,该虚拟游戏引擎被配置为通过网络向与用户相关联的客户端装置传送游戏应用程序的玩家的游戏运行的视频记录。该视频记录与在玩家的游戏运行中的第一点处捕获的快照相关联。虚拟游戏引擎被配置为从客户端装置接收对游戏运行中的跳转点的选择。虚拟游戏引擎被配置为基于快照发起游戏应用程序的实例,其中该实例对跳转游戏运行进行实例化。虚拟游戏引擎被配置为访问用于引导游戏运行的输入命令序列,其中输入命令与快照相关联。虚拟游戏引擎被配置为基于用于在客户端装置处进行渲染的输入命令序列在游戏应用程序的实例处生成多个图像帧。所述图像帧回放从第一点到跳转点的游戏运行。虚拟游戏引擎被配置为从跳转点开始在执行跳转游戏运行的游戏应用程序的实例处处理来自客户端装置的输入命令。

在又一个实施方案中,公开了一种用于游戏的方法,该方法包括实现支持第一用户的游戏运行的配套应用程序,其中配套应用程序提供与多个用户的游戏运行相关的信息,所有用户同时运行同一游戏应用程序。该方法包括与第一计算装置建立第一通信信道,该第一计算装置与第一用户相关联。第一通信信道被配置用于与第一用户的第一游戏运行相关联地实现游戏应用程序的第一实例。该方法包括与第二计算装置建立第二信道,该第二计算装置与第一用户相关联。第一信道和第二信道被配置在一个或多个通信网络内。该方法包括生成界面,该界面包含与第一用户的第一游戏运行和运行游戏应用程序的第二用户的第二游戏运行相关的信息。该界面实现了配套应用程序。该方法包括将界面和信息通过第二信道传送到第二计算装置,以与第一用户的第一游戏运行同时显示。

在另一个实施方案中,公开了另一种用于游戏的方法,该方法实现了支持第一用户的游戏运行的配套应用程序,其中配套应用程序提供与多个用户的游戏运行相关的信息,所有用户同时运行同一游戏应用程序。该方法包括与第一用户的第一游戏运行相关联地建立游戏应用程序的第一实例,其中第一实例可在基于云的游戏系统内执行。该方法包括与第二用户的第二游戏运行相关联地建立游戏应用程序的第二实例,其中第二实例可在基于云的游戏系统内执行。在第一实例和第二实例内执行的两个游戏运行同时发生。该方法包括确定第一用户和第二用户具有好友关系,并且所述第一用户和所述第二用户两者都基于第一用户和第二用户的用户配置文件运行游戏应用程序。该方法包括与第一计算装置建立第一通信信道,该第一计算装置与第一用户相关联,其中第一通信信道被配置用于实现游戏应用程序的第一实例。该方法包括与第二计算装置建立第二信道,该第二计算装置与第一用户相关联。第一信道和第二信道被配置在一个或多个通信网络内。该方法包括生成界面,该界面包含与第一用户的第一游戏运行和运行游戏应用程序的第二用户的第二游戏运行相关的信息。该界面实现了配套应用程序。该方法包括将界面和信息通过第二信道传送到第二计算装置,以与第一用户的第一游戏运行同时显示。

在另一个实施方案中,公开了一种被配置用于游戏的游戏云系统。该游戏云系统包括被配置为管理多个虚拟游戏引擎的游戏服务器,所述虚拟游戏引擎被配置为与运行游戏应用程序的多个用户相关联地执行游戏应用程序的多个实例,其中虚拟游戏引擎被配置为捕获从执行多个实例生成的渲染图像的多个快照并且捕获与多个快照中的每一个相关的信息,其中与对应快照相关的信息使得能够从对应快照开始执行游戏应用程序的实例。游戏云系统包括用于存储多个快照的快照数据存储区,以及用于存储信息的用户数据存储区。游戏云系统包括第一虚拟游戏引擎,该第一虚拟游戏引擎被配置为与第一用户的第一游戏运行相关联地建立并执行游戏应用程序的第一实例。游戏云系统包括第二虚拟游戏引擎,该第二虚拟游戏引擎被配置用于与第二用户的第二游戏运行相关联地建立并执行游戏应用程序的第二实例。游戏云系统包括配套应用程序生成器,该配套应用程序生成器配置用于确定第一用户和第二用户具有好友关系并且所述第一用户和所述第二用户两者都在运行游戏应用程序,其中该确定基于第一用户和第二用户的用户配置文件。配套应用程序生成器被进一步配置用于与第一计算装置建立第一通信信道,该第一计算装置与第一用户相关联,其中第一通信信道被配置用于实现游戏应用程序的第一实例。配套应用程序生成器被进一步配置用于与第二计算装置建立第二信道,该第二计算装置与第一用户相关联。第一信道和第二信道被配置在一个或多个通信网络内。配套应用程序生成器被进一步配置用于生成界面,该界面包含与第一用户的第一游戏运行和运行游戏应用程序的第二用户的第二游戏运行相关的信息。该界面实现了配套应用程序。配套应用程序生成器被进一步配置用于将界面和所述信息通过第二信道传送到第二计算装置以供显示。

从下面结合附图进行的、通过举例方式说明本公开的原理的详细描述中,本公开的其他方面将变得显而易见。

附图说明

通过参考下面结合附图进行的描述可以充分理解本公开,在附图中:

图1示出根据本公开的一个实施方案的用于保存在多个用户通过云游戏网络执行的视频游戏的游戏运行期间生成的快照的系统。

图2示出根据本公开的实施方案的用于实现存储在游戏云系统(gcs)中的视频游戏的访问和运行、与游戏运行相关联地生成的快照的存储、所存储的游戏运行经由快照的预览、经由快照在视频游戏中的导航以及经由快照向所存储的游戏运行中的跳转的系统图。

图3a是根据本公开的一个实施方案的在用户的视频游戏的游戏运行期间显示的时间线的图示,其中时间线示出用户的游戏运行的快照图像,以及另一用户的游戏运行的快照图像。

图3b是根据本公开的一个实施方案的在用户的视频游戏的游戏运行期间显示的一个或多个时间线的图示,其中时间线示出一个或多个用户的视频游戏的游戏运行的快照图像。

图4a是根据本公开的一个实施方案的示出至少一个用户的视频游戏的游戏运行的快照图像的时间线的图示,其中对快照的选择实现快照图像的放大视图。

图4b是根据本公开的一个实施方案的一个或多个时间线的图示,所述时间线中的每一个示出至少一个用户的视频游戏的游戏运行的快照图像,其中对快照的选择实现快照图像的放大视图。

图5a是根据本公开的一个实施方案的视频游戏的游戏运行的节点图的图示,其中节点图与用户的视频游戏的游戏运行期间的时间线一起显示,其中时间线示出用户的游戏运行的快照图像以及另一用户的游戏运行的快照图像。

图5b是根据本公开的一个实施方案的通用节点图或节点树的图示,其示出视频游戏中可用的所有可能路径。

图5c是根据本公开的一个实施方案的节点图的图示,其示出与在视频游戏的游戏运行期间捕获的快照相关联地生成的节点的分级结构,其中节点图与用户的视频游戏的游戏运行期间的时间线一起显示,其中时间线示出用户的游戏运行的快照图像以及另一用户的游戏运行的快照图像。

图6a是根据本公开的一个实施方案的与选定快照节点紧密且线性地对准的快照节点集群的图示,其中可通过时间线或节点图来选择快照节点。

图6b是根据本公开的一个实施方案的与选定快照节点紧密且非线性地对准的快照节点集群的图示,其中可通过时间线或节点图来选择快照节点。

图6c至图6f是根据本公开的一个实施方案的对应于与选定快照节点紧密对准的快照节点集群的快照图像的图示。

图7是根据本公开的一个实施方案的在视频游戏的游戏运行期间捕获的快照以及将这些快照中的每一个存储在快照数据库的一个或多个主文件中的图示。

图8是根据本公开的一个实施方案的视频游戏的用户的游戏运行的多个片段的图示,包括该用户基于相同或另一用户在视频游戏的另一游戏运行期间捕获的快照向单独跳转游戏运行的中间跳转。

图9是示出根据本公开的一个实施方案的用于在游戏世界中进行导航的方法中的步骤的流程图。

图10示出根据本公开的一个实施方案的用于经由视频记录进行游戏运行访问的系统的部件,所述视频记录允许用户基于系统在玩家的游戏运行期间生成和捕获的快照跳转到参与游戏应用程序的任何玩家所存储的游戏运行中。

图11是示出根据本公开的一个实施方案的用于游戏的方法中的步骤的流程图,并且更具体地讲,允许用户基于在游戏运行期间生成和捕获的快照跳转到参与游戏应用程序的玩家所存储的游戏运行中的方法,其中可通过所存储的游戏运行的视频记录来选择快照。

图12a是根据本公开的一个实施方案的参与游戏应用程序的玩家所存储的游戏运行的视频记录中的多个视频帧的图示,其中一些视频帧与对应的快照相关联,其中对视频帧的选择实例化游戏应用程序的实例以基于在玩家的游戏运行期间捕获的相关联快照执行跳转游戏运行,使得跳转游戏运行可由请求用户运行。

图12b是根据本公开的一个实施方案的在用户的游戏应用程序的游戏运行期间显示的时间线的图示,其中时间线示出玩家的游戏应用程序的游戏运行的快照图像,其中对时间线中快照图像的选择提供大致对应于游戏运行中与快照图像相关联的点的游戏运行视频记录的显示,并且其中对视频记录中的视频帧的选择实例化游戏应用程序的实例以基于在玩家的游戏运行期间捕获的快照执行跳转游戏运行,使得跳转游戏运行可由用户运行。

图13a是根据本公开的一个实施方案的先前用于引导参与游戏应用程序的玩家所存储的游戏运行的多个输入命令的图示,其中输入命令的一部分(例如,序列)用于实现跳转游戏运行的回放部分

图13b是根据本公开的一个实施方案的对应于跳转游戏的跳转点的图像帧的图示,其中跳转游戏运行被自动执行以使用引导游戏运行的所保存的输入命令回放玩家的游戏运行直到跳转点,在该跳转点后通过处理来自请求用户的输入命令,跳转游戏运行变为实况的。

图14是根据本公开的一个实施方案的基于在参与游戏应用程序的玩家的游戏运行期间捕获的快照实例化的跳转游戏运行期间呈现的输入命令序列的图示,其中输入命令序列被自动执行以回放玩家的游戏运行直到跳转点,在该跳转点后通过处理来自请求用户的输入命令,跳转游戏运行变为实况的,并且其中请求用户可以模拟输入命令序列以引导与对应图像帧中的原始对应对象一起呈现的重影对象。

图15a至图15e是根据本公开的一个实施方案的在跳转游戏运行期间,在整个图像帧序列中模拟由所存储游戏运行的所保存输入命令引导的对应对象的移动的重影对象的图示,所述跳转游戏运行是基于在与参与游戏应用程序的玩家相关联的所存储游戏运行期间捕获的快照实例化的,其中所保存的输入命令被自动执行以回放游戏运行直到跳转点,在该跳转点后通过处理来自请求用户的输入命令,跳转游戏运行变为实况的。

图16是根据本公开的一个实施方案的用于将玩家引导到跳转游戏运行中的跳转点的特征的图示,所述跳转游戏运行是基于在与参与游戏应用程序的玩家相关联的所存储游戏运行期间捕获的快照实例化的。

图17是示出根据本公开的一个实施方案的用于游戏的方法中的步骤的流程图,并且更具体地讲,允许用户基于在游戏运行期间生成和捕获的快照跳转到参与游戏应用程序的玩家所存储的游戏运行中的方法。

图18示出根据本公开的一个实施方案的用于实现在游戏云系统(gcs)内执行的多个用户的游戏应用程序的同时游戏运行以及用于实现支持第一用户的游戏运行的配套应用程序的系统图,其中配套应用程序提供与包括第一用户在内的多个用户的游戏运行相关的信息,所有用户同时运行同一游戏应用程序。

图19示出根据本公开的一个实施方案的用于生成和实现支持第一用户的游戏运行的配套应用程序的系统的框图,其中配套应用程序提供与包括第一用户在内的多个用户的游戏运行相关的信息,所有用户同时运行同一游戏应用程序。

图20示出根据本公开的一个实施方案的用于游戏的方法中的步骤的流程图,该方法包括实现支持第一用户的游戏运行的配套应用程序,其中配套应用程序提供与多个用户的游戏运行相关的信息,所有用户同时运行同一游戏应用程序。

图21a至图21c示出根据本公开的一个实施方案的同时运行游戏应用程序的三个用户的游戏运行的当前场景。

图22a示出根据本公开的一个实施方案的支持运行游戏应用程序的第一用户的游戏运行的配套应用程序界面,其中该界面包括雷达测图,该雷达测图示出第一用户相对于游戏应用程序的游戏世界中其他对象的位置的位置,其中在第一用户和第二用户的游戏运行中生成对象。

图22b示出根据本公开的一个实施方案的与游戏应用程序相关联地支持第一用户的游戏运行的配套应用程序界面,其中该界面包括当前正在运行游戏应用程序的好友列表和雷达测图,该雷达测图示出第一用户相对于与好友的相应游戏运行相关联的游戏应用程序的游戏世界中发现的好友的位置的位置。

图22c示出根据本公开的一个实施方案的与游戏应用程序相关联地支持第一用户的游戏运行的配套应用程序界面,其中该界面包括雷达测图,该雷达测图示出第一用户在游戏应用程序的游戏世界中的位置以及指示第二对象在游戏世界中的位置的方向指针。

图22d示出与游戏应用程序的第一实例的执行相关联的第一用户的游戏运行的当前场景,其中当前场景包括在游戏应用程序的游戏世界内为对象提供引导的方向指针,其中方向指针基于同时运行游戏应用程序的第二用户的游戏运行和/或可由同时运行游戏应用程序的第二用户控制的游戏运行,其中方向指针通过配套应用程序界面生成以支持第一用户的游戏运行。

图23示出根据本公开的一个实施方案的显示的分屏,其示出运行游戏应用程序的第一用户的当前游戏运行,以及侧边栏,其包括支持第一用户的游戏运行的配套应用程序界面,其中界面包括雷达测图,该雷达测图示出游戏应用程序的游戏世界中的用户相对于游戏世界中在第一用户和第二用户的游戏应用程序的游戏运行中生成的其他对象的位置的位置。

图24示出根据本公开的一个实施方案的用于游戏的方法中的步骤的流程图,该方法包括实现支持第一用户的游戏运行的配套应用程序,其中配套应用程序提供与多个用户的游戏运行相关的信息,所有用户同时运行由游戏应用程序的多个实例在基于云的游戏系统内执行的同一游戏应用程序。

图25是示出根据本公开的实施方案的头戴式显示器的部件的图示。

图26是根据本公开的各种实施方案的游戏系统的框图。游戏系统被配置为经由网络向一个或多个客户端提供视频流。

具体实施方式

虽然以下详细描述出于说明的目的包含许多具体细节,但是本领域的任何普通技术人员应认识到,以下详细描述的许多变化和改动在本公开的范围内。因此,阐述了下文描述的本公开的各方面,而不失一般性,并且不对本说明书所附的权利要求施加限制。

一般而言,本公开的各种实施方案描述了用于保存在多个用户的视频游戏的游戏运行期间生成的快照、在视频游戏中进行导航、预览视频游戏以及跳转到视频游戏中的选定点以体验另一个用户的游戏运行(特别是当在基于云的游戏系统上执行时)的系统和方法。快照可以显示在运行视频游戏的用户的时间线中。在时间线中的选定快照包含元数据和/或信息,所述元数据和/或信息使得能够在视频游戏中对应于选定快照的跳转点处实例化视频游戏的实例。在跳转点处开始的视频游戏的实例与在先前执行的游戏运行中生成选定快照的原始用户相关联地执行,即使请求用户可能与原始用户不同也是如此。本公开的实施方案提供了加载和执行相同或另一用户的先前不可用的视频游戏的实例的方式。以这种方式,用户能够主动预览其他用户的游戏运行,而不会影响他或她自己的游戏运行。另外,用户能够主动预览他或她自己的先前游戏运行,而不会影响他或她自己的当前游戏运行。在此背景下,出现了本公开的实施方案。

因此,本公开的实施方案提供了游戏应用程序的额外用途。例如,本公开的实施方案使用户基于该游戏应用程序的先前游戏运行跳转到游戏应用程序的任何部分中。例如,在一些实施方案中,通过选择快照图像(例如,屏幕截图),访问对应的快照信息以使得能够跳转到该游戏应用程序中。又其他实施方案使用户基于该游戏应用程序的先前游戏运行的视频记录跳转到游戏应用程序的任何部分中。例如,通过从视频记录中选择视频图像(例如,可对应于快照图像),访问与视频图像(或快照图像)相关联的对应快照信息以使得能够跳转到该游戏应用程序中。以这种方式,用户能够快速运行游戏应用程序的迷你部分以供玩乐,或者发现如何成功地在游戏应用程序的困难部分中进行导航。用户不必使用初始启动序列加载游戏应用程序,即可实现对迷你部分的访问。此外,不受欢迎的旧应用程序将产生新的乐趣,因为用户不需要运行整个游戏来进入有趣的部分(例如,与级别boss或终极boss作战),而是可以直接进入那些有趣的部分立即玩游戏。又其他实施方案提供了上述成果,并提供了额外益处和优点,包括更好地利用游戏服务器,因为不是从头开始执行发起序列(例如,当用户首次从头开始加载游戏应用程序时),游戏服务器只需从中点或跳转点直接开始执行游戏应用程序。这样,通过从选定跳转点直接上载开始游戏所需的代码,游戏服务器跳过发起序列,并且还跳过任何进一步的可执行序列以导航到游戏应用程序中的跳转点。

通过以上对各种实施方案的一般理解,现在将参考各个附图描述实施方案的示例性细节。

在整个说明书中,对“视频游戏”的引用意在表示通过执行输入命令而引导的任何类型的交互式应用程序。仅出于说明的目的,交互式应用程序包括用于游戏、文字处理、视频处理、视频游戏处理等的应用程序。此外,术语视频游戏和游戏应用程序是可互换的。

快照捕获和游戏运行访问

图1示出根据本公开的一个实施方案的用于保存多个用户通过云游戏网络执行的视频游戏的游戏运行期间生成的快照,预览一个或多个用户的视频游戏的游戏运行,在视频游戏中进行导航以及跳转到视频游戏中的选定点以体验相同或另一用户的游戏运行的系统。在一些实施方案中,云游戏网络可包括在主机的管理程序上运行的多个虚拟机(vm),其中一个或多个虚拟机被配置为利用可用于主机的管理程序的硬件资源执行游戏处理器模块。

如图所示,系统10包括执行游戏处理器模块210的游戏服务器205,该游戏处理器模块提供对多个交互式视频游戏的访问。游戏服务器205可以是云中可用的任何类型的服务器计算装置,并且可被配置为在一个或多个主机上执行的一个或多个虚拟机。例如,游戏服务器205可以管理支持游戏处理器210的虚拟机。

客户端装置100被配置用于通过网络150(例如,互联网)请求访问视频游戏,并且用于渲染由游戏服务器205执行并传送到与用户5相关联的显示装置12的视频游戏的实例。例如,用户5可通过客户端装置100与在游戏处理器210上执行的视频游戏的实例进行交互。客户端装置100可以接收来自各种类型的输入装置(诸如游戏控制器6、平板计算机11、键盘)的输入,以及由摄像机、鼠标、触控板等捕获的手势。客户端装置100可以是至少具有存储器和处理器模块的任何类型的计算装置,其能够通过网络150连接到游戏服务器205。客户端装置100的一些示例包括个人计算机(pc)、游戏控制台、家庭影院装置、通用计算机、移动计算装置、平板计算机、电话或者可与游戏服务器205交互以执行视频游戏的实例的任何其他类型的计算装置。

客户端装置100被配置用于接收由游戏服务器205传送的渲染图像,并且用于在显示器12上显示渲染图像。例如,渲染图像可以与在游戏服务器205的游戏执行引擎211上与用户5相关联地执行的视频游戏的实例相关联。具体地讲,客户端装置100被配置为与用户5的游戏运行相关联的视频游戏的实例交互,例如通过用于驱动游戏运行的输入命令来交互。

此外,客户端装置100被配置为与游戏服务器205交互以在运行视频游戏时捕获和存储用户5的游戏运行的快照。另外,客户端装置100被配置为与游戏服务器205交互以显示包括用户5的游戏运行的快照的时间线,以及运行相同视频游戏的其他用户的已保存游戏的快照。在一个实施方案中,每个快照使用户5能够在视频游戏中的对应于选定快照的跳转点处跳转到所保存的游戏运行中,其中所保存的游戏可以与不同于用户5的另一用户相关联。

更具体地讲,游戏服务器205的游戏处理器210被配置为在运行视频游戏时生成用户5的游戏运行的快照。与其他虚拟机相关联的游戏服务器205的其他游戏处理器被配置为执行与其他用户的游戏运行相关联的视频游戏的实例并且在这些游戏运行期间捕获快照。如先前所述,视频游戏的实例在游戏执行引擎211上与用户5的游戏运行相关联地执行。

快照生成器212被配置为捕获从用户5的游戏运行生成的多个快照。每个快照提供的信息使得能够从视频游戏中与对应快照相关联的点开始执行视频游戏的实例。在用户5的视频游戏的游戏运行期间自动生成快照。在实施方案中,每个快照的各部分存储在独立配置或在数据存储区140下配置的相关数据库中。在另一个实施方案中,可通过用户5的指令手动生成快照。以这种方式,选择对应快照的任何用户可以在视频游戏中与对应快照相关联的点处跳转到用户5的游戏运行中。游戏处理器210被配置为访问数据库140中的信息,以便能够基于对应快照跳转到任何用户的已保存的游戏运行中。也就是说,请求用户能够使用生成并保存快照的原始用户的游戏运行的游戏角色在对应于选定快照的跳转点处开始运行视频游戏。

具体地讲,每个快照包含元数据和/或信息,以使得能偶在视频游戏中对应于快照的点处开始执行视频游戏的实例。例如,在用户5的游戏运行中,可以在视频游戏的进度中的特定点(例如,在级别的中间)处生成快照。相关快照信息存储在数据库140的一个或多个数据库中。指针可用于关联对应于特定快照的每个数据库中的信息。以这种方式,希望体验用户5的游戏运行的另一用户可以选择与感兴趣的视频游戏中的点相对应的快照。

快照包括在该点处渲染的场景的快照图像。快照图像存储在快照图像数据库146中。在时间线中以缩略图形式呈现的快照图像提供用户在视频游戏的进度中的对应点处的用户游戏运行的视图。

快照还包括定义该点处的游戏状态的游戏状态数据。例如,游戏状态数据可包括游戏角色、游戏对象、游戏对象属性、游戏属性、游戏对象状态、图形叠加等。以这种方式,游戏状态数据允许生成在视频游戏中的对应点处存在的游戏环境。游戏状态数据还可包括用于渲染游戏运行的每个装置的状态,例如cpu、gpu、存储器的状态、寄存器值、程序计数器值、可编程dma状态、dma的缓冲数据、音频芯片状态、cd-rom状态等。游戏状态数据还可以标识需要加载以从该点执行视频游戏的可执行代码部分。并非所有游戏状态数据都需要被捕获和存储,只有足以使可执行代码在对应于快照的点处开始游戏的数据才需要捕获和存储。游戏状态数据存储在游戏状态数据库145中。

快照还包括用户保存的数据。通常,用户保存的数据包括为对应用户个性化视频游戏的信息。这包括与用户角色相关联的信息,以便用对于该用户可能是唯一的角色(例如,形状、外观、服装、武器等)来渲染视频游戏。以这种方式,用户保存的数据使得能够生成用于对应用户的游戏运行的角色,其中该角色具有与视频游戏中与快照相关联的点相对应的状态。例如,用户保存的数据可包括用户5在运行游戏时选择的游戏难度、游戏级别、角色属性、角色位置、剩余生命数、可用生命总数、盔甲、奖品、时间计数器值等。例如,用户保存的数据还可包括标识用户5的用户配置文件数据。用户保存的数据存储在数据库141中。

另外,快照还包括由人工智能(ai)模块215生成的随机种子数据。随机种子数据可以不是原始游戏代码的一部分,但可以叠加方式添加以使游戏环境看起来更真实并且/或者对用户有吸引力。也就是说,随机种子数据为存在于用户的游戏运行中的对应点处的游戏环境提供附加特征。例如,ai角色可以随机生成并且以叠加方式提供。ai角色不与运行游戏的任何用户相关联,而是被置于游戏环境中以增强用户的体验。例如,这些ai角色可以随机地走在城市场景的街道上。另外,可以生成其他对象并以叠加方式呈现。例如,可以生成背景中的云和飞过空间的鸟并以叠加方式呈现。随机种子数据存储在随机种子数据库143中。

以这种方式,希望体验用户5的游戏运行的另一用户可以选择与感兴趣的视频游戏中的点相对应的快照。例如,用户对在时间线中或节点图的节点中呈现的快照图像的选择使得游戏处理器210的跳转执行引擎216能够访问对应的快照,基于快照实例化视频游戏的另一个实例,并且从视频游戏中对应于快照的点开始执行视频游戏。以这种方式,快照使请求用户能够在对应于快照的点处跳转到用户5的游戏运行中。

游戏处理器210包括时间线生成器213,该时间线生成器显示运行视频游戏的用户5的时间线。时间线包括处于视频游戏中的至少一个用户(例如,用户5和/或其他用户)的快照图像,其中快照图像与视频游戏的与用户5相关联地执行的实例的当前渲染图像结合呈现。每个快照图像对应于由用户5在视频游戏的进度中的特定点处捕获的特定快照。例如,与用户5的游戏运行相关联地生成的快照和快照图像对应于视频游戏中在与用户5的游戏运行相关联地执行的视频游戏实例的当前渲染图像之前发生的点。也就是说,用户5先前通过视频游戏中的这些点运行,并且生成对应于这些点的多个快照和快照图像。

另外,与第二用户的游戏运行相关联地生成的快照及其对应的快照图像可以对应于视频游戏中的在用户5的游戏运行的当前渲染图像之前或之后发生的点。也就是说,第二用户在运行视频游戏时可能比用户5的进度更快。这样,对应于第二用户的游戏运行的快照可以在视频游戏中与用户5的游戏运行相关联的当前渲染图像之前的点处发生,或者可以在当前渲染图像之后的点处发生。时间线可包括与视频游戏中在当前渲染图像之后发生的点相对应的快照图像,并且/或者可包括与视频游戏中在当前渲染图像之前发生的点相对应的快照图像。

在一个实施方案中,用户5可利用在时间线中呈现的快照访问其他用户的游戏运行。也就是说,对时间线中选定快照的选择使用户5能够在对应于快照的点处跳转到另一用户的游戏运行中。例如,跳转游戏执行引擎216从各种数据库(例如,从数据库140)收集快照(例如,元数据和/或信息),以便从对应于选定快照的点开始执行视频游戏。在一个实施方案中,用户5的游戏运行不会因跳转到另一用户的游戏运行而受到影响。

在另一个实施方案中,用户5可使用时间线中呈现的快照访问用户自己的游戏运行中在当前渲染图像之前发生的点。例如,可在用户5的游戏运行中生成快照,并呈现在时间线中。用户5对快照的选择使执行引擎216能够从各种数据库(例如,从数据库140)收集快照(例如,元数据和/或信息),以便从对应于选定快照的先前点开始执行视频游戏。以这种方式,用户5可以返回并回放视频的某些部分(例如,前一级别)。在一个实施方案中,用户5的当前游戏运行不会因跳转到同一用户的先前游戏运行而受到影响。

游戏处理器210还包括节点图生成器214。当用户5处于视频游戏中时,生成通过游戏的路径。另一用户可通过视频游戏生成不同的路径,尤其是在视频游戏很复杂的情况下。该路径可以是由视频游戏建立的通用逻辑路径的一部分,其中通用逻辑路径包括任何用户在运行视频游戏时可采用的所有路径。这样,与用户5的游戏运行相关联的路径可以是通用逻辑路径的子集,并且定义用户5在视频游戏中的进度。可以在通用逻辑路径中的各个点处定义逻辑节点。例如,通过图示的方式,可以在游戏开始、级别开始、游戏结束、级别结束、分叉点处建立节点,以允许用户在两个或更多个可选路径、视频游戏中的关键点等之间进行选择。

另外,节点可以在与用户5的游戏运行相关联的路径中的各个点处定义,或者更一般地在与任何用户的游戏运行相关联的路径中定义。例如,可以与快照相关联地定义节点。这些节点可以周期性间隔(例如,每分钟、5分钟、10分钟等)定义。另外,这些节点可以由用户手动定义。为了进行说明,也可以在游戏开始、级别开始、游戏结束、级别结束、分叉点处建立节点,以允许用户在两个或更多个可选路径、视频游戏中的关键点等之间进行选择。

图2示出了根据本公开的实施方案的用于实现存储在游戏云系统(gcs)201中的视频游戏的访问和运行的系统图200。一般而言,游戏云系统gcs201可以是通过网络220运行以支持多个用户的云计算系统。另外,gcs201被配置为保存在多个用户的视频游戏的游戏运行期间生成的快照,其中快照可用于从视频游戏中对应于快照的点开始为请求用户发起视频游戏的实例。另外,gcs201通过使用快照使用户能够在视频游戏中进行导航,并且预览视频游戏的过去和未来场景。此外,快照使请求用户能够通过对应的快照跳转到视频游戏中的选定点以体验另一用户的游戏运行。具体地讲,系统200包括gcs201、一个或多个社交媒体提供器240和用户装置230,所有这些都经由网络220(例如,互联网)连接。一个或多个用户装置可连接到网络220以访问由gcs201和社交媒体提供器240提供的服务。

在一个实施方案中,游戏云系统201包括游戏服务器205、视频记录器271、标签处理器273和账户管理器274(包括用户配置文件管理器)、游戏选择引擎275、游戏会话管理器285、用户访问逻辑280、网络接口290和社交媒体管理器295。gcs201还可包括通常可存储在数据存储区140中的多个游戏存储系统,诸如游戏状态存储区、随机种子存储区、用户保存数据存储区、快照存储区。其他游戏存储系统可包括游戏代码存储区261、录制游戏存储区262、标签数据存储区263、视频游戏数据存储区264和游戏网络用户存储区265。在一个实施方案中,gcs201是可以提供游戏应用程序、服务、游戏相关数字内容以及在系统、应用程序、用户和社交网络之间的互连性的系统。gcs201可以经由网络接口290通过社交媒体管理器295与用户装置230和社交媒体提供器240通信。社交媒体管理器295可被配置为关联一个或多个好友。在一个实施方案中,每个社交媒体提供器240包括显示用户社交网络连接的至少一个社交图245。

用户u0能够经由游戏会话管理器285访问由gcs201提供的服务,其中用户u0可以代表图1的用户5。例如,账户管理器274实现用户u0对gcs201的认证和访问。账户管理器274存储关于成员用户的信息。例如,每个成员用户的用户配置文件可以由账户管理器274管理。以这种方式,账户管理器274可以使用成员信息用于认证目的。例如,账户管理器2274可用于更新和管理与成员用户相关的用户信息。另外,成员用户拥有的游戏名称可以由账户管理器274管理。以这种方式,存储在数据存储区264中的视频游戏可供拥有这些视频游戏的任何成员用户使用。

在一个实施方案中,用户(例如,用户u0)可经由网络220上的连接通过用户装置230访问由gcs201和社交媒体提供器240提供的服务。用户装置230可包括具有处理器和存储器、有线或无线、便携式或非便携式的任何类型的装置。在一个实施方案中,用户装置230可以是以便携式形状提供触摸屏功能的智能电话、平板计算机或混合物的形式。一个示例性装置可包括便携式电话装置,该便携式电话装置运行操作系统并且具有对可通过网络220获得并在本地便携式装置(例如,智能电话、平板计算机、膝上型计算机、台式计算机等)上执行的各种应用程序(应用)的访问权限。

用户装置230包括显示器232,该显示器充当界面以便用户u0发送输入命令236并显示从gcs201和社交媒体提供器240接收的数据和/或信息235。显示器232可被配置为触摸屏,或者通常由平板显示器、阴极射线管(crt)或能够呈现显示器的其他装置提供的显示器。替代地,用户装置230可具有与装置分开的显示器232,类似于台式计算机或膝上型计算机。

在一个实施方案中,用户装置130被配置为与gcs201通信以使用户u0能够运行视频游戏。例如,用户u0可经由游戏选择引擎275选择(例如,通过游戏名称等)在视频游戏数据存储区264中可用的视频游戏。以这种方式,选定的视频游戏被启用并加载以便由游戏服务器205在gcs201上执行。在一个实施方案中,游戏运行主要在gcs201中执行,使得用户装置230将从gcs201接收游戏视频帧235的流,并且用于驱动游戏运行的用户输入命令236被传输回gcs201。从流式游戏运行接收的视频帧235显示在用户装置230的显示器232中。

在一个实施方案中,在用户u0选择要运行的可用游戏名称之后,用户u0可通过游戏会话管理器285发起选定游戏名称的游戏会话。游戏会话管理器285首先访问数据存储区140中的游戏状态存储区,以检索用户u0(针对选定游戏)所运行的最后一个会话的已保存游戏状态(如果有的话),使得用户u0可以从先前的游戏运行停止点重新开始游戏运行。一旦识别到恢复或起始点,游戏会话管理器285就可以通知游戏处理器210中的游戏执行引擎以从游戏代码存储区261执行选定游戏名称的游戏代码。在发起游戏会话之后,游戏会话管理器285可经由网络接口290将游戏视频帧235(即,流式视频数据)传递到用户装置,例如用户装置230。

在游戏运行期间,游戏会话管理器285可以与游戏处理器210、记录引擎271和标签处理器273通信以生成或保存游戏运行或游戏运行会话的记录(例如,视频)。在一个实施方案中,游戏运行的视频记录可包括在游戏运行期间输入或提供的标签内容,以及其他游戏相关的元数据。标签内容也可经由快照保存。游戏运行的视频记录以及对应于该游戏运行的任何游戏量度可保存在记录的游戏商店262中。任何标签内容可保存在存储的标签数据263中。

在游戏运行期间,游戏会话管理器285可以与游戏处理器204通信以传送并获得用于影响视频游戏的对应游戏运行的结果的用户输入命令236。由用户u0输入的输入命令236可以从用户装置230传输到gcs201的游戏会话管理器285。输入命令236(包括用于驱动游戏运行的输入命令)可包括用户交互输入,例如包括标签内容(例如,文本、图像、视频记录剪辑等)。游戏输入命令以及任何用户游戏量度(用户运行游戏的时长等)可存储在游戏网络用户商店中。与视频游戏的游戏运行相关的选择信息可用于实现用户可用的多个特征。

由于游戏运行是由多个用户在gcs201上执行的,因此从这些游戏运行中生成和存储的信息使得任何请求用户能够体验其他用户的游戏运行,特别是当通过gcs201执行游戏运行时。具体地讲,gcs201被配置为保存由通过gcs201运行视频游戏的用户的游戏运行生成的快照。就用户u0而言,用户装置提供允许用户u0在游戏运行期间与视频游戏接合的界面。生成用户u0的游戏运行快照并将其保存在gcs201中。

此外,用户装置130被配置为提供允许用户u0使用快照预览视频游戏的界面。例如,通过查看游戏运行或一个或多个用户的快照图像,用户u0能够在视频游戏中的任何点处预览视频游戏的一个或多个部分,只要另一用户已通过该点并生成快照即可。此外,如下文将更详细地描述,在时间线中呈现的快照和/或快照图像可以在各个点处为用户提供对视频游戏的预览,而不必在这些点处运行视频游戏。例如,通过查看快照和/或快照图像,时间线可以示出视频游戏将在视频游戏中的一个或多个特定点处遵循的方向。如果该方向导致用户进入死胡同或得到不期望的结果,则用户可以选择避免在视频游戏中采用会导致对应于快照的那些点的路径。另一方面,如果方向导致期望的结果(例如,战利品、有趣的战斗或交互等),则用户可以选择在视频游戏中采用导致对应于快照的那些点的路径。另外,用户装置130被配置为提供允许用户u0在视频游戏中进行导航的界面。例如,如下文将更详细地描述,可使用快照生成节点图,该节点图示出处于视频游戏中的一个或多个用户所采用的路径。用户可以与节点图交互以在节点图中的选定节点处显示快照和/或快照图像,所述节点图为用户提供对视频游戏的各个节点处的视频游戏的预览,而不必在这些点处运行视频游戏。如果节点图中的方向导致用户进入死胡同或得到不期望的结果,则用户可以选择避免在视频游戏中采用会导致对应于节点的那些点的节点路径。另一方面,如果节点图中的方向导致期望的结果,则用户可以选择在视频游戏中采用导致对应于节点的那些点的节点路径。

此外,用户装置130被配置为使用在用户u0或另一用户的游戏运行中生成的快照来提供能够跳转到视频游戏中的选定点的界面。以这种方式,用户u0能够体验任何其他用户的游戏运行,或者返回并回顾和/或回放他或她自己的游戏运行。也就是说,经由对应游戏运行的快照,请求用户使用在该游戏运行中使用的并对应于该游戏运行的角色来运行视频游戏。

图3至图8在运行视频游戏的用户的上下文中进行描述。通常,视频游戏可以是响应用户输入的任何交互式游戏。仅出于说明的目的,结合图3至图8描述的视频游戏可以是冒险游戏,其中角色在行进穿过世界时遇到各种障碍和挑战。角色可以徒步行进,或通过视频游戏中的任何机械化手段行进。另外,角色可能会遇到一个或多个挑战,这些挑战可能会导致从开始到结束运行视频游戏时出现延迟。

在整个说明书中,图3至图8的一个或多个时间线中的时间的使用旨在示出在视频游戏中的进度,并且不一定是对用户运行视频游戏的时长的量度。

图3a是根据本公开的一个实施方案的在用户的视频游戏的游戏运行期间显示的时间线310a的图示,其中时间线示出用户的游戏运行的快照图像,以及另一用户的游戏运行的快照图像。此外,在一个实施方案中,时间线310a由gcs201的游戏服务器205的游戏处理器210的时间线生成器213生成。用户可使用时间线310a快速预览先前的游戏运行,以及一个或多个其他用户的游戏运行。

当游戏处理器210的游戏执行引擎211实例化视频游戏的实例时,显示窗口350a和时间线310a。例如,窗口300示出在特定视频游戏的用户的游戏运行期间的渲染图像305。渲染图像与用户在视频游戏中的进度的当前点相关联。如图所示,在渲染图像305中,表示游戏运行中的用户的角色306位于摩托车上。角色306在通过山区地形的道路上骑行,但遇到了落石307。在用户的游戏运行中,如渲染图像305所示,角色被选择为具有利落短发的男性。此时,用户可能对视频游戏的进度感到沮丧,并且可能想要探索在落石周围进行操纵的途径。例如,用户可能想要预览其他用户的游戏运行以探索允许用户通过落石的解决方法,并且探索视频游戏中在越过用户的当前进度的点处的未来体验,如渲染图像305所呈现。可通过时间线310a实现对这些其他游戏运行的探索,更具体地讲,通过快照图像及其对应的快照来实现,如时间线310a所示。如先前所介绍,快照使得能够从视频游戏中与对应快照相关联的点开始执行对应视频游戏的实例。具体地讲,用户对在时间线中或节点图的节点中呈现的快照图像的进一步选择使得游戏处理器210的跳转执行引擎216能够访问对应的快照,基于快照实例化视频游戏的另一个实例,并且从视频游戏中对应于快照的点开始执行视频游戏。

时间线310a显示在窗口350a中。通常,可在窗口350a中显示包括一个或多个用户的一个或多个游戏运行的快照图像的多个时间线。如图3a所示,窗口350a可以显示单个时间线310a,其中时间线310a包括用户的游戏运行的快照图像,以及另一用户的游戏运行的快照图像。快照图像在缩略图和/或窗口中呈现,并且与用户的游戏运行中的视频游戏的当前渲染图像结合显示。例如,在视频游戏中由当前渲染图像305表示的点之前发生的快照图像可以显示在空白缩略图340c的左侧,并且在该点之后发生的快照图像可以显示在缩略图340c的右侧。窗口350a还可以显示包括一个或多个用户的视频游戏的一个或多个游戏运行的快照图像的附加时间线,如将结合图3b进一步描述。时间线显示视频游戏中的进度,并且不一定是对用户运行视频游戏的时长的量度。

具体地讲,时间线310a包括用户的游戏运行的快照图像。例如,对应于用户在游戏运行期间捕获的快照的多个快照图像(例如,图像340a、340b、...)显示在缩略图和/或窗口中的时间线310a中。一起查看快照图像可以快速了解用户的游戏运行的历史。例如,快照图像340a示出角色306使摩托车从斜坡或悬崖上跳下。在游戏中的该点处,角色306具有2条可能的生命,如快照图像340a的左上角的两个圆圈所示。此后,在用户通过视频游戏的进度中,快照图像340b示出角色306(仍具有两条可能生命)骑着摩托车穿过森林并且正在接近山。窗口300中示出的当前渲染图像305示出角色306已到达山并且已接近落石307。此时,角色306具有两条可能的生命。

由于当前显示的是渲染图像305,并且其表示用户在视频游戏中的进度,因此仅显示表示用户的先前游戏运行的快照图像。这些快照图像通常表示游戏中在由当前显示的渲染图像305表示的点之前发生的点。仅出于说明的目的,角色的可能生命总数给出了对用户在视频游戏中的进度的粗略估计。然而,当用户运行视频游戏时,一些视频游戏可允许用户来回进行。在一个实施方案中,在任何情况下,只能在用户的时间线310a中显示对应于先前渲染图像的快照图像。这些快照图像与由空白缩略图340c表示的时间线310a中的当前渲染图像305结合显示。例如,快照图像可以显示在空白缩略图340c的左侧。通过将在视频游戏中的第一点处捕获的第一快照图像显示在发生在第二点处的第二快照图像的左侧,可实现两个快照图像之间的进一步排序,所述第二点在用户的视频游戏总体进度中的第一点之后发生。在另一个实现方式中,缩略图340c可以用渲染图像305填充以显示用户在时间线310a中的当前进度。

表示视频游戏中在当前渲染图像305之前发生的点的快照图像可以区别于表示视频游戏中在当前渲染图像305之后发生的点(即,未来点)的快照图像的方式显示。在一个实施方案中,快照图像可以变灰。也就是说,与当前渲染图像305之前发生的点相对应的快照图像以比与视频游戏进度中稍后发生的点相对应的快照图像更低的强度和/或分辨率显示。还支持其他实施方案,诸如显示具有交叉影线的快照图像或模糊快照图像等。

此外,时间线310a包括另一用户的游戏运行的快照图像。在一个实施方案中,该其他用户可以是通过社交媒体管理器295发现的好友。快照图像还可以对应于随机用户或高兴趣度用户(例如,视频游戏中具有高分的用户)的游戏运行。仅出于说明的目的,在结合图3至图8提供的示例中,这些其他用户被称为当前用户的好友,诸如第一好友f1、第二好友f2和第三好友f3。第一好友f1扮演被描绘为一个长发女人的角色308。第二好友f2扮演被描绘为具有一头浓密头发的男性的角色309。第三好友f3扮演被描绘为秃头男性的角色303。

具体地讲,时间线310a包括第二用户(例如,扮演女性角色308的好友f1)的游戏运行的快照图像。例如,对应于第二用户在游戏运行期间捕获的快照的多个快照图像(例如,图像360d、360e、360f、…)显示在缩略图和/或窗口中的时间线310a中。这些快照图像与当前渲染图像305结合显示。例如,显示在空白缩略图340c右侧的快照图像360d、360e和360f在视频游戏中当前渲染图像305之后的点处发生。虽然未在时间线310a中示出,但是也可以任选地示出视频游戏中在当前渲染图像周围或之前的点处发生的快照图像(例如,快照图像360a、360b和360c),并且结合图3b的窗口350b中显示的时间线310b进一步描述。

一起查看快照图像可以快速了解第二用户(例如,好友f1)在当前渲染图像305之后发生的未来点处的游戏运行的历史。例如,快照图像360d示出了设想如何穿过河流并且具有三条可能的生命的角色308。随着在视频游戏中进一步进展,现在具有四条可能生命的角色308在快照图像360e中与熊搏斗。随着在视频游戏中甚至进一步进展,现在具有五条可能生命的角色308在快照图像360f中被示出为驾驶汽车穿过沙漠。

在一个实施方案中,可根据用户在视频游戏中的进度和可用的快照图像来修改时间线。例如,(例如,用户或其他用户的)发生在很久以前的快照图像可能不会结合当前渲染图像305显示,并且(例如,另一用户的)发生在很久以后的快照图像也可能不会显示。此外,当更改和/或替换其他用户时,在时间线中更新对应的快照图像。

图3b是根据本公开的一个实施方案的在用户的视频游戏的游戏运行期间显示的多个时间线的图示,其中时间线示出一个或多个用户的视频游戏的游戏运行的快照图像。时间线显示在窗口350b中。在一个实施方案中,窗口350b与用户的游戏运行中的当前渲染图像305一起显示。例如,在一个实施方案中,时间线310b、320和330显示在窗口350b中,并且由gcs201的游戏服务器205的游戏处理器210的时间线生成器213生成。用户可使用时间线快速预览先前的游戏运行,以及一个或多个其他用户(例如,好友、任意用户、感兴趣的用户等)的游戏运行。

如图所示,时间线310b包括用户的游戏运行的快照图像(例如,340a、340b、...),如先前结合图3a所论述。这些快照图像可以如图3b所示以缩略图显示,并且与当前渲染图像305结合布置。例如,这些快照图像显示在当前渲染图像305的左侧,并且通常布置为第一快照图像位于稍后发生的快照图像的左侧,如先前所述。

此外,时间线310b包括与第二用户(例如,扮演女性角色308的第一好友f1)在游戏运行期间捕获的快照相对应的多个快照图像(360a、360b、360c、360d、360e、360f、…)。这些快照图像显示在缩略图的时间线310b中,并且与当前渲染图像305结合布置,如先前所述。更具体地讲,对应于好友f1的在视频游戏中当前渲染图像周围或之前的点处发生的游戏运行的快照图像(例如,快照图像360a,360b和360c)也可以任选地包括在用户的快照图像(例如,340a、340b、…)下方。在视频游戏进度中当前渲染图像之前的点处发生的快照图像(例如,360a、360b、…)可布置在空白缩略图340c的左侧。作为游戏进度的指示,快照图像360a-c示出具有两条可能生命的角色。快照图像360c大致在视频游戏的进度中与当前渲染图像305相同的点处发生,并且大致位于空白缩略图340c下方。例如,快照图像360c和当前渲染图像305两者均显示各自具有两条可能生命的对应角色。此外,时间线310b中的快照图像可被大致布置为使得第一快照图像位于稍后发生的快照图像的左侧,如先前所述。箭头399可以链接与第二用户、好友f1相关联的快照图像。

一起查看快照图像可以快速了解第一好友f1的游戏运行的历史。例如,在快照图像360a中,好友f1的角色308被示出为首先骑着摩托车在市中心的城市街道上行驶。此后,在好友f1通过视频游戏的进度中,快照图像360b示出角色308(具有两条可能生命)骑着摩托车穿过森林并且正在接近山。随着在视频游戏中进一步进展,角色308在快照图像360c中骑着摩托车在山路上行驶。例如,在渲染图像305中,好友f1的角色308可能已围绕用户的角色306当前遇到的落石进行操纵。随后,在渲染图像360d中,角色308(具有三条可能生命)被示出为正在接近河流。随着进一步进展,在快照图像360e中,角色308(具有四条可能生命)与熊搏斗,接着稍后在快照图像360f中,显示角色308(具有五条可能生命)被示出为驾驶汽车穿过沙漠。

窗口350b示出与另一用户(例如,第二好友f2)的游戏运行相关联的另一时间线320。如图所示,时间线320包括好友f2的游戏运行的快照图像(370a、370b、370c、370d、370e、…)。在一个实施方案中,这些快照图像可以缩略图显示,并且与当前渲染图像305结合布置。例如,在视频游戏进度中当前渲染图像之前的点处发生的快照图像(例如,370a、370b、…)大致布置在空白缩略图340c的左侧。可通过使显示的内容变灰来容易地识别这些快照图像,如先前所述。快照图像370c大致在视频游戏的进度中与当前渲染图像305相同的点处发生,并且大致位于空白缩略图340c下方。在视频游戏进度中当前渲染图像之后的点处发生的快照图像(例如,370d、370e、…)大致布置在空白缩略图340c的右侧。此外,时间线320中的快照图像可被大致布置为使得第一快照图像位于稍后发生的快照图像的左侧,如先前所述。

一起查看快照图像可以快速了解第二好友f2的游戏运行的历史。例如,在快照图像370a中,好友f2的角色309(具有两条可能生命)被示出为首先渡过河流。此后,在好友f2通过视频游戏的进度中,快照图像370b示出角色309步行穿过森林,并接近一系列较高的山。随着进一步进展,在快照图像370c中,角色309(具有两条可能生命)被示出为登上假山峰。然后,在快照图像370d中,角色309(具有四条可能生命)被示出为自由攀爬山的一面,接着稍后在快照图像370e中被示出乘船渡过湖泊。

窗口350b示出与另一用户(例如,第三好友f3)的游戏运行相关联的另一时间线330。如图所示,时间线330包括好友f3的游戏运行的快照图像(380a、380b、380c、380d、380e、380f、…)。在一个实施方案中,这些快照图像可以缩略图显示,并且与当前渲染图像305结合布置。例如,在视频游戏进度中当前渲染图像之前的点处发生的快照图像(例如,380a、380b、…)大致布置在空白缩略图340c的左侧。可通过使显示的内容变灰来容易地识别这些快照图像,如先前所述。快照图像380c大致在视频游戏的进度中与当前渲染图像305相同的点处发生,并且大致位于空白缩略图340c下方。在视频游戏进度中当前渲染图像之后的点处发生的快照图像(例如,380d、380e、380f、…)大致布置在空白缩略图340c的右侧。此外,时间线320中的快照图像可被大致布置为使得第一快照图像位于稍后发生的快照图像的左侧,如先前所述。

一起查看快照图像可以快速了解第三好友f3的游戏运行的历史。例如,在快照图像380a中,好友f3的角色303(具有两条可能生命)首先骑着摩托车穿过森林。此后,在好友f3通过视频游戏的进度中,快照图像380b示出角色303(具有两条可能生命)渡过河流。随着进一步进展,在快照图像380c中,角色3039(具有三条可能生命)被示出为划着皮划艇顺着瀑布而下。然后,在快照图像380d中,角色303被示出为乘坐快艇穿过湖泊,然后在快照图像390e中,角色303被示出为快艇靠岸。甚至在随后的进度中,在快照图像380f中,角色303(具有五条可能生命)被示出为乘坐飞机飞向下一个目的地。

虽然被称为不同的时间线,但是窗口中的所有时间线可被称为属于运行视频游戏的用户的一个时间线。另外,在一个实施方案中,与其他用户相关联的时间线(例如,时间线320、330和310的部分)可以替换为新用户的时间线。以这种方式,可以向用户显示旋转用户的快照图像。在另一个实施方案中,可以示出更多时间线,或者为了清楚起见,可以示出更少数量的时间线。

在又一个实施方案中,窗口350a或350b中的时间线可以显示与完全不同的游戏或内容相关联的快照图像。例如,可以示出时间线以便于用户预览并尝试另一视频游戏或查看其他内容。

图4a是根据本公开的一个实施方案的示出至少一个用户的视频游戏的游戏运行的快照图像的呈现在窗口350a中的时间线310a的图示,其中时间线310a在图3a中初次介绍,其中对快照的选择实现快照图像的放大视图。如先前所述,窗口300示出用户的视频游戏的游戏运行的当前渲染图像305。时间线310a包括在视频游戏的进度中当前渲染图像305之前发生的点处的用户(扮演角色306)的游戏运行的快照图像(340a、340b、…)。时间线310还包括在视频游戏的进度中当前渲染图像305之后发生的点处的另一用户(扮演角色308的好友f1)的游戏运行的快照图像(360d、360e、360f、…)。

更具体地讲,快照图像经由缩略图呈现在时间线310a中。因此,根据缩略图的大小,渲染图像可能过小而不能显示很多细节。用户可以选择快照以进行放大。例如,在一个实施方案中,用户可以将光标490a在呈现缩略图的快照图像360e上方滚动。支持使用其他方法来选择快照图像以进行放大,例如触摸触摸屏上显示的快照图像。生成窗口410,并将其显示在选定缩略图的大致相同区域中。窗口410显示渲染的快照图像360e,其中窗口410具有足够的尺寸以使用户能够更好地查看快照图像360e。

出于清楚的目的,在框420中呈现放大的快照图像360e。然而,在一个实施方案中,通过进一步选择窗口410和/或快照图像360e,框420可以显示为窗口,其示出比窗口410中呈现的甚至更大的快照图像360e。如先前所述,快照图像360e与另一用户(例如,扮演女性角色308的好友f1)的游戏运行相关联,并且示出角色308遇到熊。通过滚动通过时间线310a中呈现的快照图像并查看放大的图像,用户可以预览好友f1的游戏运行。以这种方式,用户对在时间线310a中和/或节点图的节点中(如下所述)呈现的选定快照图像的进一步选择使得游戏处理器210的跳转执行引擎216能够访问对应的快照,基于快照实例化视频游戏的另一个实例,并且从视频游戏中对应于快照的点开始执行视频游戏。例如,用户可以体验另一用户(例如,好友f1)的游戏运行,或者返回并重新体验和/或回放他或她自己的游戏运行。

图4b是根据本公开的一个实施方案的呈现在窗口350b中的一个或多个时间线的图示,所述时间线中的每一个示出至少一个用户的视频游戏的游戏运行的快照图像,其中对快照的选择实现快照图像的放大视图。图4b所示的时间线先前结合图3b进行了描述,并且包括时间线310b、320和330。具体地讲,时间线310b包括在视频游戏的进度中当前渲染图像305之前发生的点处的扮演角色306的用户的游戏运行的快照图像。时间线310b还包括快照图像,所述快照图像对应于在游戏运行期间由扮演角色308的好友f1在视频游戏的进度中当前渲染图像305之前、大致同时和之后发生的点处捕获的快照。在一个实施方案中,快照图像以缩略图呈现。时间线320包括快照图像(370a、370b、370c、370d、370e、…),这些快照图像对应于在游戏运行期间由扮演角色309的好友f2在视频游戏的进度中当前渲染图像305之前、大致同时和之后发生的点处捕获的快照。时间线330还包括快照图像,所述快照图像对应于在游戏运行期间由扮演角色303的好友f3在视频游戏的进度中当前渲染图像305之前、大致同时和之后发生的点处捕获的快照。如图4b所示,进一步描述了与时间线320的快照图像的交互,并且因此为了便于理解,未标记时间线310b和330中的快照图像。

更具体地讲,快照图像经由缩略图呈现在时间线310b、320和330中。因此,根据缩略图的大小,渲染图像可能过小而不能显示很多细节。用户可以选择时间线中的任一个中的快照以进行放大。图4a示出在与用户相关联的时间线中选择快照图像。图4b示出在对应于好友的时间线中的一者中选择用于放大的快照图像。例如,在一个实施方案中,用户可以将光标490b在时间线320中的呈现缩略图的快照图像370d上方滚动。支持使用其他方法来选择快照图像以进行放大,例如触摸触摸屏上显示的快照图像。生成放大窗口460,并将其显示在选定缩略图的大致相同区域中。窗口460显示渲染的快照图像370d,其中窗口460具有足够的尺寸(例如,大于对应的缩略图)以使用户能够更好地查看快照图像370d。

出于清楚理解的目的,在框465中呈现放大的快照图像370d。然而,在一个实施方案中,通过进一步选择窗口460和/或快照图像370d,框465可以显示为窗口,其示出比窗口460中呈现的甚至更大的快照图像370d。如先前所述,快照图像370d与好友f2的游戏运行相关联,并且示出角色309自由爬上陡峭的岩壁。通过滚动通过时间线320中呈现的快照图像并查看放大的图像,用户可以预览好友f2的游戏运行。以这种方式,用户对在时间线320中或对应节点图的节点中(如下文进一步详述)呈现的选定快照图像的进一步选择使得游戏处理器210的跳转执行引擎216能够访问对应的快照,基于选定快照实例化视频游戏的另一个实例,并且从视频游戏中对应于选定快照的点开始执行视频游戏。

图5a是视频游戏的游戏运行的节点图530的图示,其中节点图在用户的视频游戏的游戏运行期间与在图3b中初次介绍的窗口350b中的时间线310b、320和330一起显示。具体地讲,时间线310b示出扮演角色306的用户在各点处的游戏运行的快照图像,以及另一用户(例如,扮演角色308的好友f1)的游戏运行的快照图像,时间线320示出扮演角色309的好友f2的游戏运行的快照图像,并且时间线330示出扮演角色303的好友f3的游戏运行的快照图像。每个时间线中的快照图像与当前渲染图像305结合呈现(例如,如空白缩略图340c所呈现),如先前所述。窗口300还显示用户的视频游戏的游戏运行的当前渲染图像305。

如图5a所示,选择快照图像360e(例如,通过对应缩略图的交互)以在时间线310b中放大。快照图像360e与游戏中当前渲染图像305之后(例如,未来)发生的点处的好友f1的游戏运行相关联。具体地讲,在一个实施方案中,用户可以将光标590a在时间线310b中的呈现缩略图的快照图像360e上方滚动。支持使用其他方法来选择快照图像以进行放大,例如触摸触摸屏上显示的快照图像。窗口410示出放大的快照图像360e,如先前所述。

此外,节点图530呈现在窗口510中。在一个实施方案中,节点图530包括多个节点,这些节点对应于在用户处于视频游戏中时角色可以选择的各种路径。在一个实施方案中,节点图530可以在窗口510中呈现为示出视频游戏的所有节点的通用图,如将在图5b中进一步描述。在一个实施方案中,节点图530可被呈现为包括通用图的节点的子集,该子集示出特别感兴趣的节点,如将结合图5c进一步描述。例如,节点子集可以对应于在一个或多个时间线中显示的快照图像。

虽然窗口510显示在右下角,但应理解,窗口510可位于窗口300中的任何位置。此外,窗口510可具有足够的尺寸以提供适于查看的信息。进一步选择可以将窗口510显示为窗口300内的放大窗口或全屏显示。

如图所示,响应于用户在时间线310a中选择快照图像360e以进行放大,节点图530中的节点572可自动突出显示(例如,加粗、放大、着色等)。节点572大致对应于快照图像360e的位置,并且在视频游戏的范围内为快照图像360e提供上下文。也就是说,由于用户对快照图像360e感兴趣,因此通过在时间线310b中选择快照图像360e,呈现示出快照图像360e的较大视图的窗口410,并且节点572在节点图530中突出显示。还可通过用户在节点图530中手动选择节点来突出显示节点572。

概括地说,节点图530可以自动地或响应于用户请求而呈现在窗口510中,其中节点图530包括与时间线310a中呈现的快照图像相对应的节点子集。此外,可呈现并突出显示节点572,其中节点572示出视频游戏的游戏运行中对应于快照图像360e的点的大致位置。另外,对应于节点372的快照图像360e可以呈现在窗口520中,其中窗口520大于窗口410,并且可示出快照图像360e的甚至更大的视图。

以这种方式,向用户呈现视频游戏的多维视图。例如,经由渲染图像305向用户呈现他或她自己的游戏运行的当前视图。用户的游戏运行(例如,通过渲染图像305和用户时间线中的快照图像)还与一个或多个用户的一个或多个时间线一起呈现,所述时间线示出视频游戏中各个进度点的其他用户的游戏运行的快速预览。快照图像可以呈现有节点图,该节点图示出视频游戏中与时间线中的快照图像相关联的路径或者视频游戏中的所有可能路径。

图5b是根据本公开的一个实施方案的通用节点图550或节点树的图示,其示出视频游戏中可用的所有可能路径。通用节点图550可以显示在图5a的窗口510中。例如,视频游戏可包括由节点551指示的起点以及由节点552指示的终点。虽然示出了一个端点,但通常,通用节点图可具有一个或多个端点,这些端点表示用于完成视频游戏的一个或多个选项。此外,视频游戏可具有在对应的通用节点图中表示的一个或多个起点。

通用节点图550包括多个节点(例如,逻辑节点),所述节点定义在用户处于视频游戏中时角色可以选择的各种逻辑路径(在本说明书中也称为“路径”)。例如,在节点502与503之间定义逻辑路径511。另外,通用节点图550还可包括节点的子集。例如,作为通用节点图550的子集的节点图530包括对应于在图5b的时间线310b中显示的快照图像的节点和路径。节点图530还示于图5a的窗口510中。

多个逻辑路径可被配置为以线性方式在通用图550中从一个节点到另一个节点进展。例如,用户沿着逻辑路径514和511在节点501至503之间(例如,从节点510到节点502,再到节点503)以线性方式移动通过节点图530。也就是说,当穿过节点501与节点503之间时,不能采用其他逻辑路径。

另外,多个逻辑路径可被配置为以非线性方式从一个节点到另一个节点进展。例如,当沿着逻辑路径511到达节点503时,用户以非线性方式移动通过节点图550。具体地讲,在节点503处有两个选项可用,其中在第一选项中,角色可采用路径512,而在第二选项中,角色可采用路径513。采用两种不同的路径可能会产生不同的结果。

在视频游戏中的进度通常可以由通用时间线529定义,该通用时间线从与起点551相关联的时间或标记521开始,并且在与终点552相关联的时间或标记522处结束。时间线529中的时间的使用旨在示出在视频游戏中的进度,并且不一定是对用户运行视频游戏的时长的量度。当用户从一个节点到另一个节点移动通过通用节点图530时,代表性时间或标记可以位于时间线529上。例如,在时间线529中,节点501可以表示为标记523,并且节点503可以表示为标记524。可以沿着时间线529从左到右衡量进度。例如,节点501在视频游戏的进度中发生在节点503之前。这样,表示节点501的标记523显示在表示节点503的标记524的左侧。此外,可通过与用户相关联的各种角色值,结合时间线529和节点图550进一步说明进度,如先前所述。例如,可通过角色可用的可能生命数量或角色累积的积分或现金来衡量进度。

图5c是根据本公开的一个实施方案的在图5a中初次介绍的节点图530的扩展图示,其示出与在视频游戏的游戏运行期间捕获的快照相关联地生成的快照节点的分级结构。在一个实施方案中,节点图530与用户的视频游戏的游戏运行期间的一个或多个时间线(例如,时间线310b、320和330)一起显示。例如,节点图530可以显示在图5a的窗口510中,或者可以显示在更大的窗口中。为了进行说明,图5c中示出了在窗口510中显示的节点图530的扩展视图。窗口350b的轮廓呈现在图5c中,以便参考快照图像和节点图530中的对应快照节点。

具体地讲,快照节点对应于已捕获快照的视频游戏的游戏运行中的点。通常,可以在通用节点图550的节点处捕获快照。这样,快照节点可以与通用节点图550中的节点对准。然而,一些快照节点可以不与通用图550中的节点对准,例如当已在通用图的两个节点之间(例如,在逻辑路径的中间)捕获到快照时。例如,可以在通用节点图550中的两个节点(对应于节点560和562)之间捕获快照节点561。

节点图530包括多个快照节点,这些快照节点定义角色在对应用户的游戏运行期间已采用的各种实际路径。例如,在快照节点560与561之间定义路径579。路径579被示出为已在用户的游戏运行以及好友f1的游戏运行中被采用。节点图530可以示出如在一个或多个用户的游戏运行中所定义的线性和非线性路径中的一个或两个。

在一个实施方案中,节点图530对应于在窗口350中显示的时间线310b、320和330中示出的快照图像。例如,快照节点562对应于表示用户的当前渲染图像305的框340c,快照节点507对应于好友f1的快照图像360e,快照节点595对应于好友f2的快照图像370a,并且快照节点565对应于好友f3的快照图像380d。以这种方式,向用户呈现相关的视频游戏的至少两个或更多个视图,诸如时间线中的快照图像和当前渲染图像以及节点图530中的快照节点。通过将当前渲染图像305(以及其在节点图530中的位置)与其他快照图像(以及它们在节点图530中的位置)交叉引用,用户能够理解在视频游戏中与当前渲染图像相关联的点周围的用户可用的路径。这样,用户能够将角色306定向在视频游戏的通用节点图550和节点图530内。以这种方式,用户能够在游戏中从一个点导航到另一个点。在一个实施方案中,虽然在图5c中示出了快照节点,但节点图530可包括定义由通用节点图550定义的逻辑路径的节点。

更具体地讲,扮演角色306的用户所采用的路径由具有精细分辨率的虚线a示出。例如,用户已在快照节点560、561和562之间行进。从快照节点562开始,用户的角色306采用从快照节点562向上行进到快照节点563和564的第一路线,以及从快照节点562向下行进到快照节点565至569的第二路线(例如,从节点565到节点566到节点567到节点568,再到节点569)。好友f1的角色308所采用的路径由实线b示出。例如,好友f1的角色308沿着由快照节点560、561、562、565、570、571、572、573和574定义的路径行进。此外,好友f2的角色308所采用的路径由具有粗略分辨率的虚线c示出。例如,好友f2的角色308已沿着由快照节点595、596、597、598、599和569定义的路径行进。好友f3的角色303所采用的路径由线d示出,并且示出角色303已沿着由快照节点560、581、582、583、565、584、585和568定义的路径行进。

在视频游戏的进度中,用户已采用越过快照节点562或在该快照节点的将来发生的路径,但已重新返回到快照节点562,所述快照节点对应于视频游戏中与当前渲染图像305相关联的点。例如,越过快照节点562采用并且在快照节点564处结束的第一路线可能已到达死胡同。另外,越过快照节点562采用并且在节点569处结束的第二路线可能会让用户不满意。与越过与用户相关联的当前渲染图像305发生的快照节点相对应的快照图像未在时间线310b中示出,但可以示于其他实施方案中。

用户已返回到游戏进度中的节点562,因为用户可能已经听过关于该区域中的视频游戏的精彩部分(遇到熊)的传闻,但目前为止一直错过这一动作。用户认为精彩部分能够以某种方式通过节点562到达。本公开的实施方案提供了一种方式,该方式使用户通过预览其他用户的游戏运行,并安排在视频游戏中采用以到达视频游戏的精彩部分的潜在路线,来发现通过视频游戏的替代路径。例如,用户可以在时间线310b中预览扮演角色308的好友f1的快照图像,并且发现与快照节点507相关联地发生与熊的相遇,该快照节点对应于快照图像360e。作为参考,快照图像360e示于框509中。在没有引入时间线中呈现的快照图像和/或节点图的情况下,用户将难以预览和/或发现这些感兴趣的区域。

具体地讲,用户可通过查看时间线310b中的快照图像来发现快照图像360e,或者可通过探索节点图530来发现它。例如,标签507显示在图5c的节点图530中的快照节点572旁边,这可能引起了用户的注意。通过与节点图530中的节点572交互,可以向用户呈现快照图像360e的视图,例如在图5a的窗口520中呈现。此外,通过在节点图530中选择快照节点572,可以突出显示(例如,加粗)时间线310b中的对应快照图像360e以引起注意。以这种方式,用户可以翻转对应的缩略图以查看快照图像360e的放大版本。如先前所述。在另一个实现方式中,如果节点图530呈现在其自己的主导窗口(例如,全屏或叠加窗口300)中,则与快照节点572的交互可以在另一窗口(未示出)中调出快照图像360e。

在预览好友f1的游戏运行和节点图530之后,用户可能希望进一步探索对应于快照图像360e的视频游戏,更具体地讲好友f1的游戏运行。如先前所述,本公开的实施方案使用户能够跳转到好友f1的游戏运行中。具体地讲,用户经由时间线310b或节点图53对快照图像360e的进一步选择使得游戏处理器210的跳转执行引擎216能够访问对应于快照图像360e的快照,基于快照实例化视频游戏的另一个实例,并且从视频游戏中对应于快照及其快照图像360e的点(现在被标识为跳转点)开始执行视频游戏。以这种方式,用户可通过好友f1的游戏运行完全体验节点507处的视频游戏(遇到熊)。也就是说,用户在跳转节点572处跳转到好友f1的角色308中,并且从视频游戏中对应于跳转节点572(对应于快照图像360e)的点开始进行好友f1的游戏运行的实例化。这样,用户能够跳转到游戏运行中最精彩的部分。

在体验好友f1的游戏运行之后,用户可以决定尝试导航到先前由好友f1的游戏运行捕获的相同快照节点572(遇到熊)。节点图530提供对好友f1所采用的路线的视图,以便用户从当前位置(即,与当前渲染的图像305相关联的节点562)到达快照节点572。例如,节点图示出节点562和快照节点572之间的行进经由快照节点565和570变得可能。

图6a是根据本公开的一个实施方案的与选定快照节点(例如,与快照图像360e相关联的快照节点572)紧密且线性地对准的快照节点集群的图示,其中可通过时间线310a或节点图530来选择快照节点。具体地讲,时间线310a包括在视频游戏的进度中当前渲染图像305之前发生的点处的用户的游戏运行的快照图像(340a、340b、…)(如空白缩略图340c所呈现。时间线310a还包括与好友f1在游戏运行期间捕获的快照相对应的快照图像(360d、360e、360f、…),如先前所述。此外,每个快照图像对应于快照节点,例如节点图530中呈现的那些。

时间线310a可示出来自在用户和好友f1的游戏运行期间捕获的多个快照中的选定的快照图像。好友f1的快照和快照图像用于举例说明具有低分辨率和较高分辨率的快照图像的呈现。出于说明的目的,在好友f1的游戏运行期间捕获了一百个快照,并且这些快照可以按照捕获它们的顺序编号为1到100。时间线310a可能没有足够的空间来示出对应于所捕获快照的所有快照图像。这样,在时间线310中仅呈现快照图像的子集。此外,在时间线310a中并排呈现的快照图像可能不会连续地和/或顺序地被捕获。例如,如图6a的时间线310a所示,快照图像360e按捕获的顺序被编号为50,而编号为60的快照图像360f位于该快照图像的右侧。这样,在快照图像360e与快照图像360f之间捕获了九个快照图像,但是未在时间线310a中示出。

在一个实施方案中,可以基于捕获的快照生成并呈现具有更精细分辨率的快照图像以供显示。具体地讲,通过时间线310a或通过节点图530进一步选择快照图像(例如,图像360e)将实现具有更高分辨率的快照图像的呈现。此外,在一个实施方案中,快照图像以节点图/树构型呈现,其示出用户(例如,好友f1)在游戏运行期间所采用的路径。也就是说,每个快照图像表示一个节点,并且快照图像以节点图构型呈现。例如,窗口可经由其对应的图像显示快照节点,其中快照节点在对应于选定快照图像360e的快照之前和/或之后被顺序地捕获。快照图像360e对应于用户选择的用于发起好友f1的游戏运行的跳转点,如先前所述。在被选择为跳转点之前或之后,用户可能想要看到与快照图像360e相关联的各个快照图像。

如图6a所示,快照图像的线性进度以各个缩略图与选定快照图像360e结合呈现。快照图像360e及其对应的快照也被称为跳转点(jp),如先前所述。选定快照图像360e和jp按所捕获的快照的顺序与编号为50的快照相关联。图6a示出,四个快照图像610、360e、615和620被示出并且对应于在jp之前捕获的一个快照(快照jp-1)、jp和在jp之后捕获的两个快照(快照jp+1和jp+2)。也就是说,快照图像对应于连续编号的快照49-52。例如,快照图像610(jp-1)、快照图像360e(jp)、快照图像615(jp+1)和快照图像620(jp+2)被连续排序为49-52。以这种方式,用户能够以较高的分辨率查看节点图构型中快照图像360e周围的好友f1的游戏中的动作。

图6b是根据本公开的一个实施方案的与选定快照节点(例如,对应于快照图像360e的快照节点572)紧密且非线性地对准的快照节点集群的图示,其中可通过如先前结合图6a介绍的时间线310a或节点图530来选择快照节点。图6a示出对应于快照图像360e的跳转点jp周围的视频游戏的线性进度,图6b示出jp周围的视频游戏的非线性进度。

例如,快照图像以节点图/树构型呈现,其示出好友f1在游戏过程期间所采用的路径。也就是说,每个快照图像表示一个节点,并且快照图像以节点图构型呈现。如图6b所示,快照图像的非线性进度以各个缩略图与选定快照图像360e结合呈现,也称为序号为50的jp。示出八个快照图像。具体地讲,快照图像605对应于序号为48的快照节点jp-2。另外,快照图像610对应于序号为49的快照节点jp-1,其中快照节点jp-1是示出非线性构型的决策节点。如序号50a-b所呈现,具有两种选择。源自快照节点jp-1的一个选择转到序号为50b的快照图像613。源自快照节点jp-1的另一选择路由到对应于快照图像360e和序号50a的快照节点jp。该路线继续通过连续编号的快照jp+1(与快照图像615和序号51相关)和快照jp+2(与快照图像620和序号52相关)。

图6c至图6f是根据本公开的一个实施方案的对应于与选定快照节点紧密对准并且结合图6a至图6b所述的快照节点集群的快照图像的图示。例如,图6c示出快照图像610,并且示出在熊离开洞穴时首次遇到熊的好友f1的游戏运行中使用的角色308。快照图像610对应于序号为49的快照节点jp-1。图6d示出快照图像360e(与快照节点jp和序号50相关),并且示出与熊近距离接触的角色308。角色308被示出为手握盘绕的绳索,该绳索可能是角色308可用的唯一工具和/或武器。图6e示出快照图像615(与快照节点jp+1和序号51相关),并且示出角色308通过使用绳索将熊的每个腿绑在树上来制服熊。图6f示出快照图像620(与快照节点jp+2和序号52相关),并且示出角色308享受她战胜熊的胜利果实:武器和其他奖励物品(例如,钱币、宝石等)可供索取。

图7是根据本公开的一个实施方案的在视频游戏的游戏运行期间捕获的快照以及将这些快照中的每一个存储为数据存储区750的单独主文件的图示。当用户处于视频游戏中时,这些主文件不会被自动擦除或覆盖,这在行业内是典型的。以这种方式,可以随时容易地访问与每个快照相关的信息和元数据,以便呈现快照图像(例如,在时间线中)、节点图,并且能够跳转到同一或其他用户的游戏运行中的跳转点。

例如,捕获与特定用户的游戏运行相关的多个快照。快照按捕获顺序连续编号(即,1-n)。如图7所示,至少捕获快照711(序号20)、快照712(序号31)、快照713(序号32)和快照714(序号33)。

每个快照包含足以从视频游戏中对应于快照的点开始加载和执行视频游戏的实例的信息和/或元数据。例如,每个快照至少包含存储在数据库145中的游戏状态数据、存储在数据库146中的快照图像数据、存储在数据库143中的随机种子数据以及存储在数据库141中的用户保存数据,如先前所述。在一个实施方案中,元数据包括用于在两个连续排序的快照处和之间驱动视频游戏的实例的输入命令。每个快照存储在数据存储区750中的对应主文件中,其中对应于特定快照的主文件可包括指向这些数据库中的每一个的指针以用于相关访问。如图所示,快照711存储在主文件751中,快照712存储在主文件752中,快照713存储在主文件753中,并且快照714存储在主文件754中。

图8是根据本公开的一个实施方案的视频游戏的用户的游戏运行的多个片段的图示,包括该用户基于相同或另一用户在视频游戏的另一游戏运行期间捕获的快照向单独跳转游戏运行的中间跳转。例如,用户正在玩游戏,其中角色306的当前渲染图像305显示在窗口300上,如先前结合图3至图6所述,该用户可以选择在由快照图像360e定义的跳转点(jp)处跳转到好友f1(具有角色308)的游戏运行中。时间线310a和/或310b向用户提供快照图像360e的预览。此外,节点图530为视频游戏内的快照图像提供上下文,因为快照图像360e可以与快照节点572处的其对应位置相关联(例如,通过突出显示等),如先前所述。基于在好友f1的原始游戏运行期间在快照节点572处捕获的快照,使用户能够发起向好友f1和角色308的游戏运行中的跳转。可通过在时间线310a或310b中进一步选择快照图像360e或者通过在节点图530中选择节点572来实现跳转的发起。对于发起跳转到相同或另一用户的游戏运行中的支持可通过任何手段或方法(例如,跳转选择窗口等)来实现。

在一个实施方案中,在跳转游戏运行中捕获多个快照。此外,可捕获并存储跳转游戏运行的视频记录以供之后访问。以这种方式,任何用户都可经由跳转游戏运行中的任何快照来运行跳转游戏。在一个实施方案中,跳转游戏运行的快照图像被置于时间线中,通过该时间线可以实例化跳转游戏运行,如先前所述。

可结合用户的游戏运行830的片段来描述用户与视频游戏的交互。如图所示,用户的游戏运行830包括第一片段831和第二片段832。具体地讲,用户的游戏运行830的第一片段831定义用户与视频游戏的当前或初始交互。这样,图3a的当前渲染图像305可以与第一片段831相关联。为了进行说明,快照节点图810示出先前结合图5c描述的节点图530的一部分。用户的游戏运行830的第一片段831中的角色306所采用的路线由虚线811示出,并且包括快照节点560、561和562。出于说明和清楚的目的,当前渲染图像305与快照节点562相关联并且指示第一片段831的结束,即使快照节点图810示出角色306已经由一个路径812进一步前进(例如,进一步进展)到快照节点562的右侧,到达节点563和564,并且经由第二路径813到达节点565和566。角色306所采用的该部分路线(以快照节点562结束)也在节点图820中重复,该节点图示出使用角色306的用户的游戏运行直到第一片段831的结束。

在快照节点562处,用户可以选择探索视频游戏中的其他点并选择跳转到好友f1的游戏运行中(例如,进一步选择快照图像360e),如先前所述。好友f1的游戏运行由快照节点图810的粗实线899示出。此时,暂停用户的游戏运行830的第一片段831,并且用户在对应于快照节点572的点处跳转到好友f1的游戏运行中。为了进行说明,跳转游戏运行从角色与熊近距离交战的点开始。具体地讲,暂停执行用户的游戏运行830的视频游戏的实例(例如,第一片段831的结束),并且在跳转点(快照节点572)处开始执行好友f1的跳转游戏运行的视频游戏的实例基于在快照节点572处捕获的对应快照来实例化。跳转到节点572的表示由弯曲箭头891示出。跳转游戏运行由跳转片段840定义。

在另一个实施方案中,在开始跳转游戏运行之前,在第一片段831的结束处保存并终止用户的游戏运行830。以这种方式,用户可以在将来返回到视频游戏并从对应于快照节点562的点(例如,第一片段831的结束)恢复。也就是说,用户可以有效地恢复暂停的游戏。

在一个实施方案中,执行用户的游戏运行830的视频游戏的实例与执行用户通过其进行交互的跳转游戏运行的视频游戏的实例分开,其中跳转游戏运行基于好友f1的原始游戏运行。出于说明,快照节点图850示出由用户进行的跳转游戏运行的跳转片段840中角色308所采用的路线,其中跳转游戏运行中的角色308最初由好友f1的游戏运行创建和定义。跳转游戏运行中采用的路线通过粗虚线896示出。

如节点图850所示的跳转游戏运行中的角色308所采用的路线从快照节点572开始,并且相继地到达节点851、852和结束节点859。结束节点859指示执行跳转游戏运行的视频游戏的实例的终止。重要的是需注意,由虚线896所示的跳转游戏运行中角色308所采用的路线(包括节点572、851、852和859)不同于节点图810中所示的好友f1的游戏运行中角色308所采用的路线897(包括节点572、573和574)。也就是说,由用户执行的跳转游戏运行不同于好友f1的先前存储的游戏运行,因为用户将提供新的输入命令来引导跳转游戏运行。例如,在跳转游戏运行中,可能不能成功地与熊相遇,因为用户此时可以快速预览游戏以决定是否在他或她自己的游戏运行830中运行这部分视频游戏。另一方面,好友f1的游戏运行可以显示与熊的成功相遇。

在一个实施方案中,在跳转游戏运行期间,可以在跳转片段840中示出的每个节点(例如,节点572、851、852和859)处捕获快照。可存储跳转游戏运行及其相关联的快照以供稍后访问。例如,用户可能希望回顾并实例化由用户创建并与视频游戏相关联的跳转游戏运行。在其他实施方案中,用户可能希望回顾并实例化与其他视频游戏相关联的跳转游戏运行,其中跳转游戏运行由该用户或其他用户创建。

在执行跳转游戏运行之后,可以恢复用户的游戏运行830。用户现在已经预览了好友f1的游戏运行,并且可能希望让他或她自己的角色306到达与跳转点相关联的快照节点572。以这种方式,用户的游戏运行830可包括指向跳转点的路线,使得用户的游戏运行中的角色将同样地与熊相遇。

快照节点图820示出现在恢复的用户的游戏运行830中的角色所采用的路线。游戏回放830的恢复由第二片段832定义,其中恢复的游戏运行由粗虚线809定义。这样,用户的整个游戏运行830由第一片段8310(虚线811)和第二片段832(粗虚线809)示出。在一个实施方案中,游戏运行830的第二片段832继续暂停的视频游戏的实例。在另一个实施方案中,由于第一片段831被终止,游戏运行830的第二片段832在视频游戏的新实例上执行,该新实例从视频游戏中与快照562相关联的点开始。第二片段832从快照节点562开始,并且相继地到达快照节点821、822、823、824和829。

在节点图820中,快照节点823大致对应于与跳转点相关联的快照节点572。例如,用户想要在他或她自己的游戏运行830中遇到熊。具体地讲,用户可经由快照节点图530和/或通用节点图550导航到用户的游戏运行中的快照节点572。具体地讲,用户能够通过回顾快照节点图530来发现其他用户(例如,好友f1)遇到的快照节点562与快照节点572之间可用的可能路径。另外,用户能够通过回顾通用节点图550来发现快照节点562与快照节点572之间可用的一般逻辑路径。以这种方式,用户能够导航到快照节点823(例如,经由节点821和822)并遇到熊。重要的是需注意,节点821和822与最初在好友f1的游戏运行期间捕获但可能不相同的快照节点565和570大致对准。

快照节点823、824和829等示出用户的游戏运行830在第二片段832中所采用的路线,其中角色306现在遇到熊并与熊交战。在快照节点823处与熊初次相遇之后采用的路线(包括节点824、829等)可能与跳转游戏中的路线(例如,节点572、851、852和859)不同,它也不能与好友f1的游戏运行中的路线(例如,节点572、573和574)相同。这是因为用户的游戏运行830具有其自己的用于驱动视频游戏的独特输入命令。

通过对在网络上通信的游戏服务器和客户端装置的各种模块的详细描述,现在将结合图9的流程图900对根据本公开的一个实施方案的用于在游戏网络上执行的视频游戏的游戏世界中进行导航的方法进行描述。流程图900示出了出于生成在客户端装置上通过网络显示的信息的目的在游戏服务器侧所涉及的操作的过程和数据流。

该方法从操作910开始,并且包括捕获从与多个用户相关联地执行的视频游戏的多个实例生成的多个快照。具体地讲,视频游戏的实例由图1的一个或多个游戏服务器205的一个或多个游戏处理器210执行。在执行视频游戏的每个实例时,捕获一个或多个快照,其中快照使得能够从所述视频游戏中对应于该快照的点开始执行视频游戏的实例,如先前所述。

具体地讲,快照包括快照图像,该快照图像包括由与对应用户的游戏运行相关联地执行的视频游戏的实例生成的渲染图像。该渲染图像示出对应于视频游戏中的点的视频游戏的场景,其中该点示出用户在视频游戏中的游戏运行进度。

另外,快照还包括能够生成与所述视频游戏中的点相对应的环境的游戏状态数据。也就是说,基于快照生成相应的场景和环境,其中指示角色通过用户的游戏运行与环境交互。

此外,快照包括为场景和环境提供附加特征的随机种子数据,如先前所述。例如,可以唯一地生成一个或多个通用角色的云配置和移动以包括到与用户的游戏运行相关联的场景和环境中。这样,对于视频游戏的每个实例,一个或多个通用角色的云配置和移动可以不同。

另外,快照包括用户保存的数据,该数据使得能够为对应用户的游戏运行生成角色。角色具有与视频游戏中捕获快照的点相对应的第一状态。例如,第一状态定义角色的外观和类型、角色所穿的衣服、角色所达到的级别、角色可用的武器、角色在该点的生命状态等。

在操作920处,该方法包括生成运行视频游戏的第一用户的第一时间线以供显示。第一时间线包括处于视频游戏中的至少一个用户(第一用户和/或其他用户)的快照图像。时间线中的快照图像相对于与第一用户相关联地执行的视频游戏的第一实例的当前渲染图像进行显示。每个快照图像可以与对应的快照交叉引用。当前渲染的图像与第一用户在视频游戏的进度中的当前点相关联。

在操作930处,该方法包括生成多个第一缩略图以在第一时间线中显示,所述第一缩略图包括与第一用户相关联的多个第一快照图像。也就是说,第一缩略图示出第一用户在视频游戏中的进度。具体地讲,多个第一快照包括至少一个渲染图像,所述渲染图像示出与当前渲染图像相比的第一用户的过去进度。

在操作940处,该方法包括生成多个第二缩略图以在第一时间线中显示,所述第二缩略图包括与第二用户相关联的多个第二快照图像。也就是说,第二缩略图示出第二用户在视频游戏中的进度。具体地讲,多个第二快照图像包括至少一个渲染图像,所述渲染图像示出视频游戏中在当前渲染图像之后的点处第二用户的未来进度的进展。

在其他实现方式中,多个第二快照图像示出第二用户的过去和/或当前进度。例如,第二快照包括至少一个渲染图像,所述渲染图像示出视频游戏中在当前渲染图像之前的点处的第二用户的进度,所述当前渲染图像是为了显示在第一用户的客户端装置处而生成的。

在又其他实施方案中,可以生成附加时间线以显示在客户端装置处。例如,生成第三用户的第二时间线以供显示。第二时间线包括第三用户的多个第三快照图像。第二时间线包括多个渲染图像,其示出在视频游戏中与第一用户的游戏运行相关联的当前渲染图像之前和之后的多个点处第三用户在视频游戏的游戏运行期间的进度。

如先前所述,选定快照图像使得游戏处理器210的跳转执行引擎216能够访问对应于快照图像的快照,基于快照实例化视频游戏的另一个实例,并且从视频游戏中对应于快照的点(现在被标识为跳转点)开始执行视频游戏。例如,游戏处理器210接收第一用户从第一时间线中的多个第二快照中对选定快照图像的选择,其中选定的快照图像与第二用户的游戏运行相关联。此外,游戏处理器被配置为将与第一用户的游戏运行相关联地执行的视频游戏的第一实例的执行跳转到视频游戏中与选定快照图像相关联的跳转点。在一个实现方式中,暂停和/或终止视频游戏的第一实例,并且基于选定快照图像的快照来实例化视频游戏的另一个实例,即跳转游戏。

以这种方式,第一用户能够跳转到第二用户的游戏运行中。例如,第一用户能够在跳转游戏中指示第二用户在游戏运行中使用的角色。选定快照图像的对应快照包括第二用户保存数据,其能够生成在第二用户的游戏运行中使用并且还用于跳转游戏中第一用户的跳转游戏运行的角色。第二用户保存数据和第二角色源自第二用户的游戏运行。这样,第一用户在跳转游戏的执行期间创建跳转游戏运行。

在第一用户完成跳转游戏之后,可以恢复视频游戏的第一实例。也就是说,终止执行跳转游戏的视频游戏的第二实例,并且恢复与第一用户的游戏运行相关联的视频游戏的第一实例。以这种方式,第一用户可以恢复他或她自己的视频游戏的游戏运行。

第一用户还可以在第一用户的先前游戏运行中选择快照图像。例如,游戏处理器可被配置为接收在与先前游戏运行相关联的多个第一快照图像中对选定快照图像的选择。将视频游戏的第一实例的执行跳转到视频游戏中与选定快照图像相关联的跳转点。在一个实现方式中,基于对应于选定快照图像的快照,通过视频游戏的另一个实例实现跳转。在另一个实现方式中,通过视频游戏的第一实例实现跳转。

另外,可以生成节点图以显示在客户端装置处。节点图包括与在时间线中显示的快照图像相对应的多个快照节点,如先前所述。多个快照节点定义多个路径,其中路径和节点与第一用户和第二用户的游戏运行相关联。节点图中的每个节点与对应的快照相关联。

此外,节点图可以允许第一用户跳转到相同或另一用户的游戏运行中。例如,游戏处理器被配置为接收对节点图中选定快照节点的选择。快照节点与对应的快照相关联。可以任选地生成对应于选定快照节点的选定快照图像,以显示在客户端装置处。具体地讲,对选定快照节点和/或对应快照图像的选择使得能够将与第一用户的游戏运行相关联地执行的视频游戏的第一实例的执行跳转到视频游戏中与选定节点相关联的跳转点。

经由视频记录进行游戏运行访问

一般而言,本公开的各种实施方案描述了用于使用户经由所存储的游戏运行的视频记录跳转到参与游戏应用程序的玩家所存储的游戏运行中(特别是当在基于云的游戏系统上执行时)的系统和方法。视频记录包括或引用在游戏运行期间最初捕获的多个快照,其中快照包含使得能够在对应于快照捕获的点处实例化游戏应用程序的实例的元数据和/或信息。快照使得任何请求用户能够实例化和引导游戏应用程序的实例,即使请求用户可能不是生成所存储的游戏运行的玩家。可通过包括所存储的游戏运行的一个或多个快照图像的时间线来选择视频记录,其中每个快照图像对应于快照,并且其中快照图像以使观看者感知玩家在游戏应用程序中的进度的方式进行显示。时间线可以在用户运行游戏应用程序时呈现,从而使用户通过预览其他玩家的游戏运行来感知用户在游戏运行中的可能性。对视频记录中视频帧的选择识别跳转点,其中选定视频帧与用于对跳转游戏运行进行实例化的对应快照相关联。选定视频帧可以不对应于快照,并且可以位于一个或多个快照处或附近或之间。跳转游戏运行被自动执行以回放玩家的游戏运行,直到使用先前用于引导玩家的游戏运行的所保存输入命令到达跳转点,在该跳转点后跳转游戏运行对于请求用户变为实况的(即,跳转游戏运行由用户输入命令引导)。

本公开的使用户经由视频记录跳转到参与游戏应用程序的玩家所存储的游戏运行中的实施方案可以在先前所述的图1至图2的系统内实现。

图10示出根据本公开的一个实施方案的用于经由视频记录进行游戏运行访问的系统的部件,所述视频记录允许用户基于系统在玩家的游戏运行期间生成和捕获的快照跳转到参与游戏应用程序的任何玩家所存储的游戏运行中。例如,在一些实施方案中,用于经由视频记录进行游戏运行访问的部件可包括在先前在图1中介绍的游戏服务器205的游戏处理器210中。此外,在其他实施方案中,游戏服务器205包括在图2的游戏云系统(gcs)201中,使得gcs201可配置为经由视频记录提供游戏运行访问。

具体地讲,游戏处理器210包括被配置为基于在参与游戏应用程序的玩家的先前游戏运行期间捕获的快照来实例化游戏应用程序的实例的各种部件。游戏处理器210先前在图1中进行了介绍,包括游戏执行引擎211、快照生成器212、时间线生成器213、节点图生成器214、ai叠加模块215和跳转游戏执行引擎216。另外,如图10所示,游戏处理器210还包括视频播放器1010、回放引擎1015、跳转游戏输入管理器1020、回放起点选择器1025、重影引擎1030和引导引擎1035。游戏处理器210的一个或多个部件(单独或组合)可配置为经由所存储的游戏运行的视频记录跳转到参与游戏应用程序的玩家所存储的游戏运行中。此外,在本公开的其他实施方案中,游戏处理器210的一个或多个部件经由基于云的游戏系统(例如,gcs201)内的视频记录提供游戏运行访问。

具体地讲,图1的系统10包括执行游戏处理器模块210的游戏服务器205,该游戏处理器模块提供对多个交互式视频游戏或游戏应用程序的访问,并且更具体地讲,经由游戏运行的视频记录提供对游戏应用程序的所存储游戏运行的交互式访问。如图1所示,客户端装置100被配置用于以跳转游戏运行的形式请求对玩家的特定游戏运行的访问。可经由玩家的游戏运行的视频记录来进行访问请求,使得通过视频记录包括和/或引用的相关联快照用于对跳转游戏运行进行实例化。具体地讲,游戏服务器2015执行游戏应用程序的实例以基于快照对跳转游戏运行进行实例化,并生成渲染图像,所述渲染图像被传送到客户端装置100以供显示。

例如,视频播放器1010被配置用于在运行参与游戏应用程序的玩家的选定游戏运行的视频记录时生成多个视频帧。视频播放器1010可以独立于视频记录器271运行或与其协作运行,以生成、保存、访问和/或运行游戏运行的记录(例如,视频、音频等),以及对应于该游戏运行的任何游戏量度。在一个实施方案中,可通过所存储的游戏运行的一个或多个快照图像来选择所存储的游戏运行的视频记录,所述快照图像通过时间线呈现,该时间线被渲染以显示在客户端装置100上,其中呈现快照图像以显示游戏应用程序中游戏运行的进度。也就是说,对在游戏运行期间捕获的快照图像中的一者的选择提供了对所存储的游戏运行的视频记录的选择和运行。视频记录的图像帧通过网络传送到客户端装置以供显示。

此外,视频记录包括或引用在游戏运行期间捕获的多个快照,其中快照包含使得能够在游戏运行中对应于快照捕获的点处实例化游戏应用程序的实例的元数据和/或信息。这样,对视频记录中跳转点的选择(例如,经由视频帧)提供了在跳转点处开始的跳转游戏运行的实例化。具体地讲,回放引擎1015被配置为创建并执行游戏应用程序的实例以对跳转游戏运行进行实例化。基于通过选择跳转点而确定的相关联的快照来对游戏应用程序的实例进行实例化,其中跳转点可以直接对应于相关联的快照,或者其中跳转点位于相关联的快照附近,或者相关联的快照与另一快照之间。因此,相关联的快照用于对跳转游戏运行进行实例化。在一个实现方式中,回放引擎1015独立于跳转游戏执行引擎216运行或者与其协作运行,以提供对所存储的游戏运行的交互式访问。

具体地讲,回放起点选择器1025被配置为确定跳转游戏运行的回放部分的起点。也就是说,在选择跳转点之后,选择适当且相关联的发起快照以发起和/或实例化用于执行玩家的游戏运行的游戏应用程序的实例,其中跳转点可以不对应于游戏运行中捕获发起快照的点。在跳转游戏运行的回放部分期间,所存储的游戏运行自动从游戏运行中捕获发起快照的点回放到跳转点,在该跳转点后跳转游戏运行对于请求用户变为实况的,使得回放引擎1015和/或跳转游戏执行引擎216处理来自请求用户的客户端装置100的输入命令。

具体地讲,在跳转游戏运行的回放部分期间,跳转游戏输入管理器1020确定并访问用于由游戏应用程序的实例执行的多个输入命令。多个输入命令先前用于引导玩家的游戏运行。与在玩家的游戏运行期间生成的一个或多个快照相关联地捕获并存储多个输入命令(例如,在图1的数据存储区140的数据库1040中)。例如,快照可以存储所用的输入命令直到捕获对应快照的点且可包括该点,并且可以从与先前和最近的快照相关联的点开始收集快照。也就是说,对应快照的所存储的输入命令将游戏运行从先前快照引导到对应快照。另外,快照可以存储在捕获对应快照的点处和/或之后使用并且在与下一个和/或最近的快照相关联的点处结束的输入命令。也就是说,对应快照的所存储的输入命令将游戏运行从对应快照引导到下一个快照。在另一个实现方式中,快照可以存储在捕获对应快照的点之前和之后使用的输入命令。

通过对在网络150上通信的游戏服务器205和客户端装置10的各种模块的详细描述,现在将结合流程图1100对根据本公开的一个实施方案的用于游戏的方法进行描述。具体地讲,流程图1100示出提供对参与游戏应用程序的玩家所存储的游戏运行的交互式访问(例如,通过游戏运行的视频记录)的方法中的步骤。更具体地讲,流程图1100的方法公开了基于在游戏运行期间生成和捕获的快照使用户跳转到所存储的游戏运行中的方法,其中可通过所存储的游戏运行的视频记录来选择快照。流程图1100示出了出于生成在客户端装置200处通过网络150显示的信息的目的在基于云的游戏系统201(例如,gcs201)的游戏服务器205侧所涉及的操作的过程和数据流。

该方法中的操作1110包括将所存储的游戏运行的视频记录通过网络传送到与用户相关联的客户端装置。所存储的游戏运行是针对参与游戏应用程序的玩家的。用户可以访问所存储的游戏运行以进行观看,其中游戏运行可以是除用户之外的玩家进行的,也可以是作为用户的玩家进行的。

在一个实施方案中,通过包括游戏运行的一个或多个快照图像的时间线来选择视频记录。时间线可以在用于参与游戏应用程序时与用户的游戏运行同时呈现,如先前结合图1至图9所述。也就是说,在用户运行游戏应用程序时,用户可能希望通过该游戏运行的视频记录预览另一玩家的游戏运行,并且还通过对另一玩家所存储的游戏运行的交互式访问来预览。另外,在用户运行游戏应用程序时,用户可能希望通过用户所存储的游戏运行的视频记录回顾他的游戏运行,并且还通过对用户所存储的游戏运行的交互式访问来回顾。也就是说,时间线中的快照图像以跳转游戏运行的形式提供与对应视频记录的关联和访问和/或对所存储的游戏运行的交互式访问。

在1120处,该方法包括经由视频记录从客户端装置接收对游戏运行中的跳转点的选择。也就是说,视频记录中的选定点定义跳转点,请求用户想要从该跳转点开始对基于玩家的游戏运行的跳转游戏运行进行交互式访问。换句话说,请求用户希望经由跳转游戏运行获得对玩家的游戏运行的交互式访问。

在1130处,该方法包括基于快照(例如,发起快照)实例化和/或发起游戏应用程序的实例。游戏应用程序的实例对跳转游戏运行进行实例化。具体地讲,视频记录与在玩家的游戏运行期间捕获的一个或多个快照相关联,所述快照包括在玩家的游戏运行中的第一点处捕获的发起快照。快照包含使得能够在对应于快照捕获的点处实例化和/或发起游戏应用程序的实例的元数据和/或信息。例如,快照包括快照图像,该快照图像包括由与玩家的游戏运行相关联地执行的游戏应用程序的第一实例生成的渲染图像。快照图像对应于与玩家的游戏运行中的点相对应的视频帧。

为了进行说明,发起快照包括对应于视频记录的第一视频帧的第一快照图像,所述第一视频帧进一步对应于游戏运行的第一点。快照还包括使得能够生成与游戏运行中的第一点相对应的环境的游戏状态数据,如先前所述。快照还包括为环境提供附加特征的随机种子数据,如先前所述。快照还包括使得能够生成所述玩家的游戏运行的角色的用户保存数据,其中角色具有与游戏运行中的第一点相对应的第一状态。例如,用户保存数据可包括玩家选择的游戏难度、游戏级别、角色属性、角色位置、剩余生命数、可用生命总数、盔甲、奖品、时间计数器值等。快照还包括输入命令序列中的至少一个输入命令,其中捕获并存储与快照相关联的输入命令(例如,朝向或远离快照引导)。

这样,游戏应用程序在对应于捕获发起快照的点处开始,并且基于先前由玩家所存储的游戏运行(例如,场景、角色等)定义的游戏环境。例如,发起快照使得能够在玩家的游戏运行中的第一点处实例化和/或发起游戏应用程序的实例。

在一个实施方案中,跳转点可以对应于捕获的快照,其中捕获的快照可用于实例化和/或发起跳转游戏运行,如先前所述。例如,当跳转点直接对应于发起快照(和第一点)时,发起快照可用于在跳转点处开始实例化和/或发起跳转游戏运行,并且其中跳转游戏运行立即通过执行来自请求用户的输入命令而对于请求用户变为实况的。

在另一个实施方案中,跳转点可以不对应于用于对跳转游戏运行进行实例化的快照。也就是说,跳转游戏运行由游戏应用程序的实例基于发起快照来实例化并执行,但跳转点可以不直接与玩家的游戏运行中的第一点对应,其中第一点与发起快照直接对应。然而,跳转点与用于实例化和/或发起跳转游戏运行的发起快照相关联,使得跳转游戏运行可用于到达跳转点。具体地讲,跳转游戏运行包括回放部分和实况部分。这样,跳转游戏运行可通过回放部分自动执行以到达跳转点(例如,使用来自所存储的游戏运行的所保存的输入命令),在该跳转点后跳转游戏运行通过执行来自请求用户的输入命令而对于请求用户变为实况的。

具体地讲,在回放部分期间,在操作1140处,该方法包括访问与发起快照和/或跳转点相关联的多个输入命令和/或输入命令序列。输入命令用于预先引导玩家所存储的游戏运行。

在回放部分期间,当由实例化跳转游戏运行的游戏应用程序的实例执行时,输入命令回放玩家从第一点到跳转点的游戏运行。具体地讲,在操作1150处,该方法包括基于用于在客户端装置处进行渲染的输入命令序列在游戏应用程序的实例处生成多个图像帧。所述多个图像帧回放玩家(在跳转游戏运行中)从第一点到跳转点的游戏运行。例如,多个图像帧包括与玩家的游戏运行中的第一点的第一视频帧相对应的第一图像帧,以及与跳转点的第二视频帧相对应的第二图像帧。回放部分在对应于第一点的第一图像帧与对应于跳转点的第二图像帧之间生成图像帧。

在一个实施方案中,该方法包括正向运行在跳转游戏运行的回放部分期间回放和/或重新创建的玩家的游戏运行。也就是说,输入命令序列在游戏应用程序的实例中以正向顺序执行,其中输入命令可被顺序地排序以用于引导所存储的游戏运行的原始执行。在另一个实施方案中,该方法包括倒退运行在跳转游戏运行的回放部分期间回放和/或重新创建的玩家的游戏运行。也就是说,输入命令序列在游戏应用程序的实例中以反向顺序执行,其中输入命令可被顺序地排序以用于引导所存储的游戏运行的原始执行。

在一个实施方案中,该方法包括使输入命令序列的执行超频。也就是说,跳转游戏运行的回放部分以快速运动的方式进行,使得游戏运行从第一点到跳转点快速正向显示,或者游戏运行显示从第一点到跳转点快速倒退显示,如下文将结合图13a进一步所述。

在回放部分之后,跳转游戏运行继续进行到实况部分。具体地讲,在操作1160处,该方法包括从跳转点开始处理从客户端装置接收并在游戏应用程序的实例处执行的输入命令。先前,在跳转游戏运行的回放部分期间,阻止游戏应用程序的实例处理从客户端装置接收到的输入命令。

在一个实施方案中,提供对主动生成并实时存储的当前游戏运行的访问。具体地讲,代替视频记录,将流式实况视频通过网络传送到客户端装置。也就是说,在流程图1100中,在操作1110中传送的内容是参与游戏应用程序的玩家的实况游戏运行的实况流式视频。以这种方式,可对在实况游戏运行期间捕获的快照进行选择,以允许用户经由跳转游戏运行来体验实况游戏运行。也就是说,用户能够经由流式实况视频的视频帧选择在实况游戏运行期间捕获的快照,以发起游戏应用程序的实例,从而执行跳转游戏运行。

图12a是根据本公开的一个实施方案的参与游戏应用程序的玩家所存储的游戏运行的视频记录1201中的多个视频帧的图示,其中视频记录用于对所存储的游戏运行进行交互式访问。在一个实现方式中,视频记录1201用于选择跳转点1290,如图11的操作1120中所述,并且用于发起游戏应用程序的实例以对跳转游戏运行进行实例化,如操作1130中所述。出于说明的目的,视频记录1201被示出为表示记录长度的条,以及每个视频帧在视频记录1201内的近似位置。

具体地讲,视频记录1201包括在客户端装置处呈现时顺序显示的多个视频帧。视频记录1201在参与游戏应用程序的玩家的游戏运行期间生成,并且可具有可选择的长度。出于说明的目的,视频记录至少包括位于导航栏1201中所示的各个点处的视频帧1210-1214。应理解,一个或多个附加视频帧可位于图12a所示的任何两个视频帧之间。

另外,每个视频帧可以与在玩家的游戏运行期间捕获的至少一个快照相关联。出于说明的目的,图12a示出视频帧与快照之间的紧密关联,使得显示视频帧1210-1214,因为快照是在游戏运行中生成视频帧的点处或附近捕获的。重要的是需注意,特定视频帧可以不直接对应于快照,但可以与快照紧密相关联。例如,视频帧可以与最近捕获的快照相关联。以这种方式,视频帧/视频记录与快照之间的关系允许通过关联进行选择。例如,通过选择快照,其相关联的视频帧和/或视频记录是已知的。另外,通过在视频记录中选择视频帧,其相关联的快照是已知的。

视频记录1201包括与捕获的快照ss-1及其快照图像610紧密相关的视频帧1210。具体地讲,视频帧1210和快照图像610示出游戏运行中角色308(女性主角)首次偶遇在位于森林中的洞穴前面徘徊的熊的点。另外,视频记录1201包括与捕获的快照ss-2及其快照图像360e紧密相关的视频帧1212。具体地讲,视频帧1212和快照图像360e示出游戏运行中角色308正在积极地与充满攻击性的熊交战或搏斗的点,其中角色308被示出为具有用作武器的盘绕绳索。视频记录1201包括与捕获的快照ss-3及其快照图像615紧密相关的视频帧1213。具体地讲,视频帧1213和快照图像615示出游戏运行中角色308已成功制服熊并使用盘绕的绳索捆绑了熊的四肢的点。此外,视频记录1201包括与捕获的快照ss-4及其快照图像620紧密相关的视频帧1214。具体地讲,视频帧1214和快照图像620示出游戏运行中角色在与熊的成功战斗之后赢得奖励以包括装满钱币的宝箱以及可用于随后的战斗的步枪的点。

另外,视频记录1201包括位于视频帧1210(例如,ss-1)与视频帧1212(例如,ss-2)之间的视频帧1211。也就是说,视频帧1211位于玩家的游戏运行中两个快照ss-1与ss-2之间的点。可在视频帧1211与两个快照ss-1和ss-2中的至少一者之间建立紧密关联,使得快照ss-1或ss-2可用于提供对玩家的游戏运行的交互式访问。具体地讲,本公开的实施方案提供对视频帧1211的选择(如箭头所示),所述视频帧位于两个快照ss-1和ss-2之间作为中间快照跳转点,并使用快照ss-1或ss-2发起跳转游戏运行。跳转游戏运行包括回放部分和实况部分,使得跳转游戏运行可通过回放部分自动执行以到达跳转点(例如,使用来自所存储的游戏运行的所保存的输入命令),在该跳转点后跳转游戏运行通过处理来自用户的输入命令而对于请求用户变为实况的。

图12b是根据本公开的一个实施方案的在用户的游戏应用程序的游戏运行期间显示的时间线310a的图示,其中与时间线310a的被动或主动交互提供了对玩家所存储的游戏运行的视频记录的显示,并且其中与视频记录的进一步被动或主动交互提供了与玩家的游戏运行的交互式访问。在一个实现方式中,时间线310a用于如图11的操作1110中所述选择视频记录,用于如图11的操作1120中所述选择跳转点1290,并且用于如操作1130所述发起游戏应用程序的实例以对跳转游戏运行进行实例化。

如先前所述,窗口300示出用户的游戏应用程序的游戏运行的当前渲染图像305。时间线310a包括快照图像,所述快照图像包括在游戏应用程序的进度中当前渲染图像305之后发生的点处的玩家(例如,扮演角色308的好友f1)的游戏运行的快照图像(例如,360d、360e、360f、…)。例如,快照图像可经由缩略图在时间线310a中呈现。对缩略图的主动或被动选择提供了对应快照图像的放大,例如由大致在选定缩略图的同一区域中生成和显示的窗口410示出。

在一个实施方案中,与时间线310a的主动或被动交互提供了对玩家的游戏运行的视频记录1201的选择。具体地讲,对时间线310a中的快照图像360e的进一步主动或被动选择(例如,经由光标490a)提供了对玩家的游戏运行的视频记录1201的选择。例如,对快照图像360e的选择可通过对窗口410的主动或被动选择来实现。在一个实现方式中,视频记录1201可以与当前显示的图像305同时在窗口1212中示出。在其他实现方式中,窗口1212可以独立于窗口300示出,例如以全屏模式。视频记录1201大致对应于游戏运行中与选定快照图像360e相关联的点。例如,视频记录1201中所示的剪辑可以集中在角色308与熊之间的boss战斗,并且从其中角色308首次偶遇熊的视频帧1210开始,并且以其中角色308在成功战胜boss熊后检查战利品的视频帧1214结束。这样,视频记录1201可以从视频帧1210开始运行,或者可以从视频记录1201内的任何视频帧(例如,选定快照360e附近的视频帧)开始运行。

此外,窗口1212中所示的视频记录1201可以显示通过导航栏1260示出并可通过该导航栏选择的任何视频帧。例如,可移动定位器1265示出视频帧1211在视频记录1201内的大致位置。此外,可移动定位器1265可被引导到视频记录1201内的任何点和/或视频帧。这样,视频记录1201可通过视频帧(例如,正向、反向、快速、慢速)运行,或者在特定视频帧上暂停。例如,在观看整个视频记录1201之后,用户可通过将定位器1265移动到导航栏1260上的适当位置来选择返回到视频帧1211。也就是说,用户对视频记录1201的内容感兴趣,并且想要交互地访问玩家所存储的游戏运行,如下所述。例如,用户想要经历与熊的boss战斗,并且想要从其中熊正在有攻击性地接近角色308的视频帧1211开始战斗。

具体地讲,对视频记录的进一步主动或被动选择提供了对所存储的游戏运行的交互式访问。更具体地讲,对视频记录1201中的视频帧(例如,帧1211)的进一步主动或被动选择定义跳转点1290,并且实例化游戏应用程序的实例以基于在玩家的游戏运行期间捕获的相关联的快照(例如,ss-1或ss-2)执行跳转游戏运行,使得跳转游戏运行可由请求用户从选定跳转点1290开始运行。如先前所述,跳转游戏运行包括回放部分和实况部分,使得跳转游戏运行可通过回放部分自动执行以到达跳转点1290(例如,使用来自所存储的游戏运行的所保存的输入命令),在该跳转点后跳转游戏运行通过处理来自用户的输入命令而对于请求用户变为实况的。虽然相关联的快照(例如,ss-1或ss-2)被示出为在视频记录1201内具有对应的视频帧,但在其他实施方案中,相关联的快照可以不对应于视频记录1201的视频帧或与该视频帧相关联。也就是说,相关联的快照可以在视频记录1201之外。在任何情况下,相关联的快照提供对跳转游戏运行中所存储的游戏运行的交互式访问,并且允许用户在跳转点1290处开始与跳转游戏运行的交互式运行。

图13a是根据本公开的一个实施方案的先前用于引导参与游戏应用程序的玩家所存储的游戏运行1310的多个输入命令1330的图示,其中输入命令的一部分(例如,序列)用于实现跳转游戏运行的回放部分。具体地讲,所存储的游戏运行1310包括多个快照,至少包括ss-1和ss-2,其中快照包含使得能够在对应于快照捕获的点处实例化游戏应用程序的实例的元数据和/或信息,如先前所述。快照ss-1和ss-2被示出为处于其在玩家的游戏运行1310期间定义捕获点的大致位置处。

另外,所存储的游戏运行1310包括多个输入命令1330。仅出于说明,这些输入命令可包括通过切换、左前按钮、右前按钮、向上、向下、向右、向左发出的方向命令以及由符号(例如,框、三角形、十字形等)定义的其他可选命令。这些输入命令先前用于引导所存储的游戏运行1310。如图所示,在一个实施方案中,输入命令可以在命令之间有或没有周期性间隔的情况下顺序地排序。在其他实施方案中,输入命令可以不排序,并且/或者可以不是顺序的。例如,可以跨不同的控制器同时发出多个输入命令以引导多个对象,其中顺序可能并不重要。

如图13a所示,在游戏运行1310的上下文中定义跳转点1290。例如,对视频帧(例如,视频帧1211)的选择既在游戏运行1310的上下文中又在新近实例化的跳转游戏运行的上下文中定义跳转点1290。例如,跳转点可以在ss-1与ss-2之间定义,并且作为示例,可通过视频记录1201的对应视频帧1211进行选择。更具体地讲,多个输入命令1330包括在ss-1与跳转点1290之间发出的输入命令序列1335。此外,多个输入命令1330包括在跳转点1290与ss-2之间发出的输入命令序列1337。这些序列1335和1337用于实现和描述跳转游戏运行的回放部分,如下文将进一步描述。在ss-1之前和ss-2之后都显示附加输入命令。

对视频记录、更具体地讲视频帧1211的主动或被动选择提供了使用诸如ss-1或ss-2的相关联快照进行的跳转游戏运行的实例化,如先前所述。根据选定的快照,跳转游戏运行将通过输入命令序列正向进行以到达跳转点1290,或者通过输入命令序列倒退以到达跳转点1290。

跳转游戏运行1340示出对于ss-1是用于发起游戏应用程序的实例以对跳转游戏运行1340进行实例化的相关联快照的确定。如图所示,跳转游戏运行1340包括由节段a定义的回放部分和由节段b定义的实况部分。在节段a的回放部分中,跳转游戏运行1340使用来自所存储的游戏运行1310的所保存的输入命令(例如,输入命令序列1335)自动执行ss-1与跳转点1290之间的玩家的游戏运行1310。在这种情况下,输入命令序列1335以正向方式执行以到达跳转点1290。在一个实施方案中,使序列1335的执行超频以快速到达跳转点。在到达回放部分中的跳转点1290之后,从节段a的回放部分转换到节段b所示的实况部分,其中跳转游戏运行1340通过处理来自用户的输入命令而变为实况的,使得用户交互式地引导跳转游戏运行1340。

跳转游戏运行1345示出对于ss-2是用于发起游戏应用程序的实例以对跳转游戏运行1345进行实例化的相关联快照的确定。如图所示,跳转游戏运行1345包括由节段c定义的回放部分和由节段d定义的实况部分。在节段c的回放部分中,跳转游戏运行1345使用来自所存储的游戏运行1310的所保存的输入命令(例如,输入命令序列1337)自动执行ss-2与跳转点1290之间的玩家的游戏运行1310。在这种情况下,输入命令序列1337以反向方式执行以到达跳转点1290。在一个实施方案中,使序列1337的执行超频以快速到达跳转点。在到达节段c的回放部分中的跳转点1290之后,从节段c的回放部分转换到节段d所示的实况部分,其中跳转游戏运行1345通过处理来自用户的输入命令而变为实况的,使得用户交互式地引导跳转游戏运行1345。

在又一个实施方案中,在回放部分期间,当执行跳转游戏运行1345时,可以在单独的窗口(未示出)中显示附加或辅助内容。在一个实施方案中,辅助内容可以覆盖在图像帧上,所述图像帧被生成以显示在回放部分中。例如,辅助内容可包括在回放部分期间执行跳转游戏1345时所示的广告。此外,在另一个实施方案中,辅助内容可以响应于用户输入。例如,辅助内容可以是另一跳转游戏运行。

图13b是根据本公开的一个实施方案的示于窗口1390中的跳转游戏运行中的图像帧1311的图示,其中对视频记录的视频帧的选择实例化游戏应用程序的实例以基于在玩家的游戏运行期间捕获的相关联快照执行跳转游戏运行,使得跳转游戏运行可由请求用户运行。如图所示,图像帧1311大致对应于与视频记录1201的视频帧1211相关联的跳转点1290。也就是说,图像帧1311示出熊通过转弯并走向角色308而有攻击性地行动。这样,用户能够从跳转游戏运行的实况部分中大致对应于跳转点1290的图像帧1311大致开始以交互方式引导窗口1390中所示的跳转游戏运行。

在各种实施方案中,窗口1390可独立于窗口300或与该窗口同时显示,其中窗口300示出参与游戏应用程序的用户的当前游戏运行。以这种方式,跳转游戏运行可以与用户的当前游戏运行同时显示(例如,在窗口1212所示的窗口叠加中),或者跳转游戏运行可以独立地显示,例如以全屏模式。在实施方案中,用户的当前游戏运行和跳转游戏运行可以是相同的游戏应用程序或不同的游戏应用程序。

在一个实施方案中,跳转游戏运行单独记录并存储在视频记录中。另外,在执行跳转游戏运行期间的任何点处,可以在跳转游戏运行期间捕获多个快照。例如,在实况跳转游戏运行中捕获快照ss-00,如进度条1395所示,其中以虚线方式示出快照ss-00右侧的未来/预期进度。以这种方式,任何用户都可经由所捕获的快照体验跳转游戏运行,并通过新近实例化的二次跳转游戏运行来体验。具体地讲,在跳转游戏运行期间捕获的选定快照可用于实例化游戏应用程序的实例,以基于在主要跳转游戏运行期间捕获的选定快照来执行二次跳转游戏运行。以这种方式,用户能够体验由同一用户创建的任何先前的跳转游戏运行,或者可能能够体验其他玩家所存储的跳转游戏运行。

图14是根据本公开的一个实施方案的在跳转游戏运行期间呈现的输入命令序列的图示,所述跳转游戏运行是基于在与参与游戏应用程序的玩家的游戏运行期间捕获的快照实例化的。通过显示输入命令序列,可以向用户提供附加功能。在一个实施方案中,所显示的输入命令序列可以提供帮助将用户引导到跳转点的引导特征。在另一个实施方案中,所显示的输入命令序列可用于重影的目的,其中例如用户尝试以正确且相同的定时模拟输入命令序列。可提供运行分数1460,其指示用户能够如何接近地模拟原始游戏运行。

如图所示,窗口1410经由包括图像帧1405在内的一个或多个图像帧显示跳转游戏运行。在一个实施方案中,跳转游戏运行的回放部分显示在窗口1410中。例如,对象1420被显示为跳转游戏运行的回放部分的可执行内容,其中输入命令序列1450被自动执行以回放玩家的游戏运行直到跳转点,在该跳转点后跳转游戏运行通过处理来自请求用户的输入命令而变为实况的。对象1420最初在玩家的游戏运行中生成。还示出了用于引导玩家的游戏运行的输入命令序列1450。序列1450可以有序序列提供,其中输入命令以客户端装置生成它们的顺序呈现。例如,序列1450覆盖在跳转游戏运行的回放部分期间生成的多个图像帧中的每一个上。进度条1430上的定位器1435指示对应于图像帧1405的当前输入命令(例如,向下)。在一个实现方式中,当输入命令序列1450从右向左或从左向右滚动时,定位器1435是静态的。在另一个实现方式中,定位器1435还相对于输入命令序列1450移动,只要定位器1435给出当前显示的图像帧1405与对应的输入命令之间的关系即可。还支持其他实现方式,诸如以自上而下的方式显示序列1450等。

在一个实施方案中,请求用户可以模拟输入命令序列以引导与对应图像帧中的原始对应对象一起呈现的重影对象。具体地讲,重影对象1425响应于多个模拟的输入命令(未示出)。重影对象1425覆盖在显示对象1420的图像帧1405上,并且可以不干扰对象1420或图像帧1405中的其他对象的方式呈现。模拟命令在用户的客户端装置处生成,并尝试遵循输入命令序列1450。根据模拟命令遵循输入命令序列1450的接近程度,将确定重影对象1425的位置和移动。模拟命令越接近序列1450,重影对象1425与对象1420之间越紧密地对准。

可基于在命令、命令的顺序和/或命令的定时等方面,模拟命令遵循输入命令序列1450的接近程度来生成得分1460。得分可以叠加在图像帧1405上。出于说明,图15a至图15e示出在用户提供遵循输入命令序列1450的模拟命令时,在各个图像帧中对象1420与重影对象1425之间的关系和/或对准。如图所示,在图像帧的整个进度中,对象之间的对准变得更紧密。图15a中的图像帧1501示出对象1420与重影对象1425之间的粗略对准(即,未紧密对准),图15e中的图像帧1505示出对象之间的更精细对准(即,紧密对准)。

在另一个实施方案中,输入命令序列1450以教程的形式呈现。也就是说,输入命令指示用户如何进行游戏运行的特定部分。例如,在跳转游戏运行期间,对回放部分的控制实际上可以由用户引导,而不是自动回放原始游戏运行。在教程中,重影对象1425可以或可以不在图14中示出。这样,在回放部分期间,可以处理来自客户端装置的输入命令并用于至少控制对象1420。显示输入命令序列,其可以帮助将用户引导至跳转点。此外,为了使跳转游戏运行进入跳转点,来自客户端装置的输入命令可能在处理方面受到限制,其中例如,受限制的输入命令不遵循朝向跳转点的路径,并且可能不可避免地远离跳转点引导。这样,可以提供输入命令作为对用户的引导(例如,通过输入命令序列)以使跳转游戏运行进入跳转点。

图16是根据本公开的一个实施方案的用于将玩家引导到跳转游戏运行中的跳转点的特征的图示,所述跳转游戏运行是基于在与参与游戏应用程序的玩家相关联的所存储游戏运行期间捕获的快照实例化的。如图所示,可以显示输入命令序列1620,其在执行时帮助沿导向跳转点的方向引导角色308。例如,图像帧1610与在与视频帧1211(充满攻击性的熊朝着角色308转弯并走向该角色)相关联的跳转点1290之前发生的快照图像360d紧密对应。用户可以选择从对应于视频帧1210(示出洞穴前面的熊)的ss-1之前发生的点开始跳转游戏运行,例如当角色308穿过森林时。引导特征将通过显示玩家在所存储的游戏运行中使用的输入命令序列1620来帮助将角色308导向到跳转点1290。另外,可呈现诸如箭头1630(视觉辅助)的辅助以帮助将角色308指向正确的方向(例如,穿过河流)。

图17是示出根据本公开的一个实施方案的用于游戏的方法中的步骤的流程图1700,并且更具体地讲,允许用户基于在游戏运行期间生成和捕获的快照跳转到参与游戏应用程序的玩家所存储的游戏运行中的方法。流程图1700可以由通过网络150进行通信的游戏服务器205和客户端装置10的各种模块来实现。具体地讲,流程图1700示出提供对参与游戏应用程序的玩家所存储的游戏运行的交互式访问的方法中的步骤。更具体地讲,流程图1100的方法公开了基于在游戏运行期间生成和捕获的快照使用户跳转到所存储的游戏运行中的方法。流程图1100示出了出于生成在客户端装置200处通过网络150显示的信息的目的在基于云的游戏系统201(例如,gcs201)的游戏服务器205侧所涉及的操作的过程和数据流。

在操作1710处,该方法包括基于在玩家的游戏运行中的第一点处捕获的发起快照来发起游戏应用程序的实例。游戏应用程序的实例对跳转游戏运行进行实例化。发起快照包含使得能够在游戏运行中对应于捕获发起快照的点处实例化和/或发起游戏应用程序的实例的元数据和/或信息。

发起快照可通过游戏运行的视频记录进行选择。在一个实现方式中,视频记录是实况流式视频,使得所存储的游戏运行被认为是同时实时存储的实况游戏运行。视频记录中的视频帧可以与在玩家的游戏运行期间生成和捕获的一个或多个快照相关联,所述快照包括在玩家的游戏运行中的第一点处捕获的发起快照。例如,快照包括快照图像,该快照图像包括由与玩家的游戏运行相关联地执行的游戏应用程序的第一实例生成的渲染图像。快照图像对应于与玩家的游戏运行中的点相对应的视频帧,并且可用于从该点发起跳转游戏运行。

在操作1720处,该方法包括访问与发起快照相关联的输入命令序列,其中输入命令序列先前用于引导所存储的玩家的游戏运行。

在操作1730处,该方法包括基于用于在用户的客户端装置处进行渲染的输入命令序列在游戏应用程序的实例处生成多个图像帧。具体地讲,所述多个图像帧从游戏运行中的第一点回放游戏运行。此时,跳转游戏运行的回放部分正在执行。在一个实施方案中,执行回放部分,直到到达跳转点,该跳转点可通过对视频记录的视频帧的主动或被动选择来定义。

在另一个实施方案中,在回放部分期间主动定义跳转点。具体地讲,在操作1740处,该方法包括接收发起请求以从多个图像帧中的选定图像帧开始跳转游戏运行的实况部分。例如,当在回放部分期间显示多个图像帧时,与第一图像帧的主动或被动交互提供了开始实况部分的发起请求,之后跳转游戏运行通过处理来自用户的客户端装置的输入命令而对于用户变为实况的。此外,停止回放部分,使得在实例化跳转游戏运行的游戏应用程序的实例处阻止执行尚未执行的序列中剩余的输入命令。以这种方式,可以在回放部分期间选择跳转点,使得可以在回放部分期间重新定义先前定义的跳转点(经由视频记录的视频帧进行选择)。例如,用户可能急切地想要在跳转游戏运行中开始主动交互。在另一个实现方式中,可通过与跳转游戏运行的回放部分的交互来初始定义跳转点。

配套应用程序

一般而言,本公开的各种实施方案描述了用于游戏的系统和方法,其包括实现支持第一用户的游戏运行的配套应用程序。配套应用程序提供与多个用户的游戏运行相关的信息,所有用户同时以单玩家或多玩家模式运行同一游戏应用程序。所提供的信息与用户的当前游戏运行同步,使得信息在第一用户的游戏环境的上下文中是相关的。以这种方式,可以在配套应用程序界面内提供导航辅助,该配套应用程序界面显示一个或多个角色在游戏应用程序的游戏世界中的位置,其中角色在用户的游戏运行中被实例化。例如,可以在界面中提供导航辅助(例如,指针),其向第一用户提供对游戏应用程序内的对象位置的引导,其中对象可以是在好友的游戏运行中向第一用户实例化的角色、游戏世界或宇宙中的感兴趣的点、boss、有趣的游戏特征等。例如,界面可以提供第一用户的第一角色相对于同时运行游戏应用程序的其他用户的其他角色的位置的位置。配套应用程序还可以提供指导以帮助第一用户完成目标,其中指导可以基于第二用户的游戏运行,或者其中指导可以直接由第二用户提供。例如,指导可以示出控制器输入,所述控制器输入通常或直接帮助实现游戏应用程序内的目标或任务(例如,击败boss)。

因此,本公开的实施方案提供了游戏应用程序的额外用途。实施方案提供了益处和优点,包括允许通过提供与多个游戏运行相关的信息以在用户之间流传(例如,通过对应的配套应用程序界面为每个用户提供),而使已不受欢迎的旧应用程序获得新生。这为最初针对单玩家体验开发的游戏应用程序提供了多玩家体验。例如,第二用户能够通过配套应用程序为第一用户提供有用信息以完成目标(例如,攻克游戏应用程序的困难部分),或者将第一用户引导到游戏世界的有趣部分,或者提供一种途径以在两个用户同时运行游戏应用程序时实现两者之间的通信,从而创建多玩家游戏体验。以这种方式,实现了新形式的多玩家游戏体验,所述多玩家游戏体验提供给一个用户以参与另一个用户的游戏运行。例如,每个用户可以对其他用户的游戏运行进行(例如,文本、音频等)评论(例如,鼓励、搅乱、羞辱、庆祝、嘲讽等)。另外,第二玩家可通过将角色叠加插入游戏运行中而直接参与第一用户的游戏运行,其中第二用户直接控制与第一用户的游戏运行相关联的游戏环境中的插入角色。又其他实施方案提供了上述成果,并提供了额外的益处和优点,包括将在游戏云系统(gcs)中独立执行的多个用户的游戏运行集成在单个游戏世界(例如,第一用户的游戏世界)中。本公开的又其他实施方案提供了上述成果,并提供了进一步的益处和优点,包括在游戏应用程序的游戏运行中为用户提供更好的用户体验。例如,用户不需要奋力通过游戏应用程序的困难部分,并且可经由配套应用程序来寻求其他用户的帮助(例如,逐步命令指令、成功游戏运行的视频记录等),或者可以直接找到(例如,通过来自其他用户的信息)游戏应用程序的有趣部分,而不必随机发现这些部分。另外,用户可以新的方式运行新旧游戏应用程序,该新方式集成了同时运行单个游戏应用程序并且可能独立运行的多个用户的游戏运行。

提供支持用户的游戏运行的配套应用程序的实现的本公开实施方案可以在先前说述的图1至图2的系统内实现,所述配套应用程序包括与同时运行游戏应用程序的多个用户的游戏运行相关的信息。

图18示出根据本公开的一个实施方案的用于实现在游戏云系统(gcs)内执行的多个用户的游戏应用程序的同时游戏运行以及用于实现支持第一用户的游戏运行的配套应用程序的系统图,以及用于实现支持第一用户的游戏的配套应用程序的系统图,其中配套应用程序(也称为“配套界面”或“配套应用程序界面”)提供与包括第一用户在内的多个用户的游戏运行相关的信息。该信息可以基于在众包环境中运行同一游戏应用程序的多个用户的当前和/或过去的游戏运行,使得可通过观察和/或分析多个游戏运行来确定信息。在一个实施方案中,配套界面中提供的信息可以与同时运行同一游戏应用程序的用户的游戏运行相关(例如,信息与同时运行游戏应用程序的用户的好友的游戏运行相关,其中所述信息提供好友之间的实时交互),其中所述信息提前用户的游戏运行或提供增强的用户体验。在另一个实施方案中,第一用户独立地运行游戏应用程序,并通过配套界面接收信息,该信息有助于推进第一用户的游戏运行或者用于提供增强的用户体验。

如图18所示,多个用户可以访问在gcs1800中存储和/或执行的多个游戏应用程序(例如,视频游戏)(例如,g1、g2…gn)。具体地讲,用户1-3均通过网络1820访问gcs1800。例如,用户1经由客户端装置1815通过网络1820访问gcs1800,其中客户端装置可以是至少具有存储器和处理器模块的任何类型的计算装置,该处理器模块被配置用于为gcs1800提供网络功能,所述gcs诸如瘦客户端(在gcs执行游戏应用程序的情况下)或允许部分或完全执行(例如,本地执行)游戏应用程序的游戏控制台。在一个实现方式中,客户端装置1815被配置用于请求通过网络1820访问游戏应用程序,并且用于渲染由gcs1800执行并传送到用户1的显示装置1813的游戏应用程序的实例。客户端装置1815可以从用于向游戏应用程序的实例提供命令的各种类型的输入装置(诸如游戏控制器1812、平板计算机1811、键盘,由摄像机捕获的手势、鼠标、触控板等)接收输入。第二计算装置1811(例如,平板计算机等)为用户1提供对支持用户1的游戏运行的配套应用程序界面的访问,该配套应用程序具有与多个用户的游戏运行相关的附加信息,所有用户同时运行同一游戏应用程序。用户2和用户3具有类似的客户端装置、输入装置和辅助计算装置的配置,其中用户2与客户端装置1817相关联,并且用户3与客户端装置1819相关联。

更具体地讲,用户1-3中的每一个访问在gcs1800中执行的特定游戏应用程序(指定为“g1”)的对应实例。以这种方式,用户1-3同时运行游戏应用程序g1,但不一定在多玩家游戏环境中运行。例如,用户1-3中的每一个可以单玩家模式运行游戏应用程序g1,但是可通过配套应用程序界面为其他用户提供游戏运行信息。如图所示,用户1在地理上位于如世界地图1801所示的美国西部,用户2在地理上位于澳大利亚,并且用户3位于日本。

在一个实施方案中,gcs1800提供与图2的gcs201类似的功能,但以不同的和/或更详细的配置提供。一般而言,gcs1800可以是通过网络1820运行以支持多个用户的云计算系统。gcs1800包括控制由gcs1800提供的服务的分发的游戏服务器网关1830、一个或多个数据中心(例如,位于美国洛杉矶的数据中心1831,位于美国旧金山的数据中心1832,以及位于日本的数据中心1832)以及支持数据中心的游戏服务器(例如,多个游戏服务器1841支持l.a.数据中心1831,多个游戏服务器1843支持旧金山数据中心1832,多个游戏服务器1845支持日本数据中心1833)。多个1841、1843和1845中的游戏服务器可以与图1至图2中初次介绍的游戏服务器205类似地配置。具体地讲,游戏服务器网关1830能够确定哪个数据中心以及可能哪个数据中心中的哪个游戏服务器(gs)应处理来自对应用户的服务请求。例如,除了其他参数之外,网关1830可以将服务质量(qos)、为请求用户提供或约定的带宽、请求用户的地理位置、支持用户的数据中心的地理位置和/或所请求的游戏应用程序(即,预先配置或预加载某些游戏服务器以处理所请求的特定游戏应用程序)考虑在内,以便确定如何将后端游戏服务器支持分配给请求用户。这些信息中的一些可经由存储在数据库1835中的用户配置文件来访问,其中用户配置文件可包含与约定的qos、带宽支持、用户的地理位置等相关的信息。如图所示,网关1830已将用户1分配给l.a.数据中心1831的游戏服务器1842,已将用户2分配给旧金山数据中心1832的游戏服务器1844,并且已将用户3分配给日本数据中心1833的游戏服务器1846。在一个实现方式中,网关1830将用户分配给特定数据中心,并且数据中心处理向对应游戏服务器进行的请求分发。

如图所示,游戏服务器网关1830可以从数据库1835访问用户1-3的用户配置文件,以确定提供配套应用程序特征所需的附加信息,例如当前正在运行的游戏应用程序、用于匹配目的的好友列表等。例如,用户1的用户配置文件1839可以指示用户1具有已激活的主显示器和第二屏幕,其中第二屏幕被配置为显示配套应用程序界面,如下文将进一步描述。另外,用户配置文件数据库1835可包含来自其他数据库(诸如社交网络数据库1850)的信息,以填充对应用户的用户配置文件中的好友列表,以便访问来自对用户1有用并通过配套应用程序界面提供的那些好友的游戏运行的信息。

图19示出根据本公开的一个实施方案的用于生成和实现支持第一用户的游戏运行的配套应用程序的系统的框图,其中配套应用程序提供与包括第一用户在内的多个用户的游戏运行相关的信息。该信息可以基于运行同一游戏应用程序的多个用户的当前和/或过去的游戏运行。以这种方式,可以在游戏运行期间发现众包内容,其中内容可以有助于其他玩家运行同一游戏应用程序,或者为这些其他玩家提供增强的用户体验。例如,在一些实施方案中,用于实现配套应用程序的部件可包括在先前在图1中介绍的游戏服务器205的游戏处理器210中,或者包括在被配置为在游戏服务器205内提供配套应用程序的单独处理器中。此外,游戏服务器205包括在图2的游戏云系统(gcs)201中,使得gcs201可配置为在第一用户运行游戏应用程序的同时为第一用户提供配套应用程序特征。在另一个实施方案中,用于实现配套应用程序的部件可包括在用户本地的游戏处理器中。

具体地讲,游戏处理器210包括被配置为实例化游戏应用程序的实例的各种部件。在一些实施方案中,游戏应用程序的实例被实例化为跳转游戏运行,并且基于在运行或参与游戏应用程序的玩家的先前游戏运行期间捕获的快照(例如,经由时间线或视频记录访问)。先前在图1中介绍的游戏处理器210包括游戏执行引擎211、快照生成器212、时间线生成器213、节点图生成器214、ai叠加模块215和跳转游戏执行引擎216。此外,游戏处理器210可包括先前在图10中介绍的附加部件,诸如视频播放器1010、回放引擎1015、跳转游戏输入管理器1020、回放起点选择器1025。为简洁和清楚起见,并非所有先前介绍的部件都示于图19中。另外,如图19所示,游戏处理器210还包括配套应用程序生成器1940和雷达信息生成器1950,这两者用于提供配套应用程序特征。游戏处理器210的一个或多个部件在单独或组合使用时可配置为提供支持第一用户的游戏运行的配套应用程序的实现,其中配套应用程序包含与以单玩家或多玩家模式运行同一游戏应用程序的多个用户的游戏运行相关的信息。

具体地讲,游戏服务器205包括游戏处理器模块210,该游戏处理器模块提供对多个交互式视频游戏或游戏应用程序的访问。例如,游戏处理器模块210可被配置用于执行游戏应用程序的实例(例如,在图2的游戏执行引擎211上)并且用于传送渲染图像以响应于与第一用户的游戏运行相关联的第一用户的对应客户端装置的输入命令而显示在第一用户的客户端装置处。

此外,游戏服务器205可配置为实现提供支持第一用户的游戏运行的特征的配套应用程序。例如,配套应用程序生成器1940包括好友引导模块1920、好友匹配引擎1910、指令模块1930、通信会话管理器1925、指导模块1915、好友对象叠加模块1935和雷达信息生成器1950。配套应用程序提供界面,该界面使得第一用户能够访问在运行游戏应用程序时通常有助于第一用户的游戏运行的信息。该信息基于第一用户和其他用户(例如,第一用户的好友)的游戏运行。该信息可包括导航指针、有趣的游戏特征及其位置、指令、指导、雷达测图界面、对诸如快照信息和跳转游戏运行实例化等其他特征的访问等。

具体地讲,好友匹配引擎1910被配置为发现第一用户的好友(例如,通过访问社交网络的配置文件信息),并且部分地基于用户配置文件数据库1940中包含的信息,将用户与当前正在与第一用户同时运行游戏应用程序的一组好友进行匹配。通信会话管理器1925被配置为建立用于传送和支持配套应用程序的通信信道,其中配套应用程序可以显示在辅助装置上,该辅助装置不同于用于显示在第一用户的游戏运行期间生成的渲染图像并与其交互的主要装置。

配套应用程序生成器1940包括被配置为生成雷达测图的雷达信息生成器1950,该雷达测图示出第一用户感兴趣的各种对象在游戏应用程序的游戏世界中的位置。具体地讲,对象生成器1952被配置为创建与第一用户和其他用户的游戏运行相关联的对象并将其定位到第一用户的雷达测图中。这些对象包括与第一用户的游戏运行相关联的角色的位置以及与第一用户的好友的游戏运行相关联的其他角色。以这种方式,第一用户能够导航到他或她的好友当前占据的游戏世界区域,使得他们可以参与某种形式的多玩家游戏。另外,雷达信息生成器包括世界轮廓生成器1951,该世界轮廓生成器被配置为创建游戏世界的至少一部分的轮廓并将其集成到雷达测图中。此外,雷达信息生成器包括方向取向模块1953,该方向取向模块被配置为经由雷达测图示出第一用户在游戏世界中的取向。

配套应用程序生成器1940还包括指令模块1930,该指令模块被配置为生成提供有关游戏应用程序的可能困难部分的信息或在该困难部分帮助第一用户的指令以供显示。例如,指令模块1930可以提供关于如何完成目标或如何完成任务等的指令。所述指令可以响应于来自第一用户通过配套应用程序界面的辅助请求而生成,并且可以基于其他用户的游戏运行。类似地,指导模块被配置为提供帮助第一用户的指导信息以供显示,或者可包括从另一用户传送的现场指导,其中指导可以基于其他用户的游戏运行。指导可以响应于来自第一用户的辅助请求而生成。此外,配套应用程序生成器1940包括由第一用户的好友控制的好友引导模块。例如,方向对象可以指示第一用户的角色在游戏世界中采取的正确方向,其中方向对象由好友控制。出于说明引导模块1920的目的,好友可以帮助第一用户导航boss所在的游戏世界区域。此外,配套应用程序生成器1940可包括好友对象叠加模块1935,该好友对象叠加模块被配置为将第一用户的好友的角色叠加和/或插入到与第一用户的游戏运行相关联的渲染图像中。以这种方式,第一用户和好友可以参与可能最初被设计为仅支持单玩家模式的游戏应用程序的多玩家游戏模式。

通过对游戏服务器205的各种模块的详细描述,现在将结合流程图2000对根据本公开的一个实施方案的用于游戏的方法进行描述,该方法包括实现支持第一用户的游戏运行的配套应用程序。具体地讲,流程图2000示出提供与一个或多个用户(例如,第一用户和第一用户的好友)的游戏运行相关的相关信息的方法中的步骤,并且其中游戏运行与特定游戏应用程序同时发生。通常,该信息帮助第一用户理解游戏应用程序,诸如区域、感兴趣的点、在完成目标或任务时有用的信息,所有这些都在游戏应用程序的游戏世界中。其他信息可以帮助第一用户定位好友在游戏运行中的角色,使得第一用户经由配套应用程序参与与其他用户的交互式游戏会话(例如,指导、通信、角色叠加等)。

该方法中的操作2010包括与第一计算装置建立第一通信信道,该第一计算装置与第一用户相关联,该第一通信信道被配置用于与第一用户的第一游戏运行相关联地实现游戏应用程序的第一实例。通信信道例如通过诸如互联网的网络实现,并且被配置为传送如由在游戏云系统的游戏服务器处执行的游戏应用程序的实例所生成的渲染图像以显示在第一用户的客户端装置处。通信信道还被配置用于将来自客户端装置的输入命令传送回游戏服务器,以引导游戏应用程序的实例的执行。以这种方式,实现与游戏应用程序相关联的第一用户的游戏运行。

该方法中的操作2020包括与第二计算装置建立第二信道,该第二计算装置与第一用户相关联。第二信道可以配置在用于建立第一信道的相同网络(例如,互联网)内,或者可以配置在不同网络(例如,移动电话网络)内。例如,第二信道可以为具有视频和音频功能的平板计算机提供通信支持。由于游戏服务器被配置为控制与第一用户相关联的游戏应用程序的实例的执行以及通过第二信道分发的信息和/或数据,因此可通过经由第二信道实现的特征来增强第一用户的游戏运行。例如,图19的通信会话管理器1925可被配置为建立和维护第二信道。

该方法中的操作2030包括生成界面,该界面包含与第一用户的第一游戏运行和第二用户的第二游戏运行相关的信息,这两个用户同时运行游戏应用程序。在其他实施方案中,该信息与除第一用户之外的多个用户的游戏运行相关。界面提供与第一用户的当前游戏运行相关的当前信息。以这种方式,界面能够基于其他多个用户的游戏运行将信息与第一用户的游戏运行连接。

在操作2040处,该方法包括将界面和信息通过第二信道传送到第二计算装置以供显示。更具体地讲,界面与第一用户的第一次游戏运行同时传送,使得通过界面提供的信息支持第一游戏运行。例如,该信息可包括帮助第一用户在游戏应用程序中进展的有用信息(例如,以视觉提示、文本指令、导航提示等的形式)。

多个用户的游戏运行提供可用于确定和/或观察信息的众包内容,其中该信息提供辅助以推进用户的游戏运行并且/或者提供增强的用户体验。在一个用例中,该信息基于同时运行游戏应用程序的多个相关用户(例如同时运行游戏应用程序并通过相应的配套界面彼此交互的多个好友)的游戏运行。也就是说,配套界面提供用户之间的实时交互。在另一个用例中,该信息基于多个用户的当前和/或过去的游戏运行,其中用户可以或可以不与通过对应的配套界面接收信息的第一用户相关。例如,第一用户可以独立地运行游戏应用程序,或单独运行。在单人情况下,信息(例如,帮助、指导等)可以记录的视频、图像和/或文本内容的形式传送。该信息可以不是实时生成的,并且可以由与游戏开发者相关联的(例如,由游戏发行商、控制台制造商等雇用的)某人生成,其作用是为用户的利益生成通过相应的配套界面传达的信息。另外,第三方(基于利润、非基于利润等)可以自己为了游戏公众的利益生成信息。此外,该信息可以仅为了第一用户的好友或组中的好友的利益由该好友生成。此外,该信息可以由运行游戏界面的其他相关和/或不相关的用户生成(例如,众包)。

如先前所述,用户生成的内容(例如,呈现在配套界面中的信息)由第一用户的好友或游戏社区中的任何其他人生成。众包内容可通过配套界面以任意数量的方式呈现给第一用户。例如,可通过流行度因子确定所显示的信息,使得最流行的(例如,基于视图的数量)信息呈现在配套界面上。在另一个实施方案中,可通过投票确定所显示的信息(例如,用户可能能够提供关于信息的反馈,例如通过拇指向上/向下消息)。在一个实施方案中,可通过评论分数(即,由信息的观看者提供的星级评定)来确定所显示的信息。在又其他实施方案中,可基于提供在配套界面中提供的信息的那些人的体验(例如,用户生成已运行游戏应用程序的内容的小时数)来过滤所显示的信息。在其他实施方案中,所显示的信息可通过定义的组(例如,与第一用户的好友关系)进行过滤。这样,可以从运行游戏应用程序的用户社区生成的众多众包内容中过滤配套界面中提供的信息。以这种方式,所显示的信息更有价值并且对用户更有益。

在一个实施方案中,可用于显示在配套界面中的众包内容由对应的用户(例如,第一用户)过滤。例如,可以向用户呈现可滑动条(例如,在对应的配套界面中),该可滑动条允许用户选择在配套界面中显示哪种类型的信息。在一个实施方案中,可滑动条用于定义用户角色,其中信息根据角色显示在对应的配套界面中。出于说明,作为专家游戏者的用户可能会对显示在对应配套界面中的信息使用极端过滤器,使得显示很少信息或不显示信息。另一方面,在游戏中相对缺乏经验、不能良好地运行游戏应用程序并且/或者运行时间有限(例如,希望快速完成游戏应用程序或非常繁忙)的用户可能会使用滤光器以在对应的配套界面中显示尽可能多的相关信息。

举例说明如何为了过滤众包内容的目的而定义用户的各种示例性角色包括但不限于以下:纯粹主义玩家、硬核玩家、完美主义玩家、社交玩家、休闲玩家和earnestterribad。纯粹主义玩家可能不喜欢演练/指南,对原始游戏/故事的任何变化很敏感,并且通常只运行来自特定发行商/特许经营/类型的游戏。纯粹主义玩家想要/需要只能通过运行游戏应用程序解锁的额外材料,但可能对游戏的结果/情节(例如,游戏发行商/开发者提供的复活节彩蛋)没有任何影响。硬核玩家在所有平台上运行所有游戏,可能不会完全反对使用指南/演练(与纯粹主义玩家相反),在没有完成游戏应用程序中的所有内容的情况下为诚信运行到最终(例如,只是想完成),并且寻求优化游戏应用程序完成速度的信息。硬核玩家需要视频演练,和/或揭示能够跳过某些部分的快捷方式的专业提示或谈话,或者关于如何快速到达某一部分的结尾的提示。完美主义玩家可以进一步按类型定义,包括但不限于:项目类型需要获得游戏应用程序中的每个项目或最佳项目;任务类型需要完成每个可能的任务/故事情节(例如,lore-ist);探索类型需要知道并搜索所有复活节彩蛋,类别类型将使用不同的构造/类别(例如,简单级别、困难级别等)回放游戏。完美主义玩家需要可能由开发者定义的成就系统(例如,开发者/发行商提供特定于应用程序的成就)。社交玩家运行或尝试游戏应用程序,因为他们的好友正在玩游戏,对运行游戏应用程序的好友的社交互动(例如,聊天)更感兴趣,对公会/部落感兴趣,并且通常活跃于论坛中。社交玩家需要可通过与一个或多个好友的多玩家体验来增强的单玩家游戏(例如,通过配套界面促进的协作多玩家体验),更喜欢消息传递功能(例如,消息平台),利用好友列表,并实现游戏内聊天。休闲玩家喜欢运行游戏应用程序且只想经历大部分内容(例如,不在意他们是否完成游戏应用程序),并且玩游戏以获得乐趣(例如,如果没有乐趣,则将退出游戏应用程序)。休闲玩家很可能会使用演练/指南来快速完成游戏应用程序,并且不会因为他们希望获得尽可能多的信息而考虑剧透。earnestterribad通常在运行游戏应用程序时非常糟糕,但真的很喜欢玩游戏,经常喜欢通过游戏应用程序观看别人玩游戏,往往需要很多关于游戏应用程序的下一步操作的辅助/帮助/提示,并且欢迎来自好友的帮助(例如,提供指令)以指示earnestterribad运行游戏应用程序所需的各种构造/技术(例如,如何运行)。

在一个实施方案中,在查看配套界面中的特定信息之后,可以为用户提供允许用户提供关于该信息的反馈的界面。例如,界面可实现评级系统,例如数字评级(例如,5级中的4级)、星级(5颗星中的3颗星)或二进制评级系统(例如,拇指向上/向下)。该评级信息可用于过滤呈现给其他用户的众包内容,如先前所述。

在一个实施方案中,所述其他用户包括第一用户的好友。例如,该方法可包括访问第一用户的第一用户配置文件。第一用户配置文件包含与第一用户相关的信息,并且可包括第一用户当前正在运行的游戏应用程序、第一用户的好友、是否启用配套应用程序、如何向对应的用户显示配套应用程序界面等。可以访问第一用户配置文件以确定第一用户的同时运行游戏应用程序的多个好友。可以部分地通过访问和交叉引用一个或多个社交网络(例如,社交媒体提供器240)中的用户的配置文件来确定用户的好友,以增强图18的游戏云系统gcs1800的用户的网络的用户配置文件(例如,与好友关联)。此外,由于gcs1800支持游戏应用程序的多个实例的实例化和执行,因此对应的用户是已知的并且包括在存储在数据库1850中的用户配置文件中。以这种方式,可以确定第一用户的当前也在运行游戏应用程序的好友。例如,可以访问用户2(第一用户的好友)的用户配置文件以确定用户2当前是否也在运行游戏应用程序。

例如,图21a至图21c示出根据本公开的实施方案的第一用户(例如,用户1)和第一用户的两个好友(例如,用户2和用户3)的游戏运行。如图所示,与用户1相关联的本地游戏系统包括客户端装置2015、显示器2013和控制器2012,该控制器支持用户1的与通过对应的第一通信信道在游戏云系统(gcs)上的游戏应用程序的实例一样执行的游戏运行,如先前至少结合图18所述。第二装置(例如,平板计算机)2011通过对应的第二通信信道提供配套界面,并得到gcs的支持。另外,对于用户2,本地游戏系统包括客户端装置2105、显示器2103和控制器2102,该控制器支持用户2的与通过对应的第一通信信道在gcs上的游戏应用程序的实例一样执行的游戏运行,如先前至少结合图18所述。第二装置(例如,平板计算机)2101通过对应的第二通信信道提供配套界面,并得到gcs的支持。另外,对于用户3,本地游戏系统包括客户端装置2125、显示器2123和控制器2122,该控制器支持用户3的与通过对应的第一通信信道在gcs上的游戏应用程序的实例一样执行的游戏运行,如先前至少结合图18所述。第二装置(例如,平板计算机)2121通过对应的第二通信信道提供配套界面,并得到gcs的支持。

所有三个用户1-3同时运行同一游戏应用程序g1,诸如由sonycomputerentertainment(sce)发行的“godofwar”系列的游戏版本中的一者(故事情节围绕战士kratos,他进入了神话世界,并且想要报复这个世界,其中kratos最初被战神ares操控,杀死了他的妻子和女儿)。例如,图21a至图21c示出根据本公开的一个实施方案的如对应显示器中所示的用户1-3的游戏运行的当前场景,并且其中游戏运行示出在游戏应用程序的进度中的不同级别。具体地讲,图21a示出在显示器2013的窗口2017中的用户1(例如,第一用户)的游戏运行,其中在演示区域或平台中看到kratos。图21b示出在显示器2103的窗口2107中的用户2(例如,第二用户,也称为第一用户的第一好友)的游戏运行,其中kratos与主神zeus面对面,zeus在ares死于kratos之手后策划了新战神kratos的死亡。图21c示出在显示器2123的窗口2127中的用户3的游戏运行,在其中可以看到kratos参与了战斗。

用户1-3可以单玩家模式或多玩家模式运行。此外,第一用户(例如,用户1)启用了配套应用程序,该配套应用程序使得能够从所有用户1-3的游戏运行中收集和分发信息,以有利于第一用户的游戏运行。另外,配套应用程序可包括第一用户与一个或多个其他用户之间的通信,以便为了第一用户的游戏运行而分发信息,从而实现以第一用户的游戏运行为中心的某种形式的多玩家参与(例如,提供与第一用户的游戏运行相关的辅助)。

另外,第一用户可以使用配套界面来与一个或多个好友共享内容。由于第一用户的正在运行游戏应用程序的好友是可发现且已知的,并且好友的位置在游戏环境中是已知的,因此配套界面可被配置为向用户建议和/或使用户能够与一个或多个好友共享信息。例如,可以向第一用户呈现消息,例如“你的朋友gary现在正在玩‘战神’级别。你想通过与他分享这个视频(例如,教程、第一用户的游戏运行等)来帮助他吗?”

图22a至图22d示出配套应用程序界面的各种实施方案。例如,图22a示出雷达测图,图22b示出他们的游戏运行中的第一用户(例如,用户1)的好友,图22c示出被提供用于帮助击败boss的指令,并且图22d示出为第一用户提供导航辅助的引导特征。

更具体地讲,图22a示出根据本公开的一个实施方案的支持运行游戏应用程序的第一用户的游戏运行的配套应用程序界面2200a,诸如在图18和图21a至图21c中介绍的第一用户。界面2200a包括雷达测图2210a,该雷达测图示出与第一用户(例如,用户1)的游戏运行相关联的第一角色相对于游戏应用程序的游戏世界中其他对象的位置的位置,其中在第一用户(例如,用户1)和第二用户(例如,用户1的好友)的游戏运行中生成对象。如图所示,用户1的第一角色位于由同心圆表示的雷达测图2210a的中心2205。中心2205可被放大和变暗以表示第一角色的位置。另外,在雷达测图2210a上的多个位置处示出多个感兴趣的对象。例如,用户2的角色对象的位置2207在中心2205的北侧;boss角色的位置2204在中心2205的北侧,但比用户2的角色对象更近;感兴趣的点(poi)的位置2206大致在中心2205的东侧;另一个poi的位置2203大致在中心2205的南侧,并且用户3的角色对象的位置2202大致在中心2205的西南侧。图22a所示的对象仅出于举例说明而提供,并且在实施方案中,可以在界面2200a中提供其他对象(要完成的任务的位置)。

在一个实施方案中,雷达测图2210a是通用的并且提供与用户1相关联的第一角色与通过雷达测图提供的游戏世界中的其他对象相关的位置的快速参考,但是不需要对游戏世界的任何直接参考(例如,游戏世界的特征或地标)。也就是说,雷达测图2210a在中心2205处的第一用户的第一角色和图22a所示的多个对象的位置之间提供多个方向关系。雷达测图可以缩放到任何范围(例如,以包括游戏世界的一小部分或更大部分)。

在另一个实施方案中,雷达测图2210a参考如由世界轮廓2201表示的游戏世界而提供,该世界轮廓可以覆盖或叠加在雷达测图2210a上。以这种方式,第一用户能够通过将雷达测图2210a和世界轮廓2201结合使用,在游戏世界中定位他或她的角色和其他相关对象。

在一个实施方案中,表示与用户1的游戏运行相关联的第一角色的对象是方向对象。也就是说,方向对象示出第一角色在游戏世界中的视点的一般取向。例如,可以增强中心2205处的放大圆圈以显示视点的方向,例如用在该方向上从放大的圆圈延伸的箭头。在另一个实施方案中,雷达测图2210a可以第一角色的视点旋转。

如图22a所示,侧边栏2209提供对配套应用程序所提供的附加特征或关于这些特征的信息的导航或访问。侧边栏2209包括交互式框,所述交互式框在被选择时(例如,经由点击)提供用户1对这些特征的访问。在实施方案中,可通过实现任何形式的可选图标或装置来启用交互式框。例如,框221经由“好友”特征为用户1提供对当前正在运行游戏应用程序的好友列表的访问;框2212为用户1提供对与第一用户必须访问的游戏世界内的所需位置相关的信息的访问;框2213提供对与游戏世界内的有趣游戏特征相关的信息的访问,例如由框2291提供的与boss相关的信息;框2214提供对与好友或专家的指导视频相关的信息的访问,包括好友或专家的所存储游戏运行部分或者提供好友或专家的教学引导的视频记录,其中框2215提供对好友的指导视频的访问,并且框2216提供对专家的指导视频的访问;框2217提供对与朋友或专家的指导指令相关的信息(例如,指令的直接通信或基于先前记录的游戏运行的指令)的访问,其中框2218提供对来自好友的指导指令的访问,并且框2219提供对来自专家的指导指令的访问;以及框2220提供对与好友所控制的引导相关的信息的访问。下文结合图22b、图22c和图22d提供了这些特征的其他细节。

图22b示出根据本公开的一个实施方案的与游戏应用程序相关联地支持第一用户的游戏运行的配套应用程序界面2200b。例如,在选择图22a的框2211的“好友”特征之后,界面2200b通过第二通信信道呈现给用户,并且包含用户1(例如,第一用户)的好友列表以及关于这些用户中的每一个的信息。

例如,用户2是好友,其中用户2的相关信息2230包括以下内容:用户2当前正在运行游戏应用程序g1的指示,用户2在地理上位于澳大利亚,并且用户2的游戏运行指示对应角色遇到zeus,如图21b的窗口2107所示。还可以在界面2200b中提供对附加特征的访问。例如,在一个实施方案中,交互式图标2231允许用户1的角色加入用户2的游戏运行。在另一个实施方案中,通过选择图标2231,用户1邀请用户2加入用户1的游戏运行。另外,例如,交互式图标2232使得用户2的游戏运行的时间线能够显示在界面2200b中。以这种方式,用户1能够基于在用户2的游戏运行期间捕获的对应快照来选择时间线中的特定快照图像以发起跳转游戏运行,如先前所述。

另外,用户3是好友(也称为用户1的第一好友),其中用户3的相关信息2235包括以下内容:用户3当前正在运行游戏应用程序g1的指示,用户3在地理上位于日本,并且用户3的游戏运行指示对应的角色当前参与战斗,如图21c的窗口2127所示。还可以在界面2200b中提供对附加特征的访问。例如,在一个实施方案中,交互式图标2236允许用户1的角色加入用户3的游戏运行。在另一个实施方案中,通过选择图标2236,用户1邀请用户3加入用户1的游戏运行。另外,通过选择图标2238,用户1与用户3建立通信会话。

另外,例如,交互式图标2237使得用户3的游戏运行的时间线能够显示在界面2200b中。以这种方式,用户1能够基于在用户3的游戏运行期间捕获的对应快照来选择时间线中的特定快照图像以发起跳转游戏运行,如先前所述。例如,时间线包括多个缩略图,所述缩略图包括与用户3的游戏运行相关联的多个快照图像,其中所述多个快照图像对应于多个快照,其中第一快照使得能够从游戏应用程序中捕获第一快照的点开始执行游戏应用程序的实例(例如,跳转游戏运行)。具体地讲,可以响应于接收到用户1在时间线中对第一快照图像的选择,并基于用户1的第一快照发起游戏应用程序的另一个实例,来对跳转游戏运行进行实例化。跳转游戏运行可通过第一通信信道或第二通信信道(例如,通过配套界面)实现。

此外,窗口2239中的雷达测图2210b在界面2200b中示出(例如,位于右上角)。雷达测图2210b是图22a的雷达测图2210a的过滤版本,该图示出与好友(诸如用户2和用户3)相关的信息。例如,雷达测图2210b示出用户1相对于与好友的相应游戏运行相关联地在游戏应用程序的游戏世界中发现的好友的位置的位置。也就是说,与用户1的游戏运行相关联的角色的位置(例如,中心2205)与表示其他用户的角色的对象结合示出。例如,用户2的角色对象的位置2207在中心2205的北侧,并且用户3的角色对象的位置2202在中心2205的西南侧。此外,与各个用户相关联的角色的位置可通过游戏世界轮廓2201进一步引用,如先前所述。

图22c示出根据本公开的一个实施方案的与游戏应用程序相关联地支持第一用户的游戏运行的配套应用程序界面2200c。具体地讲,界面2200c的线2258左侧的部分2259包括示出用户1(例如,第一用户)在游戏应用程序的游戏世界中的位置的雷达测图2210c,以及指向第二用户(例如,用户3)在游戏世界中的位置的方向指针2251。例如,可以响应于对图22a中的一个或多个交互式框(例如,提供对有趣游戏特征的访问的框2213)的选择来生成界面2200c。如图所示,用户1位于雷达测图2210c的中心2252。雷达测图2210c可以是图22a的雷达测图2210a的一种形式,其仅包括与有趣特征相关的信息,例如boss的位置2253,以及指向与用户3的游戏运行相关联的角色的方向指针2251。

另外,配套应用程序界面2200c提供如何完成诸如击败boss(例如,图22a的boss2204)的任务的辅助。辅助可通过选择请求来自好友(例如,用户3)的指导指令的框2218来启用,或者通过选择框2291来启用,如先前所述。作为响应,生成用于信息的指令特征,其中指令特征包括用户1可实现以完成目标的命令列表。指令特征还可以进一步基于用户3的游戏运行,而没有必要使用来自用户3的任何直接输入。具体地讲,在界面2200c的线2258右侧的部分2269中提供指令序列2265(例如,向右按钮、向左按钮、a按钮等)。指令序列2265可以响应于从用户1的第一计算装置接收到请求而生成,以帮助完成目标(例如,击败boss)。

此外,可以先前存储的游戏运行的视频记录的形式提供辅助。例如,辅助可通过选择请求好友(例如,用户3)的指导视频的框2215来启用,或者通过选择框2291来启用,如先前所述。作为响应,针对信息生成指导特征,其中指导特征包括基于用户3的游戏运行示出目标的先前完成情况的视频记录或视频剪辑。在另一个实施方案中,指导视频可以是由好友或专家准备的关于如何接近游戏应用程序的特定部分的教学视频。

此外,视频记录可被配置为能够发起跳转游戏或跳转游戏运行,如先前所述。例如,响应于从用户1的第一计算装置接收到基于视频记录在用户3的游戏中对跳转点的选择,可对跳转游戏进行实例化。基于视频记录中引用的快照发起游戏应用程序的另一个实例,其中在用户3的游戏运行期间捕获快照。

另外,配套界面2200c可以与另一用户(例如,用户3)的通信会话的形式提供辅助。例如,可通过选择图22b的交互式图标2238来启用和/或建立通信会话。具体地讲,窗口2250可显示通信信道上的用户3的实况媒体流。例如,窗口2250可以嵌入界面2200c内。实况媒体流可包含用户3的流式视频和/或用户3的流式音频。此外,可以响应于在用户1与用户3之间建立通信会话而生成方向指针2251。以这种方式,用户1可以快速导航到游戏世界中用户3正在经历的位置。例如,用户3可能处于游戏应用程序的精彩部分中,并且用户1想要在他或她自己的游戏运行中具有相同的体验。当用户1行进至该位置时,用户1与用户3之间的通信可以增强旅行体验。例如,用户3可以提供关于用户1应在游戏应用程序中期望什么的有用提示,或者用户3可以与用户1说些废话。

图22d示出根据本公开的一个实施方案的与游戏应用程序的第一实例的执行相关联的用户1的游戏运行的当前场景2270,其中当前场景2270包括在游戏应用程序的游戏世界内向对象提供引导的方向指针2275。可以响应于在界面2200a中选择图22a的框2220而生成方向指针,其中用户1正在寻求来自好友(例如,用户3)的引导。例如,用户1想要知道从先前结合图21a介绍的当前场景2270中所示的演示区域或平台继续进行的方向。这样,可控制的引导图标(例如,方向箭头)可以被插入或叠加到为第一游戏运行生成的当前场景2270中,以在用户1的显示器2013处的窗口2290中显示。例如,方向指针指向可经由配套应用程序界面选择的第一对象(例如,与第二用户的游戏运行相关联的角色的位置)或代表性对象(例如,任务执行的位置)的方向。此外,在一个实施方案中,方向指针基于用户3的游戏运行,其中已知对象通过该游戏运行存在于特定位置处。在另一个实施方案中,方向指针2275可由用户3控制。具体地讲,通过第一通信信道从用户3(也称为第二用户)的计算装置(例如,客户端装置2125)接收命令指令,其中命令指令将方向指针2275定向在当前场景2270内。方向指针2275可以由后端游戏云系统生成为游戏应用程序中的叠加,该后端游戏云系统执行用户1的游戏运行的游戏应用程序的实例。

图23示出显示的分屏2300,其示出在第一屏幕2320中运行游戏应用程序的用户1(也称为第一用户)的当前游戏运行,以及侧边栏或第二屏幕2325,其包括支持用户1的游戏运行的配套应用程序界面。也就是说,不是通过第二通信信道提供配套应用程序界面以显示在用户1可访问的第二计算装置上,而是结合用户1的游戏运行的显示器来提供界面。也就是说,配套应用程序界面通过第一通信信道传送到用户1的计算装置,以例如显示在分屏2300的侧面板中。具体地讲,分屏2300的第一部分2320示出从用户1(例如,第一用户)的游戏运行中获取的当前场景2270,其中在演示平台或区域中看到kratos,其中当前场景22270与图21a中介绍的与用户1相关联的场景一致。分屏2300的第一部分2320被示出为位于线2315的左侧。

图22a中初次介绍的配套应用程序界面在分屏2300的第二部分2325中提供,其中第二部分2325位于线2315的右侧。配套应用程序包括雷达测图2210a,该雷达测图示出游戏应用程序的游戏世界中的用户1相对于游戏世界中的其他对象的位置的位置,所述其他对象在用户1和用户1的至少一个好友(例如,用户3,也称为第二用户)的游戏应用程序的游戏运行中生成。此外,第二部分2325中示出的配套应用程序界面包括侧边栏2209,该侧边栏提供对配套应用程序所提供的附加特征或关于这些特征的信息的导航,如先前结合图22a所述。

通过对在网络上通信的用户的游戏服务器和客户端装置的各种模块的详细描述,现在将结合图24的流程图2400对根据本公开的一个实施方案的用于游戏的方法进行描述,该方法包括实现支持第一用户的游戏运行的配套应用程序,其中配套应用程序提供与多个用户的游戏运行相关的信息,所有用户同时运行由游戏应用程序的多个实例在基于云的游戏系统内执行的同一游戏应用程序。流程图2400示出了出于生成在用户的客户端装置上通过网络显示的信息的目的在游戏服务器侧所涉及的操作的过程和数据流。

在操作2410处,该方法包括与第一用户的第一游戏运行相关联地建立游戏应用程序的第一实例。例如,在先前所述的游戏云系统(gcs)内运行的游戏服务器被配置用于实例化和执行第一实例以生成渲染图像,以便与第一游戏运行相关联地显示在第一用户的客户端装置处。

在操作2420处,该方法包括与第二用户的第二游戏运行相关联地建立游戏应用程序的第二实例,其中第二用户是第一用户的好友。例如,gcs中的相同或另一游戏服务器被配置用于实例化和执行游戏应用程序的第二实例以生成渲染图像,以便与第二游戏运行相关联地显示在第二用户的客户端装置处。

这样,gcs能够与第一用户和第二用户的游戏运行相关联地实现和支持游戏应用程序的上述两个实例。由于游戏云系统控制游戏应用程序的第一实例和第二实例的执行,因此可将第一用户和第二用户的两个游戏运行中生成的数据和信息传达给第一用户以协助他或她的游戏运行。另外,在第一用户和第二用户的两个游戏运行中生成的数据和信息可以集成到第一用户的游戏运行中以提供第一用户的游戏运行中的多玩家参与。类似地,数据和信息可用于辅助第二用户的游戏运行,并且提供第二用户的游戏运行中的多玩家参与。这样,数据和信息可用于支持任一用户的游戏运行,但是出于简洁和清楚的目的,在支持第一用户的游戏运行的上下文中描述了数据和信息的使用和实现。

在操作2430处,该方法包括确定第一用户和第二用户具有好友关系,并且两个用户同时运行游戏应用程序。具体地讲,由于游戏云系统与第一用户和第二用户的游戏运行相关联地执行游戏应用程序的实例,因此第一用户和第二用户的游戏云系统内的用户配置文件可以提供确定用户之间的好友关系所需的数据。例如,用户配置文件包含与对应用户相关的信息,并且可包括当前正在运行的游戏应用程序、好友列表、是否启用配套应用程序等。具体地讲,在对游戏应用程序的第一实例和第二实例进行实例化时,更新第一用户和第二用户的用户配置文件以指示第一用户和第二用户当前正在运行游戏应用程序。另外,游戏云系统内的用户配置文件可以利用来自跨其他社交网络生成的配置文件的信息来增强,例如用于填充特定用户的好友列表。以这种方式,游戏云系统的用户配置文件中的好友列表不断更新。这样,通过访问两个用户配置文件,游戏云系统中的交叉引用的配置文件可以确定第一用户和第二用户是好友并且正在运行游戏应用程序。

在操作2440处,该方法包括与第一计算装置建立第一通信信道,该第一计算装置与第一用户相关联,其中第一通信信道被配置用于实现游戏应用程序的第一实例。具体地讲,通信信道通过诸如互联网的网络实现,并且被配置用于将在游戏云系统的游戏服务器处生成的渲染图像传送到第一用户的客户端装置以供显示。另外,通信信道被配置用于将来自客户端装置的输入命令传送回游戏服务器,以引导游戏应用程序的实例的执行,从而实现第一用户的游戏运行。

在操作2450处,该方法包括与第二计算装置建立第二信道,该第二计算装置与第一用户相关联。相同或不同的网络可配置用于建立第二信道。例如,第二信道可通过移动网络而不是互联网来实现,以向台式计算机提供通信支持。例如,图19的通信会话管理器1925可被配置为建立和维护第二信道。基于第一用户和第二用户的游戏运行的信息和/或数据可通过第二信道分发,以增强第一用户的游戏运行,如下所述。

在操作2460处,该方法包括生成界面,该界面包含与第一用户的第一游戏运行和第二用户的第二游戏运行相关的信息。该信息还可以与多个用户(例如,第一用户的一个或多个好友)的游戏运行相关。以这种方式,界面能够将基于多个游戏运行的信息与第一用户的游戏运行进行连接,使得多个用户(例如,好友)的游戏运行与第一用户的游戏运行相关联。如先前所述,界面可包括雷达测图,该雷达测图包含在雷达测图中的多个位置处显示与第一用户的游戏运行相关联的第一角色和第一用户感兴趣的多个对象的信息。此外,雷达测图提供第一角色和多个对象的位置之间的多个方向关系,其中对象可包括与第二用户的游戏运行相关联的角色、boss、感兴趣的点等。界面还可包含其他信息或特征和/或对其他信息或特征的访问,例如图22a所示的那些(例如,好友、有趣的位置、有趣的游戏特征、指导视频、指导指令、好友引导等)。

在操作2470处,该方法包括将界面和信息通过第二信道传送到第二计算装置,以与第一用户的游戏运行同时显示。以这种方式,界面支持第一用户的游戏运行。具体地讲,信息提供与第一用户的游戏运行相关的当前信息。出于说明的目的,信息和/或数据辅助第一用户理解游戏应用程序的游戏世界。信息和/或数据可以提供对游戏世界中的区域、感兴趣的点等的描述。信息和/或数据可以辅助第一用户完成任务或目标,或者在第二用户和第一用户的其他好友的游戏运行中定位角色。以这种方式,可以链接第一用户和第一用户的好友的游戏运行。例如,第一用户能够经由配套应用程序参与与第二用户的交互式游戏会话,该交互式游戏会话通过第二信道传送到第二计算装置。支持第一用户的游戏运行的交互式游戏会话可包括但不限于来自第二用户的指导、与第二用户的通信、在第一用户的游戏运行中的(与第二用户相关联的)角色叠加以用于第一用户的游戏运行中的角色互动、来自第二用户或基于第二游戏运行的视觉提示、来自第二用户或基于第二游戏运行的文本指令、来自第二用户或基于第二游戏运行的导航提示等。

虽然已提供实现方式方案来展示支持用户的游戏运行的配套应用程序(包括与多个用户的游戏运行相关的信息)的实现,但这些实施方案是作为示例而不是作为限制来描述的。阅读了本公开的本领域技术人员将想到落入本公开的精神和范围内的其他实施方案。

应注意,在广泛的地理区域上提供的访问服务(例如,提供对当前实施方案的游戏的访问)通常使用云计算。云计算是一种计算,其中动态可扩展的且常常是虚拟化的资源作为互联网上的服务提供。用户不需要精通支持他们的“云”中的技术基础架构。云计算可被划分成不同的服务,诸如基础架构即服务(iaas)、平台即服务(paas)和软件即服务(saas)。云计算服务通常提供常见应用程序,诸如从web浏览器访问的在线视频游戏,而软件和数据存储在云中的服务器上。基于如何在计算机网络图中描绘互联网,术语云被用作对互联网的比喻,并且是对其隐藏的复杂基础架构的抽象。

游戏客户端使用游戏处理服务器(gps)(或简称为“游戏服务器”)来运行单玩家和多玩家视频游戏。通过互联网运行的大部分视频游戏经由与游戏服务器的连接而操作。通常,游戏使用从玩家收集数据并将所述数据分布到其他玩家的专用服务器应用。这比对等布置更加高效且有效,但这需要单独的服务器来托管服务器应用。在另一个实施方案中,gps在玩家与他们相应的游戏运行装置之间建立通信,以在不依赖于集中式gps的情况下交换信息。

专用gps是独立于客户端运行的服务器。此类服务器通常在位于数据中心的专用硬件上运行,提供更大的带宽和专用处理功率。专用服务器是托管大部分基于pc的多玩家游戏的游戏服务器的优选方法。大量的多玩家在线游戏在通常通过拥有游戏名称的软件公司托管的专用服务器上运行,从而允许所述服务器控制并更新内容。

用户使用客户端装置访问远程服务,所述客户端装置至少包括cpu、显示器和i/o。客户端装置可以是pc、移动电话、上网本、pda等。在一个实施方案中,在游戏服务器上执行的网络识别客户端使用的装置类型并调整所采用的通信方法。在其他情况下,客户端装置使用标准通信方法(例如,html)通过互联网访问游戏服务器上的应用程序。

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

应理解,可针对特定平台和特定关联控制器装置开发给定视频游戏。然而,当这种游戏可经由如本文所示的游戏云系统使用时,用户可能正在用不同的控制器装置访问该视频游戏。例如,可能已经为游戏控制台及其相关联控制器开发了游戏,而用户可能正利用键盘和鼠标从个人计算机访问基于云的游戏版本。在这种情况下,输入参数配置可以定义从可以由用户的可用控制器装置(在这种情况下,键盘和鼠标)生成的输入到对于视频游戏的执行可接受的输入的映射。

又如,用户可经由平板计算装置、触摸屏智能电话或其他触摸屏驱动装置访问云游戏系统。在这种情况下,客户端装置和控制器装置在同一装置中集成在一起,其中输入通过检测到的触摸屏输入/手势提供。对于这样的装置,输入参数配置可以定义与视频游戏的游戏输入相对应的特定触摸屏输入。例如,在视频游戏的运行期间可以显示或叠加按钮、方向键盘或其他类型的输入元件,以指示触摸屏上用户可以触摸以生成游戏输入的位置。诸如特定方向上的轻扫或具体触摸动作之类的手势也可被检测为游戏输入。在一个实施方案中,可以向用户提供指示如何经由触摸屏提供用于游戏运行的输入的教程,例如在开始视频游戏的游戏运行之前提供,以使用户适应触摸屏上的控件的操作。

在一些实施方案中,客户端装置用作控制器装置的连接点。也就是说,控制器装置经由与客户端装置的无线或有线连接进行通信,以将来自控制器装置的输入传输到客户端装置。客户端装置可以依次处理这些输入,然后经由网络将输入数据传输到云游戏服务器(例如,经由诸如路由器的本地网络装置访问)。然而,在其他实施方案中,控制器本身可以是联网装置,具有将输入经由网络直接传送到云游戏服务器的能力,而不需要首先通过客户端装置传送这样的输入。例如,控制器可以连接到本地网络装置(例如,上述路由器)以将数据发送到云游戏服务器并从云游戏服务器接收数据。因此,虽然客户端装置可能仍然需要从基于云的视频游戏接收视频输出并在本地显示器上呈现,但是通过允许控制器绕过客户端装置,通过网络将输入直接发送到云游戏服务器,可以减少输入延迟。

在一个实施方案中,联网控制器和客户端装置可被配置为将某些类型的输入直接从控制器发送到云游戏服务器,并且将其他类型的输入经由客户端装置发送。例如,其检测不依赖于任何附加硬件或与控制器本身分开处理的输入可绕过客户端装置,经由网络直接从控制器发送到云游戏服务器。这样的输入可包括按钮输入、操纵杆输入、嵌入式运动检测输入(例如,加速度计、磁力仪、陀螺仪)等。然而,客户端装置可以将利用附加硬件或需要客户端装置处理的输入发送到云游戏服务器。这些输入可能包括从游戏环境捕获的视频或音频,其可以在发送到云游戏服务器之前由客户端装置处理。另外,来自控制器的运动检测硬件的输入可以由客户端装置结合捕获的视频来处理,以检测控制器的位置和运动,随后将由客户端装置传送到云游戏服务器。应理解,根据各种实施方案的控制器装置还可以从客户端装置或直接从云游戏服务器接收数据(例如,反馈数据)。

应理解,本文所述的实施方案可以在任何类型的客户端装置上执行。在一些实施方案中,客户端装置是头戴式显示器(hmd)。

图25是示出根据本公开的实施方案的头戴式显示器2550的部件的图示。头戴式显示器2550包括用于执行程序指令的处理器2500。存储器2502被提供用于存储目的,并且可包括易失性存储器和非易失性存储器两者。显示器2504包括在内,该显示器提供用户可观看的视觉界面。提供电池2506作为头戴式显示器2550的电源。运动检测模块2508可包括各种运动敏感硬件中的任一种,诸如磁力仪2510、加速度计2512和陀螺仪2514。

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

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

陀螺仪是基于角动量的原理测量或维持定向的装置。在一个实施方案中,三个陀螺仪2514基于惯性感测提供关于跨越相应轴线(x、y和z)的移动的信息。陀螺仪有助于检测快速旋转。然而,陀螺仪可以随着时间漂移而无需存在绝对参考。这要求周期性地重置陀螺仪,这可使用诸如基于对象的视觉跟踪、加速度计、磁力仪等的位置/定向确定的其他可用信息来完成。

相机2516被提供用于捕获真实环境的图像和图像流。头戴式显示器2550中可包括多于一个相机,包括背向相机(当用户在查看头戴式显示器2550的显示器时背离用户)和正向相机(当用户在查看头戴式显示器2550的显示器时朝向用户)。另外,可以在头戴式显示器2550中包括深度相机2518,以用于感测对象在真实环境中的深度信息。

在一个实施方案中,集成在hmd的正面上的相机可用于提供关于安全性的警告。例如,如果用户正在接近墙壁或对象,则可以警告用户。在一个实施方案中,可以为用户提供房间中的物理对象的轮廓视图,以警告用户这些对象的存在。例如,轮廓可以是虚拟环境中的叠加。在一些实施方案中,可以为hmd用户提供参考标记的视图,该视图叠加在例如地板中。例如,标记可以向用户提供用户正在其中玩游戏的房间中心的位置的参考。例如,这可以向用户提供用户应移动以避免撞到房间中的墙壁或其他对象的视觉信息。还可以向用户提供触觉警告和/或音频警告,以在用户佩戴和玩游戏或使用hmd导航内容时提供更多安全性。

头戴式显示器2550包括用于提供音频输出的扬声器2520。另外,可包括麦克风2522以从真实环境捕获音频,所述音频包括来自周围环境的声音、由用户发出的语音等。头戴式显示器2550包括用于为用户提供触觉反馈的触觉反馈模块2524。在一个实施方案中,触觉反馈模块2524能够引起头戴式显示器2550的移动和/或振动,以便为用户提供触觉反馈。

提供led2526作为头戴式显示器2550的状态的视觉指示器。例如,led可以指示电池电量、电源通电等。提供读卡器2528以使得头戴式显示器2550能够从存储器卡读取信息和向存储器卡写入信息。usb接口2530被包括作为接口的一个实例,以用于实现与外围装置的连接或与其他装置(诸如其他便携式装置、计算机等)的连接。在头戴式显示器2550的各种实施方案中,可包括各种类别的接口中的任一种,以实现头戴式显示器2550的更大连接性。

wifi模块2532被包括在内,以用于实现经由无线联网技术与互联网的连接。另外,头戴式显示器2550包括用于实现与其他装置的无线连接的蓝牙模块2534。还可包括通信链路2536,以用于连接到其他装置。在一个实施方案中,通信链路2536利用红外传输进行无线通信。在其他实施方案中,通信链路2536可利用各种无线或有线传输协议中的任一种与其他装置进行通信。

输入按钮/传感器2538被包括在内以便为用户提供输入接口。可包括各种类别的输入接口中的任一种,诸如按钮、触控板、操纵杆、轨迹球等。超声通信模块2540可包括在头戴式显示器2550中,用于促进经由超声技术与其他装置进行通信。

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

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

本领域技术人员应理解,在本公开的各种实施方案中,前述手持式装置可结合显示器上显示的交互式应用程序使用,以提供各种交互功能。本文所述的示例性实施方案仅作为实例而非作为限制来提供。

图26是根据本公开的各种实施方案的游戏系统2600的框图。游戏系统2600被配置为经由网络2615向一个或多个客户端2610提供视频流。游戏系统2600通常包括视频服务器系统2620和任选的游戏服务器2625。视频服务器系统2620被配置为以最低的服务质量向一个或多个客户端2610提供视频流。例如,视频服务器系统2620可接收改变视频游戏的状态或视频游戏内的视点的游戏命令,并且以最小的滞后时间为客户端2610提供反映这种状态变化的更新后的视频流。视频服务器系统2620可被配置为以各种各样的替代视频格式提供视频数据流,包括尚未定义的格式。此外,视频流可包括被配置用于以各种帧速率呈现给用户的视频帧。典型的帧速率为每秒30帧、每秒60帧、每秒2620帧。但本公开的替代实施方案还包括更高或更低的帧速率。

在本文中单独称为2610a、2610b的客户端2610可包括头戴式显示器、终端、个人计算机、游戏控制台、平板计算机、电话、机顶盒、信息亭、无线装置、数字垫、独立装置、手持式游戏运行装置和/或类似者。通常,客户端2610被配置为接收编码的视频流(即,压缩的)、解码视频流,并将所得的视频呈现给用户,例如游戏的玩家。接收编码的视频流和/或对视频流解码的过程通常包括将各个视频帧存储在客户端的接收缓冲器中。视频流可以在与客户端2610成一体的显示器上或在诸如监视器或电视的独立装置上呈现给用户。客户端2610任选地配置为支持多于一个游戏玩家。例如,游戏控制台可被配置为支持两个、三个、四个或更多个同时玩家。这些玩家中的每一个可接收单独的视频流,或者单个视频流可包括特别针对每个玩家所生成(例如,基于每个玩家的视点生成)的帧的多个区。客户端2610任选地在地理上分散。游戏系统2600中包括的客户端数量可以从一个或两个到数千、数万或更多大幅变化。如本文所用,术语“游戏玩家”用于指代玩游戏的人,并且术语“运行游戏的装置”用于指代用于玩游戏的装置。在一些实施方案中,运行游戏的装置可以指协作以将游戏体验传递给用户的多个计算装置。例如,游戏控制台和hmd可以与视频服务器系统2620协作,以传送通过hmd观看的游戏。在一个实施方案中,游戏控制台从视频服务器系统2620接收视频流,并且游戏控制台将视频流或对视频流的更新转发到hmd以便进行渲染。

客户端2610被配置为经由网络2615接收视频流。网络2615可以是任何类型的通信网络,包括电话网络、互联网、无线网络、电力线网络、局域网、广域网、私有网络和/或类似者。在典型实施方案中,视频流经由诸如tcp/ip或udp/ip的标准协议传送。替代地,视频流经由专有标准传送。

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

客户端2610可以但不要求还包括被配置用于修改所接收视频的系统。例如,客户端可被配置为执行进一步渲染,将一个视频图像叠加在另一个视频图像上,剪辑视频图像和/或类似者。例如,客户端2610可被配置为接收诸如i帧、p帧和b帧的各种类型的视频帧,以及将这些帧处理成图像以便为用户显示。在一些实施方案中,客户端2610的成员被配置为执行进一步渲染、着色、转化为3-d或对视频流的类似操作。客户端2610的成员任选地配置为接收多于一个音频或视频流。客户端2610的输入装置可包括例如单手游戏控制器、双手游戏控制器、手势识别系统、注视识别系统、语音识别系统、键盘、操纵杆、指向装置、力反馈装置、运动和/或位置感测装置、鼠标、触摸屏、神经接口、相机、待开发的输入装置和/或类似者。

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

客户端2610通常被配置为接收来自用户的输入。这些输入可包括被配置为改变视频游戏的状态或以其他方式影响游戏运行的游戏命令。游戏命令可以使用输入装置接收,并且/或者可由在客户端2610上执行的计算指令自动生成。将接收到的游戏命令经由网络2615从客户端2610传送到视频服务器系统2620和/或游戏服务器2625。例如,在一些实施方案中,将游戏命令经由视频服务器系统2620传送到游戏服务器2625。在一些实施方案中,将游戏命令的单独副本从客户端2610传送到游戏服务器2625和视频服务器系统2620。游戏命令的传送任选地取决于命令。游戏命令任选地从客户端2610a通过用于向客户端2610a提供音频或视频流的不同路线或通信信道进行传送。

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

视频服务器系统2620至少包括视频源2630、i/o装置2645、处理器2650和非暂时性存储装置2655。视频服务器系统2620可包括一个计算装置或者分布在多个计算装置中。这些计算装置任选地经由诸如局域网的通信系统连接。

视频源2630被配置为提供视频流,例如流式视频或构成运动图片的一系列视频帧。在一些实施方案中,视频源2630包括视频游戏引擎和渲染逻辑。视频游戏引擎被配置为接收来自玩家的游戏命令,并且基于接收到的命令维持视频游戏的状态的副本。该游戏状态包括对象在游戏环境中的位置,并且通常包括视点。游戏状态还可包括对象的属性、图像、颜色和/或纹理。

通常基于游戏规则以及游戏命令(例如,移动、转动、攻击、设置焦点、互动、使用和/或类似者)来维持游戏状态。游戏引擎的部分任选地设置在游戏服务器2625内。游戏服务器2625可基于使用地理上分散的客户端从多个玩家接收到的游戏命令来维持游戏状态的副本。在这些情况下,游戏服务器2625将游戏状态提供给视频源2630,其中存储游戏状态的副本并且执行渲染。游戏服务器2625可经由网络2615直接从客户端2610接收游戏命令,并且/或者可经由视频服务器系统2620接收游戏命令。

视频源2630通常包括渲染逻辑,例如硬件、固件和/或存储在计算机可读介质(诸如存储装置2655)上的软件。该渲染逻辑被配置为基于游戏状态创建视频流的视频帧。渲染逻辑的全部或一部分任选地设置在图形处理单元(gpu)内。渲染逻辑通常包括被配置用于基于游戏状态和视点确定对象之间的三维空间关系和/或应用适当纹理等的处理阶段。渲染逻辑产生原始视频,然后通常在传送到客户端2610之前对原始视频进行编码。例如,可根据adobe标准、.wav、h.264、h.263、on2、vp6、vc-1、wma、huffyuv、lagarith、mpg-x、xvid、ffmpeg、x264、vp6-8、realvideo、mp3或类似者对原始视频进行编码。编码过程产生视频流,任选地将该视频流打包以传送到远程装置上的解码器。视频流通过帧大小和帧速率来表征。典型的帧大小包括800x600、1280x720(例如,720p)、1024x768,但也可使用任何其他帧大小。帧速率是每秒的视频帧数目。视频流可包括不同类型的视频帧。例如,h.264标准包括“p”帧和“i”帧。i帧包括用以刷新显示装置上的所有宏块/像素的信息,而p帧包括用以刷新所述宏块/像素的子集的信息。p帧通常在数据大小上小于i帧。如本文所用,术语“帧大小”意指帧内的像素数目。术语“帧数据大小”用于指代存储帧所需的字节数。

在替代性实施方案中,视频源2630包括诸如相机的视频录制装置。该相机可用于生成可包括在计算机游戏的视频流中的延迟视频或实时视频。所得的视频流任选地包括所渲染的图像和使用静态或视频相机录制的图像两者。视频源2630还可包括被配置为存储将包括在视频流中的先前录制视频的存储装置。视频源2630还可包括:被配置为检测对象(例如,人)的运动或定位的运动或定位感测装置;以及被配置为基于所检测到的运动和/或定位来确定游戏状态或产生视频的逻辑。

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

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

i/o装置2645被配置用于视频服务器系统2620发送和/或接收信息,诸如视频、命令、信息请求、游戏状态、注视信息、装置运动、装置位置、用户动作、客户端身份、玩家身份、游戏命令、安全信息、音频和/或类似者。i/o装置2645通常包括诸如网卡或调制解调器的通信硬件。i/o装置2645被配置为与游戏服务器2625、网络2615和/或客户端2610通信。

处理器2650被配置为执行本文论述的视频服务器系统2620的各个部件内所包括的逻辑,例如软件。例如,处理器2650可编程为具有软件指令,以便执行视频源2630、游戏服务器2625和/或客户端限定器2660的功能。视频服务器系统2620任选地包括处理器2650的多于一个实例。处理器2650还可编程为具有软件指令,以便执行视频服务器系统2620所接收的命令或协调本文论述的游戏系统2600的各个元件的操作。处理器2650可包括一个或多个硬件装置。处理器2650是电子处理器。

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

视频服务器系统2620还任选地包括客户端限定器2660。客户端限定器2660被配置用于远程确定客户端(诸如客户端2610a或2610b)的功能。这些功能可包括客户端2610a本身的功能以及客户端2610a与视频服务器系统2620之间的一个或多个通信信道的功能两者。例如,客户端限定器2660可被配置为通过网络2615测试通信信道。

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

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

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

应理解,可使用本文所公开的各种特征将本文所定义的各种实施方案组合或组装成特定实现方式。因此,所提供的实例仅仅是一些可能的实例,而不限于通过组合各种元素以定义更多实现方式而成为可能的各种实现方式。在一些实例中,一些实现方式可包括更少的元素,而不脱离所公开的精神或等效的实现方式。

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

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

本公开还可体现为计算机可读介质上的计算机可读代码。计算机可读介质是可存储数据的任何数据存储装置,所述数据可在之后通过计算机系统读取。计算机可读介质的实例包括硬盘驱动器、网络附接存储装置(nas)、只读存储器、随机存取存储器、cd-rom、cd-r、cd-rw、磁带以及其他光学和非光学数据存储装置。计算机可读介质可包括分布在网络耦合计算机系统上的计算机可读有形介质,使得计算机可读代码以分布的方式存储和执行。

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

虽然出于清楚理解的目的相当详细地描述了前述公开内容,但应理解,可在所附权利要求的范围内实践某些改变和修改。因此,本公开的实施方案被认为是说明性的而非限制性的,并且本公开的实施方案不限于本文给出的细节,而是可以在所附权利要求的范围和等效物内进行修改。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1