CN105209137A - 远程游戏环境中玩家移动的客户端侧处理 - Google Patents

远程游戏环境中玩家移动的客户端侧处理 Download PDF

Info

Publication number
CN105209137A
CN105209137A CN201480014978.1A CN201480014978A CN105209137A CN 105209137 A CN105209137 A CN 105209137A CN 201480014978 A CN201480014978 A CN 201480014978A CN 105209137 A CN105209137 A CN 105209137A
Authority
CN
China
Prior art keywords
game
client
picture
server
image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201480014978.1A
Other languages
English (en)
Other versions
CN105209137B (zh
Inventor
J.R.朱斯蒂斯
J.A.古森
D.S.吴
H.扎加普尔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN105209137A publication Critical patent/CN105209137A/zh
Application granted granted Critical
Publication of CN105209137B publication Critical patent/CN105209137B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/003Details of a display terminal, the details relating to the control arrangement of the display terminal and to the interfaces thereto
    • G09G5/006Details of the interface to the display terminal
    • A63F13/12
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/80Special adaptations for executing a specific game genre or game mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/60Rotation of whole images or parts thereof
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/50Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
    • A63F2300/53Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing
    • A63F2300/538Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing for performing operations on behalf of the game client, e.g. rendering

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Processing Or Creating Images (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本发明的实施例使用由游戏服务器生成的像来提供客户端侧场景移动。本发明的实施例预测性地呈现围绕当前视场的附加像。预测场景像可以处于当前视场的所有侧面上。本发明的实施例根据使用的可能性来确定生成的预测场景像的量。除客户端调整的旋转之外,本发明的实施例可以预测性地平移视场。平移是向前、向后或左右移动视点。预测平移像可以被传达给游戏服务器以用于在本地平移功能中使用。

Description

远程游戏环境中玩家移动的客户端侧处理
背景技术
游戏服务器允许玩家从不同客户端设备连接并且在多玩家游戏内一起玩。游戏服务器运行基于从不同客户端接收的控制器输入进行操纵的游戏代码。游戏状态信息周期性地更新并且传达给呈现视频游戏图像的各个游戏客户端。
发明内容
提供本发明内容来以简化形式引入以下在具体实施方式中进一步描述的概念的选择。本发明内容不旨在标识所要求保护的主题的关键特征或本质特征,也不旨在单独地用于帮助确定所要求保护的主题的范围。
本发明的实施例使用由游戏服务器生成的像来提供客户端侧场景移动。本发明的实施例工作于在线游戏环境中,其中游戏代码在游戏服务器处执行,其呈现传达给游戏客户端的视频游戏像。游戏客户端针对用户输出视频游戏像。
本发明的实施例预测地呈现围绕当前视场的附加像。该附加内容在本文中被描述为预测场景像。预测场景像可以处于当前视场的所有侧面上。然而,可以基于该方向上的快速旋转的可能性而在一个侧面上或其它侧面上提供更多的场景像。在一个实施例中,客户端修剪从游戏客户端接收的呈现图像以生成仅包括当前视场的显示图像。预测场景像保存到存储器以用于旋转期间可能的使用。
本发明的实施例根据使用可能性确定所生成的预测场景像的量。本发明的实施例试图通过分析各种因素来优化预测场景像的量,所述各种因素包括标题内的游戏玩耍技巧、玩家的玩耍风格、当前网络性能、游戏情况以及来自跨多个游戏会话的在线游戏玩耍分析的反馈。目的在于,生成足够的预测场景像以在第一呈现图像和第二呈现图像之间从游戏服务器进行显示。在一个实施例中,预测场景像内的像素密度或分辨率小于主要场景像内的分辨率。
除客户端调整的旋转之外,本发明的实施例可以预测地平移视场。平移是向前、向后或左右移动视点。例如,在第一玩家射手游戏中,当玩家向前行进时,视场与玩家一起向前平移。在一个实施例中,像被预测地呈现并且在预料到平移时被传达。预测性平移像可以被传达给游戏服务器以用于在本地平移功能中使用。例如,可以假设玩家在它们当前移动的相同方向上移动,并且场景可以在预料到由游戏客户端使用时预先下载。在另一实施例中,不传达附加像,而传达玩家环境的基本几何结构。从游戏服务器接收到的现有场景像在几何结构周围弯曲或调整以在来自游戏服务器的完整图像被接收之前创建间歇帧。
附图说明
在下文参照附图详细地描述本发明的实施例,其中:
图1是适用于实现本发明的实施例的示例性计算环境的框图;
图2是依照本发明的实施例的在线游戏环境的图;
图3是依照本发明的实施例的远程游戏计算环境的图;
图4是依照本发明的实施例的游戏接口的图;
图5是图示了依照本发明的实施例的合成三个呈现图像的图;
图6是图示了依照本发明的实施例的通过分离的呈现过程的数据流的图;
图7是图示了依照本发明的实施例的第一人称射手环境中的游戏交互的图;
图8是图示了依照本发明的实施例的第三人称射手环境中的游戏交互的图;
图9是图示了依照本发明的实施例的出于分析游戏交互的目的而被描绘为几何对象的游戏对象的图;
图10是图示了依照本发明的实施例的主要场景像和预测场景像的图;
图11是示出了依照本发明的实施例的在基于服务器的游戏环境中客户端呈现玩家移动的方法的流程图;
图12是示出了依照本发明的实施例的在基于服务器的游戏环境中生成的预测视频游戏玩家移动的方法的流程图;以及
图13是示出了依照本发明的实施例的在基于服务器的游戏环境中客户端呈现玩家移动的方法的流程图。
具体实施方式
在本文中具体地描述本发明的实施例的主题以满足法定要求。然而,描述本身不旨在限制本专利的范围。相反,发明人已经预期到,所要求保护的主题也可以以其它方式体现,以与其它当前或未来技术结合地包括与本文档中所描述的那些类似的步骤的组合或不同步骤。此外,尽管术语“步骤”和/或“块”可以在本文中用来意指所采用的方法的不同元素,但是这些术语不应当被解释为暗示着本文公开的各个步骤之间或之中的任何特定顺序,除非并且除了在各个步骤的顺序被明确地描述时之外。
本发明的实施例使用由游戏服务器生成的像来提供客户端侧场景移动。本发明的实施例工作于在线游戏环境中,其中游戏代码在游戏服务器处执行,其呈现传达给游戏客户端的视频游戏像。游戏客户端针对用户输出视频游戏像。在一个实施例中,客户端组合服务器生成的像与游戏客户端所生成的像以形成单个图像。
本发明的实施例在本地旋转游戏的视场,直到下一帧或所呈现的图像可以从游戏服务器接收为止。视场是所显示的游戏世界的边界。游戏可以具有玩家的化身或角色在其中交互的虚拟世界。正如真实世界,虚拟玩家具有有限的视场。当化身转动其头部或者改变其视角时,视场可以将附加像暴露于右边、左边、上边或下边。
当旋转相对缓慢时,则可以从游戏服务器接收新像而没有可见的拖延。另一方面,与新帧可以从游戏服务器下载相比,快速旋转可能使视场更加快速地旋转。
本发明的实施例预测地呈现围绕当前视场的附加像。该附加内容在本文中被描述为预测场景像。场景是靠近角色的虚拟世界的部分。换言之,游戏服务器呈现比游戏客户端显示整个当前视场所需要的更大的图像。预测场景像可以处于当前视场的所有侧面上。然而,可以基于该方向上的快速旋转的可能性而在一侧上或其它侧上提供更多场景像。例如,如果敌方玩家在场景从右边外部接近,则更多的附加场景像可以呈现到右边而不是左边,因为玩家可能快速旋转到右边以试图在敌方玩家射击的情况下找到敌方玩家。类似地,如果玩家的右边存在不能穿过的墙壁,则可能不存在预测地将像呈现到玩家右边的需要。
在一个实施例中,客户端修剪从游戏客户端接收的呈现图像以生成仅包括当前视场的显示图像。预测场景像保存到存储器以用于旋转期间的可能使用。
本发明的实施例根据使用的可能性来确定所生成的预测场景像的量。生成具有低使用概率的大量预测场景像将浪费资源。另一方面,生成太少的预测场景像可能在一些情况下使游戏体验降级。
本发明的实施例试图通过分析各种因素来优化所生成的预测场景像的量,所述各种因素包括标题内的游戏玩耍技巧、玩家的玩耍方式、当前网络性能、游戏情况以及来自跨多个游戏会话在线游戏玩耍的分析的反馈。目的在于,生成足够的预测场景像以在接收第一呈现图像与第二呈现图像之间从游戏服务器进行显示。一般地,这是非常小的时间量,并且可以取决于服务器与客户端之间的网络连接中可用的带宽。
因而,作为起始点,可以确定视频游戏图像的接收之间的时间。下一步骤是确定旋转的预测速度。使用旋转速度和图像之间的时间,可以进行关于视场可以在该时间期间移动多远的计算。预测场景像的量可以基于在从服务器接收视频游戏图像之间以预测速度行进的距离。
预测速度可以是游戏头衔内允许的最大旋转速度。不同游戏头衔可以根据所编程的游戏的物理状况来限制旋转。因而,不同游戏头衔可以具有预测场景像的不同理想大小。
在另一实施例中,可以使用所观察到的最大旋转速度。所观察到的最大旋转速度和理论上的最大旋转速度可以不同。所观察到的最大旋转速度可以针对玩游戏的当前玩家或者跨多个玩家进行测量。在一个实施例中,观察到玩家的玩耍风格。一些玩家是非常谨慎的并且倾向于缓慢地移动,而其他玩家快速地剧烈移动。玩耍风格可以用于基于由相同风格的玩家实现的最大旋转速度的测量来确定预测旋转速度。
在另一实施例中,观察跨多个游戏实例(包括相同情况下的多个实例)所观察到的旋转速度以确定预测速度。例如,可以确定由数千玩家在相似情况下做出的旋转以计算用于确定预测场景像的理想预测速度。诸如游戏头衔内的特定放置和围绕玩家的动作之类的因素可以映射到当前情况以确定可能的预测速度。
如所提及的,可以根据不同情况评估网络带宽或性能。一般地,网络连接越慢,需要调节从游戏服务器接收像之间的延时的预测场景像就越大。
在一个实施例中,预测场景像内的像素密度或分辨率小于主要场景像内的分辨率。另外,预测场景像内的分辨率可以以梯度呈现,其中分辨率随着像距主要场景越远而降低。在一个实施例中,将使用概率分配给预测场景像的各部分。可以针对具有相对较高的显示概率的部分生成较高的分辨率。另外,预测场景像最可能的是仅在相当快速的旋转期间示出,在相当快速的旋转期间,在游戏内将预期一些运动模糊,并且高分辨率像对于高质量的游戏体验不是必要的。
除客户端调整的旋转之外,本发明的实施例可以预测地平移视场。平移是向前、向后或左右移动视点。例如,在第一玩家射手游戏中,当玩家向前行进时,视场与玩家一起向前平移。在一个实施例中,像被预测地呈现并且在预料到平移时被传达。
附加场景可以在预料到玩家移动时呈现。可以假定玩家在它们当前移动的相同方向上移动,并且场景可以在预料到由游戏客户端使用时预先下载。例如,可以假定在特定方向上行进的玩家继续在该方向上行进,并且“未来”场景可以预先被传达以用于在快速平移时使用。在该情况下,预测平移像可以传达给游戏服务器以用于本地平移功能中的使用。用于平移操作中的附加像可以被临时缓存或存储在游戏客户端上并且仅在需要的情况下使用。
在另一实施例中,不传达附加像,而是传达玩家环境的基本几何结构。这允许客户端执行接触计算以防止玩家穿过墙壁或到达另一对象中。换言之,甚至在像将要被下载的时候,游戏客户端可以确定玩家由于阻挡路径的对象而不能在特定建议方向上移动。在另一实施例中,现有像在几何结构周围弯曲或调整以在来自游戏服务器的完整图像被接收之前创建间歇帧。
本发明的实施例可以分离客户端与游戏服务器之间的游戏处理和呈现。所呈现的视频游戏图像是从游戏服务器接收到的并且与游戏客户端所生成的呈现图像组合以形成要展现给用户的单个视频游戏图像。可以使用丰富感官输入来控制游戏玩法,所述丰富感官输入诸如由深度相机或者能够生成三维图像数据的其它设备所生成的三维图像数据。三维图像数据描绘玩耍环境中所存在的对象的形状、大小和取向。玩耍环境是其中存在玩家并且玩家被输入设备看到的区域。
丰富感官输入被传达给游戏服务器,潜在地具有一些预处理,并且还至少部分地在客户端本地消耗。在一个实施例中,延迟敏感的特征是在客户端上处理并且在客户端上呈现的仅有特征。例如,响应于在三维图像数据中所捕获的用户动作而移动的化身可以呈现在客户端上,而同时其余视频游戏图像呈现在服务器上。除化身之外,延迟敏感的游戏特征,诸如响应于用户移动而移动的真实或虚拟游戏对象的操纵,也可以呈现在客户端上。例如,如果化身持有棒球棒,则由化身持有的棒球棒也可以由客户端呈现。在多个玩家位于控制输入设备的视野中的情况下,直接链接到多个玩家的多个化身或游戏特征可以由客户端呈现。在其他玩家经由网络连接并且不处于相同地理位置中的远程多游戏玩家场景中,则其他玩家化身呈现在服务器上。
已经简要地描述了本发明的实施例的概述,下面描述适合用于实现本发明的实施例的示例性操作环境。
示例性操作环境
一般地参照各图,并且最初具体地参照图1,用于实现本发明的实施例的示例性操作环境被示出并且一般地被指定为计算设备100。计算设备100仅是适当的计算环境的一个示例并且不旨在暗示关于本发明的使用或功能性的范围的任何限制。计算设备100也不应当被解释为具有与所图示组件中的任何一个或组件的组合有关的任何依赖性或要求。
本发明可以在计算机代码或机器可用指令的一般背景中描述,包括计算机可执行指令,诸如由计算机或诸如个人数据助理或其它手持式设备之类的其它机器执行的诸如程序组件之类的计算机可执行指令。一般地,包括例程、程序、对象、组件、数据结构等的程序组件是指执行特定任务或实现特定抽象数据类型的代码。本发明的实施例可以在各种各样的系统配置中实践,包括手持式设备、消费者电子产品、通用计算机、专用计算设备等。本发明的实施例也可以在其中任务由通过通信网络链接的远程处理设备执行的分布式计算环境中实践。
继续参照图1,计算设备100包括直接或间接耦合以下设备的总线110:存储器112、一个或多个处理器114、一个或多个展现组件116、输入/输出(I/O)端口118、I/O组件120和说明性电源122。总线110表示可以为一个或多个总线(诸如地址总线、数据总线或其组合)的事物。尽管为了清楚起见而以线示出图1的各种方框,但是实际上对各种组件的划界并不是如此清楚的,并且隐喻地,这些线将更精确地为灰色和模糊的。例如,可以考虑诸如显示设备之类的展现组件作为I/O组件120。同样地,处理器具有存储器。本申请的发明人认识到这是现有技术的本性,并且重申图1的图仅仅是可以结合本发明的一个或多个实施例使用的示例性计算设备的说明。在诸如“工作站”、“服务器”、“膝上型计算机”、“手持式设备”等等这样的种类之间不做区分,因为它们全部都被预期在图1和引用“计算机”或“计算设备”的范围内。
计算设备100典型地包括各种各样的计算机可读介质。计算机可读介质可以是可由计算设备100访问的任何可用介质,并且包括易失性和非易失性介质、可移除和不可移除介质二者。作为示例而非限制,计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以任何方法或技术实现以用于存储诸如计算机可读指令、数据结构、程序模块或其它数据之类的信息的易失性和非易失性、可移除和不可移除介质二者。
计算机存储介质包括RAM、ROM、EEPROM、闪速存储器或其它存储器技术、CD-ROM、数字多功能盘(DVD)或其它光盘存储装置、盒式磁带、磁带、磁盘存储装置或其它磁性存储设备。计算机存储介质不包括传播的数据信号。
通信介质典型地在诸如载波或其它输运机制之类的调制数据信号中体现计算机可读指令、数据结构、程序模块或其它数据并且包括任何信息交付介质。术语“调制数据信号”意指其特性中的一个或多个以这样的方式被设定或改变的信号:以便在该信号中编码信息。作为示例而非限制,通信介质包括诸如有线网络或直接有线连接之类的有线介质,以及诸如声学、RF、红外和其它无线介质之类的无线介质。任何上述组合也应当包括在计算机可读介质的范围内。
存储器112包括易失性和/或非易失性存储器形式的计算机存储介质。存储器112可以是可移除的、不可移除的或其组合。示例性存储器包括固态存储器、硬盘驱动器、光盘驱动器等。计算设备100包括一个或多个处理器114,其从诸如总线110、存储器112或I/O组件120之类的各种实体中读取数据。(多个)展现组件116将数据指示展现给用户或其它设备。示例性展现组件116包括显示设备、扬声器、打印组件、振动组件等。I/O端口118允许计算设备100在逻辑上耦合到包括I/O组件120的其它设备,其中一些可以是内置的。说明性的I/O组件120包括麦克风、操纵杆、游戏板、卫星天线、扫描仪、打印机、无线设备等。
示例性在线游戏环境
现在转向图2,依照本发明的实施例,示出在线游戏环境200。在线游戏环境200包括通过网络220连接到游戏服务230的各种游戏客户端。示例性游戏客户端包括游戏控制台210、平板212和个人计算机214。诸如智能电话和电视之类的其它游戏客户端的使用也是可能的。游戏控制台210可以具有通信耦合到它的一个或多个游戏控制器。在一个实施例中,平板212可以用作游戏控制台210或个人计算机214的输入设备。在另一实施例中,平板212是独立式游戏客户端。网络220可以是广域网,诸如互联网。
与游戏控制台210相关联的控制器包括游戏板231、平板232、头戴式受话器236和深度相机234。游戏控制台可以与生成丰富数据流和基本数据流二者的控制设备相关联。各个控制器能够生成不同类型的数据流,并且单个控制器可以生成丰富数据流和基本数据流二者。
游戏板231可以能够生成基本控制信号,比如通过按钮选择和操纵杆移动所生成的那些。诸如由游戏板231内的加速度计和陀螺仪生成的移动数据之类的移动数据可以是丰富感官数据的示例。在一些实现方式中,移动数据不被视为丰富感官数据。
输入流作为丰富或基本的分类取决于通过上载整个控制流对游戏所造成的延迟。诸如可用带宽和客户端能力之类的因素可以影响分类。在一个实施例中,在通信期间向游戏服务器添加大于80ms的往返延迟的数据流被分类为丰富的。往返延迟是指用户提供输入(诸如推动按钮)与看到显示器上的输入结果(例如化身移动)之间的总延时。除非以其它方式在本公开中指定,否则术语延迟是指往返延迟。因而,术语延迟和往返延迟可互换地使用。80ms的延迟是除客户端和服务器上的基线处理所添加的延迟之外的。不同游戏可以建立不同延迟标准。另外,不同游戏特征可以具有不同延迟容忍度。
在特定情况下,本发明的实施例可以做出是什么构成用于特定游戏的丰富数据流的上下文确定。每一个游戏可以具有往返延迟敏感度评级(rating)。往返延迟敏感度评级可以根据从测试分组所收集的用户反馈来确定,或者通过另一方法确定,并且可能与游戏相关联。延迟敏感度评级可以对于不同游戏特征是不同的或者对于整个游戏是相同的。例如,化身移动可以被给予与背景移动不同的敏感度评级。
针对每一个输入流的丰富或基本分类可以通过标识针对本游戏的延迟敏感度评级、确定可用带宽并且确定客户端和服务器处理能力来确定。各种因素可以组合以确定针对控制流所创建的延迟。如果其小于延迟敏感度评级,则控制流是基本的。如果大于延迟敏感度评级,则是丰富的。
在实施例中,与控制流相关联的延迟在经验上使用测试控制输入和测试游戏响应来确定。所测量的延迟被用于确定控制是基本的还是丰富的。
当经由经验或计算确定控制为丰富的时,则可以使用控制流的客户端侧预处理。随后更详细地描述各种预处理方法。如果控制是基本的,则在不变换成减小的控制输入的情况下将其上载,但是仍旧可以根据各种传输协议以及将控制信号传达给服务器时所涉及的其它处理对其进行处理。该其它处理针对预处理的和未处理的控制信号二者而发生。
当某些特征是延迟敏感的时,则那些特征可以呈现在客户端上并且与从服务器接收到的呈现图像组合。特征可以是延迟敏感的,而不管控制输入如何。例如,化身移动可以是延迟敏感的,而不管是否使用深度相机或操纵杆控制化身无关。
平板232可以是游戏控制器和游戏客户端二者。平板232被示出为直接耦合到游戏控制台210,但是该连接可以间接通过因特网或子网。在一个实施例中,游戏服务230帮助进行平板232与游戏控制台之间的连接。当设备使用被链接的相同标识或标识代码登录时,游戏服务230可以关联该设备。用户还可以要求设备通过游戏服务230链接以用作输入或配套设备。平板232能够生成众多控制流并且还可以用作显示输出机构。除作为主要显示器之外,平板232可以提供与耦合到游戏控制台210的主要显示器上所显示的信息不同但相关的补充游戏信息,或者可以简单地为控制表面。由平板232生成的输入流包括视频和图片数据、音频数据、移动数据、触摸屏数据和键盘输入数据。
深度相机234生成被用作控制输入的三维图像数据。深度相机234可以使用红外相机来针对每一个所捕获的像素确定距相机的深度或距离。立体深度相机也是可能的。此外,深度相机234可以捕获彩色视频流或图片。深度相机234可以具有若干图像收集组件。例如,深度相机234可以具有多个相机。深度相机234可以用于创建用户接口,用户通过用户接口做手势和发出音频命令以控制游戏的用户接口。用户可以没有其它控制器。在其它实施例中,深度相机234可以与其它控制输入组合地使用。
头戴式受话器236捕获来自玩家和玩家的背景的音频输入,并且还可以在其与耳机或其它扬声器耦合的情况下用作输出设备。
游戏服务230允许在游戏服务230所提供的计算设备内执行游戏。游戏服务与游戏客户端之间的通信会话将输入流量运载到游戏服务230并且返回所呈现的游戏图像。在该实施例中,作为游戏服务的一部分的计算设备使用由与各种游戏客户端相关联的输入设备生成的控制流来执行视频游戏代码。所呈现的视频游戏然后通过网络传达给游戏客户端,其中所呈现的游戏被输出以用于显示。
游戏服务230可以包括通信耦合到彼此的多个计算设备。在一个实施例中,游戏服务230使用一个或多个服务器群组来实现。服务器群组可以跨包括全世界的城市的各种地理区域分布。在该情况下,游戏客户端可以连接到最靠近的服务器群组。本发明的实施例不限于该设置。
用于远程游戏的示例性游戏客户端和游戏服务
现在转向图3,依照本发明的实施例,示出用于呈现在客户端侧移动中使用的预测场景像的远程游戏环境300。游戏环境300包括通过网络330通信耦合到游戏服务器340的游戏客户端310。在一个实施例中,网络可以是因特网。游戏客户端310连接到第一游戏输入设备312、第二游戏输入设备314和显示器316。示例性游戏输入设备包括游戏板、键盘、鼠标、触摸板、触摸屏、移动警觉设备(例如装备有加速度计和/或陀螺仪的设备)、用于接收语音命令的麦克风、深度相机、摄像机和追踪球。本发明的实施例不限于这些输入设备。显示器316能够显示视频游戏内容。例如,显示器316可以是电视机或计算机屏幕。在另一实施例中,显示器316是与游戏客户端310集成的触摸屏。
游戏客户端310是能够执行视频游戏的计算设备。游戏客户端310可以是平板或膝上型计算机。在另一实施例中,游戏客户端310是游戏控制台并且显示器316是通信耦合到游戏控制台的远程显示器。游戏客户端310包括操作环境320、视频合成组件321、游戏执行环境322、游戏数据仓库324、游戏特定预处理组件326、通用预处理组件328和移动组件329。
操作环境320可以由管理硬件并且向运行在游戏客户端310上的应用提供服务的操作系统提供。操作环境可以作为预处理的一部分和其它功能而向不同应用分配客户端资源。
游戏数据仓库324存储所下载的游戏和部分地下载的游戏。游戏可以在可玩框中下载。为了玩游戏,游戏可能需要从游戏数据仓库324加载到与游戏执行环境322相关联的主动存储器中。游戏数据仓库324还可以存储玩家进展文件。
游戏特定预处理组件326处理丰富控制器输入以生成减小的控制器输入。减小的控制器输入可以采取许多形式并且可以取决于所涉及的丰富控制器输入的类型而变化。
当丰富控制输入是三维图像数据时,由客户端生成的减小的控制器输入可以采取骨骼追踪数据、对表面的减小、对几何结构的减小、增量、压缩像和对边界框的减小的形式。这些中的每一个将在随后更详细地描述,但是它们全部导致控制数据包括要传达给控制器的较少数据。减小的控制器输入通过网络330传达给游戏服务器340上的游戏执行环境348。减小的控制器输入被用作控制游戏进展的输入。
游戏特定预处理组件326是特定于所执行的特定游戏的。尽管步骤可以类似于随后描述的通用预处理,但是游戏特定处理的部分是特定于特定游戏的。代码可以是游戏特定的以生成特定游戏可消耗的形式的输出。换言之,游戏特定代码可以用于生成兼容的控制信号。在其它情况下,游戏特定代码做出其它游戏不能做出的唯一事情。
在一个实施例中,游戏特定预处理生成特定于游戏的控制输入。例如,手部手势可以被解释为意指向右移动化身或者拾取第一游戏中的对象,但是第二游戏中的不同事物。在该情况下,减小的控制器输入将简单地是移动命令而不是三维图像数据。解释三维图像数据以识别手势并且形成作为一种类型的输入数据(深度数据)到第二类型(移动)的变换的移动命令。进一步采取这一步骤,移动数据或深度数据可以被转换成控制命令,诸如“投球”或“暂停游戏”。这被描述为对控制的变换。在其它实施例中,相关控制数据与不相关控制数据分离,但是不改变形式。例如,减小的控制器输入可以是感兴趣的对象周围的三维图像的部分,诸如玩家的面部或手,而没有其余部分的三维图像数据。隔离图像数据的部分(3D或2D)被描述为对边界框的减小。在音频命令的游戏特定预处理中,减小的控制器输入可以是唯一游戏命令或以游戏特定方式描述的普通游戏命令,诸如使用游戏特定行话。
在一个实施例中,游戏特定预处理组件326被提取或者基于最初被写入以在客户端侧上整体处理的视频游戏。以此方式,处理丰富控制器输入的视频游戏的部分被分离的并且放置在客户端侧,并且用于其它游戏功能的命令被发送到游戏的执行部分,其驻留在游戏服务器340上。在该情况下,存在对以另外方式将在客户端上的游戏执行环境内同时处理的数据进行协调的需要。随后更详细地解释的信号协调组件346可以执行该协调。
通用预处理组件328以适用于多个游戏或由多个游戏可消耗的方式来预处理丰富数据输入。由通用预处理器组件328生成的减小的控制器输入通过网络330被传达给游戏执行环境348,其中游戏执行环境348可以用于操纵游戏进展。通用预处理步骤的示例包括骨骼追踪、增量、对服务的减小、对几何结构的减小、对边界框的减小、以及三维图像压缩。当丰富数据输入包括音频信号时,通用处理可以是语音到文本的转化。例如,用户可以说出词语“暂停”并且通用预处理可以发送命令以暂停游戏。
游戏执行环境322包括客户端310上使用的游戏资源以执行游戏或游戏的部分的实例。在一些实施例中,客户端310不包括游戏执行环境或计算资源来执行整个游戏。游戏执行环境322包括主动存储器连同计算和视频处理一起。游戏执行环境322接收游戏控制并且根据其编程使得游戏被操纵和进展。在一个实施例中,游戏执行环境322输出要传达给显示设备的所呈现的视频流。
在其它实施例中,游戏执行环境322包括与角色交互有关的代码。在一个实施例中,在客户端上仅呈现将延迟敏感的角色交互游戏特征。游戏的延迟敏感的特征可以由游戏开发者指定并且还可以动态地确定。在一个实施例中,游戏服务器340传达仅执行延迟敏感的交互特征所需要的游戏代码。执行环境322可以不具有执行整个游戏的资源或代码。游戏执行环境322可以执行游戏的部分以生成游戏图像,视频合成组件321将该游戏图像与接收自游戏服务器340的呈现图像组合。
游戏交互以及延迟敏感的游戏交互可以采取多个形式,包括瞄准、交付和接触。在所有形式的交互中,角色可以是交互的主体或对象或是二者的组合。例如,角色可以向其他角色投球并且被其他角色所投的球击中。不同游戏使用不同屏幕上表现来瞄准、交付和接触。在一些游戏中,可以显示指示角色被其他角色瞄准的表现。该表现可以作为角色与游戏对象的交互的部分而由客户端呈现,即便角色是交互的对象而不是执行者。
瞄准交互涉及第一角色瞄准游戏对象,诸如第二角色或球。如全文中所使用的,第一角色是与在其上处理和呈现第一角色的交互的客户端设备相关联的用户所控制的角色。在竞技游戏中,驾驶可以是示例瞄准并且由客户端呈现。例如,汽车或汽车的部分可以由客户端呈现并且根据驾驶命令移动。在其中汽车不可见的第一人称竞技游戏中,汽车前方的中间前景可以由客户端响应于驾驶输入而呈现。瞄准可以是预备步骤,但是并不所有游戏中所需要的。
除瞄准之外,游戏交互包括已经被瞄准的游戏对象的交付。例如,从枪中射出的子弹或者被踢中的球二者均是交付交互的示例。在射击示例中,与开火相关联的枪炮口火焰、可听的声音以及子弹轨迹的示踪物或其它指示可以呈现在客户端上并且与服务器所呈现的图像组合以描绘交付交互。
第三类游戏交互是接触检测。广义上,接触检测指示游戏对象是否接触预定目标或任何目标。例如,如果角色在射击另一角色,则接触检测将指示角色击中预定目标。击中的表现可以呈现在客户端设备上。
其它类型的游戏交互可以呈现在客户端设备上并且与服务器所呈现的视频游戏图像组合以产生用于用户的视频游戏体验。在一个实施例中,角色与游戏对象的交互是在客户端上处理并且在客户端上呈现的仅有特征。在其他玩家经由网络连接并且不处于相同地理位置或游玩空间中的远程多玩家场景中,则其他角色的图像被呈现在服务器上。
视频合成组件321将从游戏服务器340接收到的所呈现的视频游戏图像与客户端310呈现的所呈现的视频游戏图像合并以形成输出到显示器316的单个图像。视频合成组件可以执行缩放和其它功能以生成适当的视频输出。
移动组件329使用由预测呈现组件346生成的呈现内容来生成描绘移动的视频帧。移动组件329可以修剪掉预测场景像,从而仅留下主要场景像。修剪可以使用由预测呈现组件346提供的主要场景像的范围来执行。当接收到旋转视场的指令时,移动组件329使用预测场景像生成新的帧。
除客户端调整的旋转之外,移动组件329可以预测地平移视场。平移是向前、向后或左右移动视点。例如,在第一玩家射手游戏中,当玩家向前行进时,视场与玩家一起向前平移。在一个实施例中,像由预测呈现组件346预测地呈现并且在预料到平移时被传达。
附加场景可以在预料到玩家移动时呈现。可以假设玩家在他当前移动的相同方向上移动,并且可以在预料到由游戏客户端使用时预先下载场景。例如,可以假定在特定方向上行进的玩家继续在该方向上行进,并且“未来”场景可以预先被传达以用于在快速平移中使用。在该情况下,预测平移像可以被传达给游戏服务器以用于在本地平移功能中使用。用于在平移操作中使用的附加像可以被临时缓存或存储在游戏客户端上并且仅在需要的情况下使用。
在另一实施例中,不传达附加画像,而是传达玩家环境的基本几何结构。这允许移动组件329执行接触计算以防止玩家穿过墙壁或到达另一对象中。换言之,甚至在像将要被下载的时候,游戏客户端可以确定玩家由于对象遮挡路径而不能在特定建议方向上移动。在另一实施例中,现有像在几何结构周围弯曲或调整以在来自游戏服务器完整图像被接收之前创建间歇帧。
游戏服务器340包括连接管理器342、玩家简档数据仓库344、预测呈现组件346、游戏执行环境348、游戏数据仓库350和游戏管理器352。尽管被描绘为单个框,但是游戏服务器340可以是包括众多机器的服务器群组,或者甚至是若干服务器群组。
连接管理器342建立客户端310与游戏服务器340之间的连接。连接管理器342还可以提供各种认证机制以确保授权用户访问游戏服务器340所提供的游戏服务。连接管理器342还可以分析连接内可用的带宽并且在需要的情况下将该信息提供给组件。例如,视频游戏图像的分辨率可以减小以适应有限带宽。
玩家简档数据仓库344可以与连接管理器342结合地工作以建立并且存储玩家信息。玩家简档的部分可以包括诸如玩家名称、地址和信用卡信息之类的人口统计学和财务信息,或者用于对游戏服务所提供的游戏和体验付费或者购买它们的其它机制。
此外,玩家简档数据仓库344可以存储各个游戏内的玩家进展。当玩家通过游戏进展时,玩家的分数和对游戏级别的访问可以被存储。另外,玩家简档数据仓库344可以存储关于各个玩家偏好的信息,诸如语言偏好。关于玩家的游戏客户端和网络连接速度的信息也可以被存储并且用于优化游戏体验。例如,在一个实施例中,当地理位置上邻近的服务器群组繁忙时,具有较高延迟的因特网连接的玩家可以优选地连接到邻近的服务器农场,而具有较低延迟的连接的玩家可以连接到更远离的服群组农场。这样,具有能够最佳地处置附加延迟的网络连接的玩家连接到由于其位置而创建附加延迟的服务器群组。
玩家简档数据仓库344还可以存储用于各个玩家的使用历史。玩家购买游戏、对游戏采样或者通过不要求购买游戏的游戏服务玩游戏的历史可以被存储。可以分析使用信息以向各个玩家建议感兴趣的游戏。在一个实施例中,购买历史可以包括没有通过游戏服务购买的游戏。例如,购买历史可以通过玩家从零售商店中购买的游戏键入密钥来扩增。在一些实施例中,玩家然后可以能够在其游戏客户端310上并且通过游戏服务器二者访问该游戏。
游戏执行环境348包括游戏服务器340上使用的游戏资源以执行游戏或游戏的部分的实例。游戏执行环境348包括主动存储器连同计算和视频处理。游戏执行环境348从游戏客户端310接收控制信号并且根据其编程使得游戏被操纵和进展。在一个实施例中,游戏执行环境348输出要传达给游戏客户端的所呈现的视频流。在其它实施例中,游戏执行环境322输出游戏几何结构、深度缓存数据或其它表示,其可以与游戏客户端上的本地对象组合以呈现游戏视频。游戏执行环境322可以执行游戏的部分以生成要传达给游戏客户端310以便与游戏客户端310所生成的呈现图像组合的游戏图像。
预测呈现组件346确定预测场景像的参数。本发明的实施例预测地呈现围绕当前视场的附加像。该附加内容在本文中被描述为预测场景像。该附加内容在本文中被描述为预测场景像。场景是靠近角色的虚拟世界的部分。换言之,游戏服务器呈现比游戏客户端显示整个当前视场所需要的更大的图像。预测场景像可以处于当前视场的所有侧面上。然而,可以基于该方向上的快速旋转的可能性而在一侧上或其它侧上提供更多场景像。例如,如果敌方玩家在场景从右边外部接近,则更多的附加场景像可以呈现到右边而不是左边,因为玩家可能快速旋转到右边以试图在敌方玩家射击的情况下找到敌方玩家。类似地,如果玩家的右边存在不能穿过的墙壁,则可能不存在预测地将像呈现到玩家右边的需要。
预测呈现组件346根据使用的可能性来确定所生成的预测场景像的量。生成具有低使用概率的大量预测场景像将浪费资源。另一方面,生成太少预测场景像可能在一些情况下使游戏体验降级。
预测场景组件346试图通过分析各种因素来优化所生成的预测场景像的量,所述各种因素包括头衔内的游戏玩耍技巧、玩家的玩耍方式、当前网络性能、游戏情况以及来自跨多个游戏会话的在线游戏玩耍分析的反馈。目的在于生成足够的预测场景像以在接收第一呈现图像与第二呈现图像之间从游戏服务器进行显示。一般地,这是非常小的时间量,并且可以取决于服务器与客户端之间的网络连接中可用的带宽。
因而,作为起始点,可以确定视频游戏图像的接收之间的时间。下一步骤是确定旋转的预测速度。使用旋转速度和图像之间的时间,可以进行关于视场可以在该时间期间移动多远的计算。预测场景像的量可以基于在从服务器接收视频游戏图像之间以预测速度行进的距离。
预测速度可以是游戏头衔内允许的最大旋转速度。不同游戏头衔可以根据所编程的游戏的物理状况来限制旋转。因而,不同游戏头衔可以具有预测场景像的不同理想大小。
在另一实施例中,可以使用所观察到的最大旋转速度。所观察到的最大旋转速度和理论上的最大旋转速度可以不同。所观察到的最大旋转速度可以针对玩游戏的当前玩家或者跨多个玩家进行测量。在一个实施例中,观察到玩家的玩耍风格。一些玩家是非常谨慎的并且倾向于缓慢地移动,而其他玩家快速地剧烈移动。玩耍风格可以用于基于由相同风格的玩家实现的最大旋转速度的测量来确定预测旋转速度。
在另一实施例中,观察跨多个游戏实例(包括相同情况下的多个实例)所观察到的旋转速度以确定预测速度。例如,可以确定由数千玩家在相似情况下做出的旋转以计算用于确定预测场景像的理想预测速度。诸如游戏头衔内的特定放置和围绕玩家的动作之类的因素可以映射到当前情况以确定可能的预测速度。
如所提及的,可以根据不同情况评估网络带宽或性能。一般地,网络连接越慢,需要调节从游戏服务器接收像之间的延时的预测场景像就越大。
在一个实施例中,预测场景像内的像素密度或分辨率小于主要场景像内的分辨率。另外,预测场景像内的分辨率可以以梯度呈现,其中分辨率随着像距主要场景越远而降低。在一个实施例中,将使用概率分配给预测场景像的各部分。可以针对具有相对较高的显示概率的部分生成较高的分辨率。另外,预测场景像最可能的是仅在相当快速的旋转期间示出,在相当快速的旋转期间,在游戏内将预期一些运动模糊,并且高分辨率像对于高质量的游戏体验不是必要的。
现在转向图4,依照本发明的实施例,示出示例性接口。深度相机410能看到玩家430。本发明的实施例不限于使用深度相机作为游戏控制器的游戏。深度相机410生成能够捕获玩家430的移动的三维图像数据。在该情况下,玩家430在上下移动其左臂。游戏控制台或游戏服务器从深度相机410接收输入,并且使用它来操纵显示器420上所示出的化身422。如可以看到的,化身422的移动与虚拟对象424和第二玩家426交互。通过游戏服务器连接到相同游戏会话的不同人可以控制第二玩家426。虚拟对象424是球。用户的移动在由深度相机410捕获时能够形成控制输入。
图4还包括玩家430的画中画(“PIP”)图像470。这可以是由深度相机410或某种其它相机捕获的标准视频图像。PIP图像可以呈现在客户端上而没有将图像发送给游戏服务器,因为PIP可以是延迟敏感的。
现在转向图5,依照本发明的实施例,图示了三个所呈现的图像。所呈现的图像包括服务器呈现的图像510、客户端呈现的化身520和客户端呈现的画中画530。这三个所呈现的图像合成以形成之前在图4中示出的图像。除有色图像数据之外,由服务器生成的所呈现的图像还可以利用深度缓存数据来发送。深度缓存数据用于在合成过程期间对客户端呈现的图像和服务器呈现的图像进行排序。例如,当合成图像时,客户端可以呈现由服务器呈现的对象所部分遮挡的化身。深度数据用于以正确的深度顺序合成图像。服务器呈现的图像510包括前景和背景图像二者,其不是玩家与所图示的游戏中的游戏对象的交互的部分。服务器呈现的图像510包括背景区域528、虚拟游戏对象524和远程玩家化身526。基于玩家在本地以及第二玩家在远程采取的动作来操纵虚拟游戏对象524。如之前所提及的,两个玩家使用不同输入设备和不同游戏客户端参与到相同游戏中。游戏正在远程服务器的游戏执行环境中执行。
化身522由客户端连同球525一起呈现。球525由客户端呈现,因为其是响应于与化身525的交互而交付的。化身522是由客户端呈现的,因为其移动直接影响与游戏对象(诸如球525)的交互。在该图示中,其它虚拟对象524是由服务器呈现的,因为其移动不是与化身522的交互的中间结果。
化身522、球525和虚拟对象524全部作为客户端处所接收的控制输入的结果而被操纵。控制输入的至少部分被发送给服务器并且控制输入的至少部分由客户端消耗。在一个实施例中,整个控制输入被发送给服务器并且整个控制输入由客户端消耗,但是仅执行并呈现指定的游戏特征。
画中画530也由客户端呈现。在一个实施例中,视频图像不连同其它控制器输入一起传达给服务器。如果视频图像被传达给服务器,则其也由客户端消耗以生成PIP图像。如所提及的,三个所呈现的图像合成以形成要输出给用户的单个视频游戏图像。
现在转向图6,图示了通过本发明的可能实施例的数据流。远程游戏环境600包括输入设备610、游戏客户端620、网络630、游戏服务器640和显示器650。输入设备610生成丰富数据信号,诸如三维图像或视频数据。丰富数据流的其它示例已经在前面描述。游戏客户端620可以是游戏控制台或其它计算设备。网络630可以类似于之前描述的网络330并且可以包括因特网。游戏服务器640可以类似于之前描述的游戏服务器340。游戏服务器640执行已经响应于从游戏客户端620接收的控制信号而操纵的视频游戏。
显示器650可以是电视、监控器、或者集成到诸如平板或智能电话之类的计算设备中的其它显示器。在本发明的实施例中,显示器650可以集成到游戏客户端620中。例如,游戏客户端620可以是具有集成显示器的平板或膝上型计算机。在本发明的一些实施例中,输入设备610也可以集成到游戏客户端620中。例如,游戏客户端可以具有集成到游戏客户端620的主体中的深度相机。
最初,输入设备610生成要发送给游戏客户端620上的信号管理组件622的控制信号。控制信号可以由游戏板、深度相机或其它游戏控制器生成。信号管理组件622将控制信号的全部或部分引导到适当的目的地。信号管理组件622还可以对数据信号执行各种预处理以准备由客户端呈现组件624或游戏服务器640消耗它。
信号管理组件622通过网络630将预处理的或另外的信号的至少部分发送给游戏服务器640。游戏服务器640消耗信号以操纵进行中的游戏会话并且呈现视频游戏图像。大致同时,信号管理组件622将控制信号的至少部分传达给客户端呈现组件624和/或移动组件628。出于简单起见,客户端呈现组件624被指示为单个组件。然而,客户端呈现组件624可以是游戏执行环境的部分或者与未示出的响应于信号而执行游戏的部分并且确定呈现什么图像的其它组件有关。
客户端呈现组件624生成客户端呈现的视频游戏图像,其与基于相同或相似信号生成的服务器呈现的视频游戏图像不同。一般地,客户端呈现组件624生成涉及玩家与游戏对象的交互的特定游戏特征的图像。为了呈现图像,视频游戏的至少部分可以在游戏客户端620上是可执行的。此外,客户端可能需要环境几何结构,其描述角色周围的当前场景以便计算适当移动。例如,游戏客户端620将需要知晓角色站在墙壁前面,并且不会响应于向前移动指令而使角色向前移动。角色可以类似地在对象周围导航,取决于环境条件而跌落、跳跃或执行其它动作。游戏客户端620上的代码能够确定适用于环境条件的玩家移动,所述环境条件包括其它玩家位置以及诸如玩家能力水平之类的游戏因素。例如,如果当前游戏状态指示玩家缺乏跳动的当前能力,则跳动指令将不被客户端所遵循。
游戏服务器640可以周期性地将游戏状态信息发送给游戏客户端620以用于在客户端侧游戏代码中使用。游戏状态信息可以包括描述地面、对象和其他玩家的环境几何结构。在一个实施例中,客户端不追踪整个游戏进展、游戏点、分数等。例如,游戏客户端620可以呈现游戏角色移动左臂以击球,但是没有意识到所得造成的球移动是否得分。客户端可以最终输出示出手臂击中球的合成图像,但是游戏代码可能不知晓超出呈现角色的变化或涉及交互的其它特征所需要游戏信息的其它游戏信息。
来自游戏服务器640和客户端呈现组件624的所呈现的视频游戏图像均由视频合成组件626来接收。所呈现的视频游戏像包括主要场景像和预测场景像二者。视频合成组件形成要输出到显示器650的单个视频游戏图像。合成组件可以使用从游戏服务器接收到的深度缓存信息来生成合成图像。
移动组件628可以修剪掉预测场景像,从而仅留下主要场景像。修剪可以使用由游戏服务器640提供的主要场景像的范围来执行。所修剪的图像可以被发送给视频合成组件626。当接收到旋转视场的指令时,移动组件628使用预测场景像生成新的帧。除客户端调整的旋转之外,移动组件628可以预测地平移视场。
现在转向图7,依照本发明的实施例,图示了第一人称射手游戏内的瞄准。如所提及的,瞄准是可以在客户端设备上呈现并且与服务器上呈现的视频游戏图像组合以形成合成的视频游戏图像的游戏交互的一种形式。在该情况下,场景700描绘出角色的手臂710持有步枪720。如由标线734指示的,步枪指向外星人730。附近的外星人732在旁观。
在所示示例中,角色的手臂710、步枪720和标线734可以全部都是角色与游戏对象的瞄准交互的部分。在该情况下,游戏对象是外星人730。在一个实施例中,涉及瞄准的所有游戏特征被呈现在客户端上并且与太空船736、外星人730、732以及不涉及游戏服务器所生成的角色的瞄准交互的所有其它场景图像组合。
在一个实施例中,描绘游戏交互表现可能要求客户端理解场景700内的对象的布置。例如,被瞄准的对象可以变红或者以其它方式指示瞄准是准确的。瞄准可以在客户端上基于用户移动被处理,而没有来自服务器的参照瞄准过程的直接输入。与瞄准有关的游戏代码将驻留在客户端上。
现在转向图8,依照本发明的实施例,图示了第三人称射击环境内的交付交互。第三人称射击环境示出客户端设备的用户控制的大多数角色810。在该情况下,角色810持有指向外星人832的步枪820,而外星人830在旁观。太空船836和砖墙壁840也是可见的。
标线834和枪炮口火焰821与交付交互有关。在该情况下,子弹或者来自步枪820的输出被交付给外星人832。要指出的是,标线834可以是瞄准和交付动作的部分。如果标线834继续在交付交互期间显示,则其也可以被视为交付交互游戏特征的部分。因而,游戏特征可以参与到不同类型的交互中。
在所示情况下,枪炮口火焰821和标线834可以作为游戏交互的部分而由客户端呈现。除可见表现之外,客户端可以生成角色交互的可听表现。例如,客户端可以生成射击噪音,其与从客户端接收的可听信号组合。在一个实施例中,使用游戏代码由客户端生成所有音频。游戏代码可以在音频信号中响应于从服务器所接收的状态信息而生成。
在场景800中,可以由服务器呈现游戏角色810和步枪820。在另一实施例中,游戏角色810和/或步枪820也可以作为游戏交互特征的部分而呈现在客户端上。外星人830和832由服务器连同砖壁840和太空船836一起。尽管未描绘,但是外星人832上的击中表现可以作为接触交互特征的部分而由客户端呈现。例如,绿色外星人832可以在被击中时变红。在另一实施例中,外星人832的部分在击中时变红。
瞄准、交付以及未在图8中描绘的击中检测(或接触)均可以需要运行在游戏客户端上的游戏代码能够确认场景内描绘的对象的位置并且计算作为游戏交互的部分所交付的对象的轨迹。在一个实施例中,几何形状被用于计算场景中的游戏对象的位置。几何形状可以作为游戏状态信息变化而从服务器向游戏客户端下载或传达。
现在转向图9,依照本发明的实施例,示出了作为几何形状的游戏对象的描绘。出于图示起见,在图9中描绘了这些形状。实际上,这些形状不需要在视觉上作为游戏交互过程的任何部分而呈现。相反,游戏对象的大小、形状和位置可以出于执行涉及游戏交互的计算的目的而在内部消耗。计算可以涉及射击的瞄准、交付和击中检测。
如可以看到的,对象与图8中所示的那些对应。太空船836被描绘为椭圆形球体936。外星人被描绘为柱形930和932。墙壁840被描绘为平面934。在一个实施例中,仅在几何形状数据内展现墙壁840的前表面。墙壁840的前表面可以是必要的以确保游戏角色不会走过或射穿墙壁或者通过墙壁瞄准。类似地,如果射击瞄准墙壁,则射弹将从墙壁弹开而不是击中对象。
因而,客户端设备上的游戏代码可能能够呈现游戏交互的表现以及执行涉及视频游戏内的这些交互的计算。如所提及的,这些可以是在游戏服务器上复制的预备计算。在一个实施例中,瞄准信息不传达给游戏服务器,而是整体地在客户端上执行。当接收到控制输入以朝向目标交付对象时,控制输入被上载到服务器,其除了在客户端上所执行的预备轨迹计算之外还执行轨迹计算。
预备击中表现可以在客户端上连同诸如之前所图示的枪炮口火焰之类的交付的表现一起生成。出于多玩家游戏的目的,最终击中计算可以驻留在服务器内。控制输入具有时间代码,其用于在发出控制时与游戏中的点处的对象的精确位置相比较。另外,服务器可以使用不依赖于几何形状的更复杂的瞄准过程,但是使用更接近地类似游戏对象的形状。
现在转向图10,依照本发明的实施例,示出了包括主要场景像和预测场景像二者的所呈现的视频游戏图像1000。主要场景像1005在之前参照图8示出并且显示。在一个实施例中,主要场景像1005是从所呈现的图像1000修剪掉的并且被显示给用户。针对主要场景像1005周围的不同量,预测场景像在不同方向上延伸。
如可以看到的,预测场景像向右延伸距离1010、向左延伸距离1012、向底部延伸距离1014并且向顶部延伸距离1016。每一个距离可以是不同的。
预测场景像可以包括背景图像以及游戏对象。图10中所示出的预测场景像包括附加外星人太空船1020、外星人1022、箱1024和墙壁840的延续。如之前所提及的,在主场景像的不同侧面上示出的预测场景像的量可以基于其将用于或显示给用户的可能性来确定。例如,可以更可能的是,用户将向右抬头看附加外星人太空船1020或附加外星人1022,而不是向下或向左看。
预测场景像的分辨率可以变化。线1040指示潜在的分界线,其中在从游戏服务器向游戏客户端传达所呈现的图像时,像素密度可以降低以保存带宽。中途点仅是该分界线可以处于的一个示例,其实际上可以不在图像中显示,但是仅仅为了图示起见而可以这样做。一般地,预测场景像距主要场景像1005越远,其将用于生成要示出给用户的图像的可能性就越低。同样地,要注意到,线1040不向下延伸。可能不合期望的是降低出现在前景中的图像的分辨率。另一方面,最可能处于背景中或者接近屏幕边缘的预测场景可以适用于较低分辨率的呈现。预测场景像的分辨率内的变化可以取决于可用于特定用户的带宽。当较少带宽可用时,以较低分辨率呈现的预测场景的部分可以增加。
现在转向图11,依照本发明的实施例,示出了基于服务器的游戏环境中的客户端呈现的玩家移动的方法1100。如所提及的,基于服务器的游戏环境是视频游戏图像的至少部分呈现在游戏服务器上并且被传达给游戏客户端的一种情况。此外,游戏代码和游戏状态可以在服务器上管理和操纵。然而,最终显示给用户的图像的部分可以呈现在客户端上。例如,各种瞄准功能可以呈现在客户端上并且与服务器呈现的图像合成以生成最终显示给用户的图像。因而,游戏代码的部分可以在客户端上执行,并且一些图像可以在客户端上呈现并且与服务器所呈现的图像组合。尽管在一个实施例中整个视频游戏图像是呈现在服务器上的。
在步骤1110处,从游戏服务器接收包括主要场景像和预测场景像的所呈现的视频游戏图像。主要场景像处于游戏的当前视场内并且预测场景像处于当前视场之外并且与其邻近。主要场景像和预测场景像的示例已经在之前参照图10进行描述。
在步骤1120处,输出描绘主要场景像而不是预测场景像的第一视频帧以用于由游戏客户端显示。预测场景像可能已经从接收自服务器的所呈现的视频游戏图像中修剪掉。可以在客户端上出于修剪的目的而确定当前视场。在另一实施例中,游戏服务器将当前视场的范围提供给游戏客户端以用于在修剪时使用。
在步骤1130处,接收将当前视场旋转到新视场的指令。控制器指令可以由游戏板或者链接到游戏客户端的其它游戏控制器来生成。旋转当前视场的指令可以是移动主要玩家的指令,并且结果是视场也必须与玩家一起旋转。该控制器指令也被传达给游戏服务器,其开始更新游戏状态信息并且生成第二呈现图像。
在步骤1140处,在没有从游戏服务器接收附加呈现图像的情况下,生成示出新视场的第二视频帧。新视场包括主要场景像的部分,以及至少预测场景像的部分。在可以从游戏服务器接收到附加呈现图像之前生成第二帧。当从游戏服务器接收到下一呈现图像时,协调这两个以创建新的当前视场。正如第一呈现视频游戏图像,从游戏客户端所接收的第二呈现图像也可以包括附加预测场景像。这样,在客户端侧提供无缝旋转,而没有可能源自游戏服务器和游戏客户端和其它处理之间的在线连接所引入的延迟的拖延。
现在转向图12,依照本发明的实施例,示出了在基于服务器的游戏环境中生成预测视频游戏玩家移动的方法1200。基于服务器的游戏环境可以如之前在图3中所描述的。游戏服务器呈现最终显示给用户的图像的至少部分。
在步骤1210处,在游戏服务器处生成包括主要场景像和预测场景像的视频游戏图像。主要场景像处于游戏的当前视场内,并且预测场景像处于当前视场外部且与其邻近。在步骤1220处,所呈现的视频游戏图像被传达给游戏客户端。
如所提及的,预测场景像的大小被设定成允许游戏客户端生成新的图像帧,其旋转视场而没有耗尽像,直到新的所呈现的视频游戏图像可以由游戏服务器生成并且被传达给游戏客户端。新图像由游戏服务器生成并且传达给客户端所花费的时间量可以取决于游戏客户端与服务器之间的网络连接。因而,最初,该连接的速度可以被确定并且用于计算预测场景像的大小。如所提及的,预测像的大小可以通过计算当前视场在所呈现的视频游戏图像与随后呈现的视频游戏图像被传达给客户端之间所流逝的时间期间能够以预测速度旋转多远来确定。
预测速度可以是游戏头衔内可能的最大旋转速率。不同游戏头衔可以具有不同最大旋转速率。预测速度可以是之前由游戏头衔内的用户实现的最大旋转速率。当用户玩游戏时,该量可以基于所观察到的动作而改变。在一个实施例中,预测速度是之前由玩家在类似游戏情况下所实现的最大旋转速率。计算预测速度的其它方法已经在前文描述。
现在转向图13,依照本发明的实施例,示出了基于服务器的游戏环境中的客户端呈现玩家移动的方法1300。在步骤1310处,从游戏服务器接收包括主要场景像和预测场景像的所呈现的视频游戏图像。主要场景像处于游戏的当前视场内,并且预测场景像处于当前视场外部且与其邻近。在步骤1320处,通过将所呈现的视频游戏图像修剪成仅包括主要场景像来生成第一视频帧。在步骤1330处,输出第一视频帧以用于显示。
在步骤1340处,接收将当前视场旋转和平移到新视场的控制器指令。控制器指令可以是旋转和移动玩家的指令,其使得视场作为响应而连同玩家一起移动。
在步骤1350处,在没有从游戏服务器接收附加呈现图像的情况下,生成第二视频帧,其示出如使用场景几何结构进行调整以模仿场景平移的包括主要场景像的部分以及预测场景像的部分的新视场。第二视频帧可以被输出以用于显示给用户。因而,除使用预测场景像之外,基于模仿玩家在所指令的方向上移动的几何结构来调整图像。该调整是通过使用现有像素数据并将其应用到来自新位置的几何结构而完成的。结果是从图像到图像的较平滑平移,因为它们是从游戏服务器接收的。

Claims (10)

1.一种或多种具有体现在其上的计算机可执行指令的计算机存储介质,所述指令在由计算设备运行时执行基于服务器的游戏环境中的客户端呈现玩家移动的方法,所述方法包括:
从游戏服务器接收包括主要场景像和预测场景像的所呈现的视频游戏图像,主要场景像处于游戏的当前视场内,并且预测场景像处于当前视场外部且与其邻近;
输出描绘主要场景像而不是预测场景像的第一视频帧以用于显示;
接收将当前视场旋转到新视场的控制器指令;以及
在没有从游戏服务器接收附加呈现图像的情况下,在游戏客户端处生成第二视频帧,其示出包括主要场景像的部分和预测场景像的部分的新视场。
2.权利要求1的介质,其中所述方法还包括将所呈现的视频游戏图像修剪成仅包括主要场景像。
3.权利要求1的介质,其中所述方法还包括将控制器指令传达给游戏服务器。
4.权利要求1的介质,其中预测场景像以比主要场景像更低的分辨率被呈现。
5.权利要求4的介质,其中预测场景像的分辨率随着距当前视场越远而降低。
6.权利要求1的介质,其中预测场景像的大小基于视频游戏头衔内的最大旋转速率进设定。
7.权利要求1的介质,其中预测场景像的大小基于游戏服务器与游戏客户端之间的网络连接的速度进行设定。
8.一种或多种具有体现在其上的计算机可执行指令的计算机存储介质,所述指令在由计算设备运行时执行生成基于服务器的游戏环境中的预测视频游戏玩家移动的方法,所述方法包括:
在游戏服务器处生成包括主要场景像和预测场景像的所呈现的视频游戏图像,主要场景像处于游戏的当前视场内,并且预测场景像处于当前视场外部且与其邻近;以及
将所呈现的视频游戏图像传达给游戏客户端。
9.权利要求8的介质,其中预测场景像的大小被设定成允许游戏客户端生成新的图像帧,其旋转当前视场而没有耗尽像,直到新的所呈现的视频游戏图像可以由游戏服务器生成并且被传达给游戏客户端为止。
10.权利要求8的介质,其中预测场景像的宽度通过计算当前视场以预测速度在传达所呈现的视频游戏图像与随后呈现的视频游戏图像给游戏客户端之间旋转多远来确定。
CN201480014978.1A 2013-03-14 2014-03-10 远程游戏环境中玩家移动的客户端侧处理 Active CN105209137B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201361783351P 2013-03-14 2013-03-14
US61/783351 2013-03-14
US14/180043 2014-02-13
US14/180,043 US9564102B2 (en) 2013-03-14 2014-02-13 Client side processing of player movement in a remote gaming environment
PCT/US2014/022712 WO2014159256A1 (en) 2013-03-14 2014-03-10 Client side processing of player movement in a remote gaming environment

Publications (2)

Publication Number Publication Date
CN105209137A true CN105209137A (zh) 2015-12-30
CN105209137B CN105209137B (zh) 2018-07-10

Family

ID=51525489

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480014978.1A Active CN105209137B (zh) 2013-03-14 2014-03-10 远程游戏环境中玩家移动的客户端侧处理

Country Status (4)

Country Link
US (1) US9564102B2 (zh)
EP (1) EP2969081B1 (zh)
CN (1) CN105209137B (zh)
WO (1) WO2014159256A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108122127A (zh) * 2016-11-29 2018-06-05 韩国电子通信研究院 预测在线游戏服务的运行结果的方法及装置
CN110366440A (zh) * 2017-01-09 2019-10-22 索尼互动娱乐股份有限公司 用户分析系统和方法

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150373153A1 (en) * 2010-06-30 2015-12-24 Primal Space Systems, Inc. System and method to reduce bandwidth requirement for visibility event packet streaming using a predicted maximal view frustum and predicted maximal viewpoint extent, each computed at runtime
KR20140098608A (ko) * 2013-01-31 2014-08-08 한국전자통신연구원 스트리밍 기반 게임 영상 제공 장치 및 방법
CA2915582A1 (en) * 2013-06-17 2014-12-24 Square Enix Holdings Co., Ltd. Image processing apparatus, image processing system, image processing method and storage medium
EP3125125A4 (en) 2014-03-24 2018-07-25 Square Enix Co., Ltd. Interactive system, terminal device, server device, control method, program, and recording medium
US9691121B1 (en) * 2014-11-11 2017-06-27 Amazon Technologies, Inc. Distributed determination of scene information
US10315108B2 (en) * 2015-08-19 2019-06-11 Sony Interactive Entertainment America Llc Local application quick start with cloud transitioning
US10432988B2 (en) * 2016-04-15 2019-10-01 Ati Technologies Ulc Low latency wireless virtual reality systems and methods
GB2552935B (en) * 2016-08-04 2020-01-01 Sony Interactive Entertainment Inc Device and method of analysing an object for 3D printing
KR102561860B1 (ko) * 2016-10-25 2023-08-02 삼성전자주식회사 전자장치 및 그 제어방법
EP3571845B1 (en) 2017-01-20 2021-06-30 PCMS Holdings, Inc. Field-of-view prediction method based on contextual information for 360-degree vr video
CN106693367B (zh) 2017-01-25 2020-05-05 腾讯科技(深圳)有限公司 一种在客户端显示数据的处理方法和服务器以及客户端
TWI721670B (zh) * 2017-04-21 2021-03-11 美商時美媒體公司 用於藉由預測運動向量及/或快取重複運動向量的玩家輸入運動補償的系統及方法
KR101897704B1 (ko) * 2017-09-25 2018-10-29 넷마블 주식회사 게임 서비스 제공 장치 및 방법
CN107861814B (zh) 2017-10-31 2023-01-06 Oppo广东移动通信有限公司 资源配置方法及设备
US10937220B2 (en) * 2019-04-22 2021-03-02 Disney Enterprises, Inc. Animation streaming for media interaction
EP3736690B1 (en) * 2019-05-07 2022-07-27 Ningbo Geely Automobile Research & Development Co. Ltd. Computer game software downloading
CN113289330B (zh) * 2020-02-21 2023-12-08 华为技术有限公司 渲染方法和装置
CN111494947B (zh) * 2020-04-20 2023-05-23 上海米哈游天命科技有限公司 摄像机移动轨迹确定方法、装置、电子设备及存储介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080207322A1 (en) * 2005-03-21 2008-08-28 Yosef Mizrahi Method, System and Computer-Readable Code For Providing a Computer Gaming Device
US20110096089A1 (en) * 2009-10-22 2011-04-28 Samsung Electronics Co., Ltd. Method and device for real time 3d navigation in panoramic images and cylindrical spaces
CN102113003A (zh) * 2008-06-03 2011-06-29 索尼电脑娱乐公司 用于交互式环境的辅助内容资产的基于提示的流式传输
CN102145228A (zh) * 2010-02-05 2011-08-10 Pc概念有限公司 使用视频录像构建交互式视频游戏的方法和装置
US20120004041A1 (en) * 2008-12-15 2012-01-05 Rui Filipe Andrade Pereira Program Mode Transition
CN102656542A (zh) * 2009-12-17 2012-09-05 微软公司 用于演示的相机导航
CN102763097A (zh) * 2009-11-09 2012-10-31 美国索尼电脑娱乐有限责任公司 用于对等协作游戏的等级服务器系统
WO2013006802A1 (en) * 2011-07-06 2013-01-10 Microsoft Corporation Predictive, multi-layer caching architectures
US20130344966A1 (en) * 2011-02-08 2013-12-26 Awais I MUSTAFA Method and system for providing video game content

Family Cites Families (70)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5838909A (en) 1996-05-23 1998-11-17 Sandcastle, Inc. Reducing latency when synchronizing access to a multi-user database over a network
US6758755B2 (en) 1996-11-14 2004-07-06 Arcade Planet, Inc. Prize redemption system for games executed over a wide area network
US6038599A (en) 1997-04-23 2000-03-14 Mpath Interactive, Inc. Latency server and matchmaker
US6356288B1 (en) 1997-12-22 2002-03-12 U.S. Philips Corporation Diversion agent uses cinematographic techniques to mask latency
US6415317B1 (en) 1999-10-01 2002-07-02 Joshua Michael Yelon Software system for reducing the appearance of latency in a multi-user environment
US6377257B1 (en) 1999-10-04 2002-04-23 International Business Machines Corporation Methods and apparatus for delivering 3D graphics in a networked environment
WO2001036061A1 (en) 1999-11-16 2001-05-25 Sony Electronics, Inc. System and method for leveraging data into a game platform
US6884172B1 (en) 2000-10-25 2005-04-26 Ngame Limited Electronic game system
US7587520B1 (en) 2001-01-24 2009-09-08 3Dlabs Inc. Ltd. Image display system with visual server
US6475090B2 (en) 2001-03-29 2002-11-05 Koninklijke Philips Electronics N.V. Compensating for network latency in a multi-player game
US7580972B2 (en) 2001-12-12 2009-08-25 Valve Corporation Method and system for controlling bandwidth on client and server
US7277946B2 (en) 2002-06-28 2007-10-02 Microsoft Corporation Distributed session listing and content discovery
US7603406B2 (en) 2002-07-25 2009-10-13 Sony Corporation System and method for wireless software download and remote transaction settlement
US20040030882A1 (en) 2002-08-08 2004-02-12 Forman George Henry Managed application pre-launching
US20040082388A1 (en) 2002-10-23 2004-04-29 Simsek Burc A. Apparatus and method for incorporation of external digital or analog information in computer and console gaming environments
US9032465B2 (en) 2002-12-10 2015-05-12 Ol2, Inc. Method for multicasting views of real-time streaming interactive video
US20090118019A1 (en) 2002-12-10 2009-05-07 Onlive, Inc. System for streaming databases serving real-time applications used through streaming interactive video
US20040135805A1 (en) 2003-01-10 2004-07-15 Gottsacker Neal F. Document composition system and method
US7076616B2 (en) 2003-03-24 2006-07-11 Sony Corporation Application pre-launch to reduce user interface latency
JP3632963B2 (ja) 2003-05-29 2005-03-30 コナミ株式会社 ネットワーク対戦型端末装置、方法及びプログラム
JP2007514494A (ja) 2003-12-19 2007-06-07 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ インタラクティブビデオ
KR100475881B1 (ko) 2004-04-08 2005-03-14 엔에이치엔(주) 사용자별 행태에 따라 게임 채널을 랜덤하게 할당하는인터넷 게임 서비스 시스템 및 그 방법
CN101023658A (zh) 2004-08-31 2007-08-22 椎名一博 伴有通话的推送型信息通信系统
US20060135258A1 (en) 2004-12-17 2006-06-22 Nokia Corporation System, network entity, client and method for facilitating fairness in a multiplayer game
US8038535B2 (en) 2005-05-17 2011-10-18 Electronic Arts Inc. Collaborative online gaming system and method
US9566522B2 (en) 2005-05-27 2017-02-14 Nokia Technologies Oy Device, method, and computer program product for customizing game functionality using images
US20110157196A1 (en) 2005-08-16 2011-06-30 Exent Technologies, Ltd. Remote gaming features
US7889669B2 (en) 2005-09-26 2011-02-15 Alcatel Lucent Equalized network latency for multi-player gaming
US20070093297A1 (en) 2005-10-26 2007-04-26 Waterleaf Ltd. On-line, real-time game playing with search facility
US20070173325A1 (en) 2006-01-20 2007-07-26 Microsoft Corporation Join in-progress on-line game session
WO2007119236A2 (en) 2006-04-13 2007-10-25 Yosef Mizrachi Method and apparatus for providing gaming services and for handling video content
US8888592B1 (en) 2009-06-01 2014-11-18 Sony Computer Entertainment America Llc Voice overlay
US8087017B1 (en) 2007-04-09 2011-12-27 Moka5, Inc. Trace-assisted prefetching of virtual machines in a distributed system
WO2009039418A1 (en) 2007-09-21 2009-03-26 Sony Computer Entertainment Inc. Network delivery of entertainment software
US9142097B2 (en) 2007-10-26 2015-09-22 Igt Gaming system and method for providing play of local first game and remote second game
US8979647B2 (en) 2007-10-26 2015-03-17 Microsoft Technology Licensing, Llc Method of providing player status and ability to join games
JP4408929B2 (ja) 2007-11-22 2010-02-03 株式会社スクウェア・エニックス オンラインゲームシステム
US8968087B1 (en) 2009-06-01 2015-03-03 Sony Computer Entertainment America Llc Video game overlay
US8613673B2 (en) 2008-12-15 2013-12-24 Sony Computer Entertainment America Llc Intelligent game loading
US20090215538A1 (en) 2008-02-22 2009-08-27 Samuel Jew Method for dynamically synchronizing computer network latency
US20090247295A1 (en) 2008-03-31 2009-10-01 Weldon Marcus K Network-Based Methods and Apparatus for Rendering Images to an End User
US8264493B2 (en) 2008-05-12 2012-09-11 Playcast Media Systems, Ltd. Method and system for optimized streaming game server
US8926435B2 (en) 2008-12-15 2015-01-06 Sony Computer Entertainment America Llc Dual-mode program execution
US8430755B2 (en) 2008-12-15 2013-04-30 Tetris Online, Inc. Interactive asynchronous game play architecture
US8444490B2 (en) 2008-12-15 2013-05-21 Tetris Online, Inc. Interactive asynchronous game offline play architecture
US20100199231A1 (en) 2009-01-30 2010-08-05 Microsoft Corporation Predictive determination
US8719336B2 (en) 2009-02-03 2014-05-06 Microsoft Corporation Method and apparatus for thwarting traffic analysis in online games
US8151199B2 (en) 2009-02-09 2012-04-03 AltEgo, LLC Computational delivery system for avatar and background game content
US9723319B1 (en) 2009-06-01 2017-08-01 Sony Interactive Entertainment America Llc Differentiation for achieving buffered decoding and bufferless decoding
US20110025689A1 (en) 2009-07-29 2011-02-03 Microsoft Corporation Auto-Generating A Visual Representation
US20110055135A1 (en) 2009-08-26 2011-03-03 International Business Machines Corporation Deferred Teleportation or Relocation in Virtual Worlds
EP2319597A1 (en) 2009-10-13 2011-05-11 Crytek GmbH A system of providing data for entertaining presentations to at least one audience
US8313377B2 (en) 2009-10-14 2012-11-20 Sony Computer Entertainment America Llc Playing browser based games with alternative controls and interfaces
US20110162004A1 (en) 2009-12-30 2011-06-30 Cevat Yerli Sensor device for a computer-controlled video entertainment system
US9486701B2 (en) 2009-12-30 2016-11-08 Crytek Gmbh Computer-controlled video entertainment system
US9400695B2 (en) 2010-02-26 2016-07-26 Microsoft Technology Licensing, Llc Low latency rendering of objects
EP2365470A1 (en) 2010-03-09 2011-09-14 Crytek GmbH A multi-user computer-controlled advertisement presentation system and a method of providing user and advertisement related data
US20110250949A1 (en) 2010-04-07 2011-10-13 Van Os Marcel Methods and systems for providing a game center having player specific options and game access
US8366526B2 (en) 2010-04-16 2013-02-05 Disney Enterprises, Inc. Power play game mechanics
CN110336850B (zh) 2010-09-13 2022-08-09 索尼互动娱乐美国有限责任公司 附加组件管理
US8668582B1 (en) 2010-09-17 2014-03-11 Amazon Technologies, Inc. Accommodating latency in a server-based application
US20120079095A1 (en) 2010-09-24 2012-03-29 Amazon Technologies, Inc. Cloud-based device synchronization
JP5076132B1 (ja) 2011-05-25 2012-11-21 株式会社スクウェア・エニックス・ホールディングス 描画制御装置、その制御方法、プログラム、記録媒体、描画サーバ、及び描画システム
US8823745B2 (en) 2011-06-02 2014-09-02 Yoostar Entertainment Group, Inc. Image processing based on depth information and color data of a scene
US8176437B1 (en) 2011-07-18 2012-05-08 Google Inc. Responsiveness for application launch
US9250966B2 (en) 2011-08-11 2016-02-02 Otoy, Inc. Crowd-sourced video rendering system
US9864632B2 (en) 2011-08-17 2018-01-09 Open Invention Network, Llc System and method for transfer of an application state between devices
US20130225287A1 (en) 2012-02-28 2013-08-29 Zynga Inc. Synchronous and asynchronous game modes
US8661491B1 (en) 2012-08-02 2014-02-25 Ericsson Television Inc. Methods using base content and additive content and related client devices and network server devices
US9717982B2 (en) 2012-12-21 2017-08-01 Microsoft Technology Licensing, Llc Client rendering of latency sensitive game features

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080207322A1 (en) * 2005-03-21 2008-08-28 Yosef Mizrahi Method, System and Computer-Readable Code For Providing a Computer Gaming Device
CN102113003A (zh) * 2008-06-03 2011-06-29 索尼电脑娱乐公司 用于交互式环境的辅助内容资产的基于提示的流式传输
US20120004041A1 (en) * 2008-12-15 2012-01-05 Rui Filipe Andrade Pereira Program Mode Transition
US20110096089A1 (en) * 2009-10-22 2011-04-28 Samsung Electronics Co., Ltd. Method and device for real time 3d navigation in panoramic images and cylindrical spaces
CN102763097A (zh) * 2009-11-09 2012-10-31 美国索尼电脑娱乐有限责任公司 用于对等协作游戏的等级服务器系统
CN102656542A (zh) * 2009-12-17 2012-09-05 微软公司 用于演示的相机导航
CN102145228A (zh) * 2010-02-05 2011-08-10 Pc概念有限公司 使用视频录像构建交互式视频游戏的方法和装置
US20130344966A1 (en) * 2011-02-08 2013-12-26 Awais I MUSTAFA Method and system for providing video game content
WO2013006802A1 (en) * 2011-07-06 2013-01-10 Microsoft Corporation Predictive, multi-layer caching architectures

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108122127A (zh) * 2016-11-29 2018-06-05 韩国电子通信研究院 预测在线游戏服务的运行结果的方法及装置
CN110366440A (zh) * 2017-01-09 2019-10-22 索尼互动娱乐股份有限公司 用户分析系统和方法
CN110366440B (zh) * 2017-01-09 2023-08-29 索尼互动娱乐股份有限公司 用户分析系统和方法

Also Published As

Publication number Publication date
US20140267429A1 (en) 2014-09-18
CN105209137B (zh) 2018-07-10
EP2969081A1 (en) 2016-01-20
WO2014159256A1 (en) 2014-10-02
US9564102B2 (en) 2017-02-07
EP2969081B1 (en) 2018-04-25

Similar Documents

Publication Publication Date Title
CN105209137A (zh) 远程游戏环境中玩家移动的客户端侧处理
CN105188867B (zh) 远程游戏环境中角色交互的客户端侧处理
US10380798B2 (en) Projectile object rendering for a virtual reality spectator
US10424077B2 (en) Maintaining multiple views on a shared stable virtual space
CN105050671B (zh) 等待时间敏感的游戏特征的客户端渲染系统和方法
CN105843396B (zh) 在共享的稳定虚拟空间上维持多视图的方法
EP2374514A2 (en) Image generation system, image generation method, and information storage medium
TWI786700B (zh) 利用第二螢幕裝置掃描3d物件以插入虛擬環境中
CN107469343B (zh) 虚拟现实交互方法、装置及系统
US11839814B2 (en) Systems and methods for controlling camera perspectives, movements, and displays of video game gameplay
JP2009240498A (ja) プログラム、情報記憶媒体、ゲームシステム
US12005357B2 (en) Systems and methods for controlling camera movements between storylines in a video game
WO2022227936A1 (zh) 虚拟场景的显示方法、虚拟场景的处理方法、装置及设备
WO2021061405A1 (en) Artificial intelligence (ai) controlled camera perspective generator and ai broadcaster
US11285390B2 (en) Artificial intelligence (AI) controlled camera perspective generator and AI broadcaster
US20230040737A1 (en) Method and apparatus for interaction processing of virtual item, electronic device, and readable storage medium
CN114225416A (zh) 游戏控制方法及装置
JP7359558B2 (ja) プログラム、画像生成装置および画像生成方法
JP2014061039A (ja) プログラム、情報記憶媒体、ゲーム装置及びサーバ装置
JP2011255114A (ja) プログラム、情報記憶媒体及び画像生成システム

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant