改善在线游戏的预测的方法与系统的制作方法

文档序号:6532949阅读:115来源:国知局
改善在线游戏的预测的方法与系统的制作方法
【专利摘要】一种改善例如在线游戏的预测的方法与系统,所述方法包括以下步骤:随时间变化从至少一个传感器接收的数值中进行采样;将所采样的数值与传感器数值的至少一个预定的模式相比较;以及鉴别一组所采样的数值是否至少部分地匹配至少一个预定的模式;其中,所采样的传感器数值至少部分地对应于由至少一个传感器所感知的非指令输入相关的运动,且传感器数值的预定模式是被预期为先于给出的指令输入。
【专利说明】改善在线游戏的预测的方法与系统
[0001]【技术领域】与

【背景技术】
[0002]本发明涉及在线游戏、监控系统、刺激器(刺激物)和其他应用的预测,尤其是涉及用于改善基于预先输入的运动、姿势、程序等的预测的方法与系统,这些预测“透露出”用户的意图,并能被用于在用户实际进行该动作或者完成该动作之前预测用户的动作。
[0003]“游戏控制器”是一种与游戏或娱乐系统共同使用的装置,以提供输入到视频游戏,通常用于控制在游戏中的对象或字符。控制器通常是通过线缆或电源线连接到游戏控制台或者电脑,虽然无线控制器也是广泛使用的。已经被分类为游戏控制器的输入设备包括:键盘、鼠标、游戏板、游戏操纵杆等。特殊目的的设备,例如用于驾驶游戏的方向盘和用于射击游戏的光枪,也是游戏控制器。
[0004]“视频游戏控制台”是一种交互式娱乐电脑或者产生视频播放信号的定制的电脑系统,它能与显示设备(电视机、监视器等)一起使用以显示视频游戏。
[0005]“人机交互设备” (HID)是一种类型的电脑设备,它能直接与人进行交互作用,大多数经常从人获取输入,并可将输出传递到人。
[0006]总的来说,游戏包括循环的一系列状态或者“帧”。在每个帧期间,游戏接受用户输入,进行必要的计算(Al、制图等)。当所有处理已被完成时,该游戏将更新游戏状态,并产生一个输出,例如在屏幕上以新的图像的方式输出,和/或将信息包发送到服务器。产生帧的频率通常是指帧的速率。
[0007]在在线游戏中,“滞后(lag) ”是在游戏者的动作与服务器的反应之间的可察觉的迟延。虽然由于高的通讯潜伏期可导致滞后,也可以是由于在客户端和/或服务器和/或在服务器上的非优化构造和/或任意终端设备的处理能量不足而导致滞后。而且,潜伏期不是恒定的,而是波动的导致称为“跳动(jitter)”的现象。用于处理跳动的大多数普遍使用的解决方案是创建更大的缓存以致该系统具有更多时间来运行平滑算法来使游戏平滑。更大缓存的结果是:具有增加的潜伏期,但至少该潜伏期是恒定的。
[0008]对于整个滞后(潜伏期的所有部分和缓存以减缓跳动)的容忍度主要取决于游戏的类型。例如,具有低步调的策略游戏或者回合制游戏可以具有高的阈值,或者甚至通常不受高迟延的影响,而“短促反应(twitch gameplay) ”游戏,例如具有显著较高步调的第一人称射击游戏,会要求显著较低的迟延以便能够提供令人满意的游戏反应。
[0009]解决方案与滞后补偿
[0010]有多种不同方法用于减少或掩盖迟延:
[0011]客户端
[0012]尽管客户端通常不允许定义主要的游戏状态,而是从服务器接收游戏状态,客户端补偿的主要任务是尽可能精确地表现虚拟世界。尽管更新伴随迟延,甚至是被降低的,有时需要客户端来预测游戏的流向。因为该状态是以离散步骤来更新的,客户端必须能够基于可用的样本来估计运动。
[0013]因此,“客户端预测”可被定义为在视频游戏中采用的一种网络程序技术,以便试图掩盖高潜伏期连接的负效应。该技术试图使得游戏者输入感觉更瞬间完成,同时在远程服务器上管理游戏者的动作。两种基础方法能被用于获得这样的效果:外推法和内插法。
[0014]外推法是试图估计未来的游戏状态。只要接收到来自服务器的信息包,对象的位置将被更新到新的位置。等候下一次更新时,下一个位置是基于当前位置和更新时的运动来推断的。基本上,客户端可假设:运动的对象将会继续在相同的方向上运动。当接收到新的信息包,该位置可被稍微校正。
[0015]内插法基本上是通过对游戏状态进行缓冲,并将游戏状态以微小的、恒定的迟延呈现给游戏者而起作用。当来自服务器的信息包到达时,代替对象位置的立即更新,客户端将会启动插入该位置,从最后已知的位置开始插入。在插入间隙之上,所述将可被呈现为在两个位置之间平滑地移动。理想地,这个间隙可精确地匹配在信息包之间的迟延,但由于损失和可变的迟延,这种情形很少见。两种方法都有优点和缺点。
[0016]内插法确保对象将仅在有效位置之间移动,并将会产生具有恒定迟延且没有损失。将会落下或者无序的信息包溢出内插缓存,客户端将不得不将对象冻结在合适的位置直到新的信息包到达,或者回归为外推法。
[0017]外推位置的问题是相当明显的:它不可能精确地预测未来。它仅当运动是恒定时,才能够正确地表现运动,但运动并不总是恒定的。游戏者可随机改变速度和方向。这样会导致出现小量的“扭曲(warping) ”或“折断(snapping) ”,尽管新的更新到达且估计的位置被校正,也会在命中检测中出现问题,尽管游戏者可被提供在他们实际上并不在的合适的位置。
[0018]通常,为了使得能够平滑反应,客户端需要对于游戏状态做出软改变。虽然服务器可最终保持弹药的轨道、健康、位置等,客户端可被允许基于游戏者的动作来预测新的服务器端游戏状态,例如,使得游戏者在服务器已经响应指令之前开始移动。总体上,这些改变会在通常条件下被接受,并使得延迟更为明显。当客户端预测是非常显然不能由服务器来完成时,问题会仅在高度延迟或者损失的情况下产生。有时,在微小差别的情况下,服务器甚至可以允许基于来自客户端的更新对所述状态进行“不正确的”改变。
[0019]服务器端
[0020]与客户端不同,服务器知道精确的当前游戏状态,尽管这样的预测是不必要的。服务器端滞后补偿的主要目的是代替提供客户端动作的准确效果。这是重要的,因为随着时间变化,游戏者的指令已经到达的时间将已经移动,而世界将不会处于当游戏者发出他们的指令时所看到的状态。这个非常明确的例子是对于在第一人称射击游戏武器开火的命中检测,如果不正确地处理时,即使边缘是小的,也能潜在地导致明显的问题。
[0021]直到现在,客户端预测,以及任意其他预测的解决方案,已经被局限为基于用户输入和基于游戏的目标的速度和加速度的运动的预测,当来自游戏者输入的更新最终到达服务器时,该游戏的状态将会在服务器上,并将处于该状态的游戏呈现给游戏者。换言之,游戏者的客户端系统在服务器已经知道用户输入并已经更新游戏状态之前本地地对该用户输入做出反应,这样做是为了预测游戏状态。
[0022]在其他服务器-客户端游戏格式,服务器完成所有计算并将预测状态发送游戏者。这些预测也是基于客户指令而且基于游戏引擎程序。
[0023]一种用于预测用户的意图而不是用户的实际输入的方法与系统,或者至少是在用户已经完成输入用户输入之前预测用户的意图的方法与系统,是具有较高优势的。


【发明内容】

[0024]本发明使得进一步减轻延迟/滞后,通过预测和影响使用者在实际提供输入或者完成提供输入之前的输入。
[0025]根据本发明所述,提供了一种用于改善预测的方法,例如用于改善在线游戏的预测的方法,所述方法包括以下步骤:随时间变化从至少一个传感器接收的数值中进行采样;将所采样的数值与传感器数值的至少一个预定的模式相比较;以及鉴别一组所采样的数值是否至少部分地匹配至少一个预定的模式;其中,所采样的传感器数值至少部分地对应于由至少一个传感器所感知的非指令输入相关的运动;所述传感器数值的预定模式是被预期为先于给出的指令输入。
[0026]根据本发明下面所述的优选实施例中的进一步特征,所述的方法还包括以下步骤:将所鉴别的采样数值组发送到中央预测单元。
[0027]根据在优选【具体实施方式】中所述的进一步的特征,所述的方法还包括以下步骤:评估所鉴别的采样数值组将会先于给出的指令输入的可能性的水平;以及将所鉴别的采样数值组与所评估的可能性的水平一起发送到中央预测单元;或者基于至少部分的所鉴别的采样数值组与所评估的可能性的水平来创建预测状态。
[0028]根据进一步的特征,所述中央预测单元是被定位在远程服务器或客户端设备上。
[0029]根据进一步的特征,所述的方法还包括以下步骤:基于相关的采样传感器数值,更新所述传感器数值的预定模式。
[0030]根据进一步的特征,所述传感器数值的预定模式还包括对应于一系列至少一些所述指令输入的传感器数值。
[0031]根据进一步的特征,所述的方法还包括以下步骤:鉴别对应于指令输入的一系列所采样的数值是否匹配于所述预定的模式。
[0032]根据进一步的特征,所述的方法还包括以下步骤:在用户对所述给出的指令输入产生影响之前,基于所采样的传感器数值对于所述用户创建独特的轮廓。
[0033]根据另一个【具体实施方式】,提供了一种用于改善预测的客户端系统,所述系统包括:(a)用于从用户接收指令输入的人输入设备(HID) ; (b)至少一个传感器,被配置为感知所述用户的运动;以及(C)应用逻辑程序,适合于接收和处理来自所述至少一个传感器的传感器数值,并基于所述传感器数值将预测数据发送到中央预测单元;其中,所接收的传感器数值是与传感器数值的至少一个预定模式进行比较,所述传感器数值的预定模式对应于在输入所述指令输入之前影响的运动;以及传感器数值至少部分地匹配所述预定模式,导致所述应用逻辑程序将预测数据发送到中央预测单元,所述预测数据是预测与所匹配的预定模式相关的指令输入。
[0034]根据进一步的特征,所述运动是至少部分地非指令输入相关的运动。
[0035]根据进一步的特征,所述中央预测单元是被定位在远程服务器上。

【专利附图】

【附图说明】
[0036]这里将仅通过实施例的方式结合所附的附图来描述多种不同的【具体实施方式】,在这些附图中:
[0037]图1是用于处理的在常规间隔采样的所感知的输入的示意图;
[0038]图2是将所鉴别的初始模式和可能性以及所感知的实际游戏者输入指令一起发送的应用程序的示意图。

【具体实施方式】
[0039]根据本发明所述的预测方法与系统的原理和操作可参考附图以及相关的描述而得以清楚的理解。
[0040]现在参考附图,图1显示了用于处理的在常规间隔采样的所感知的输入的示意图。游戏者使用输入设备(HID)来输入在他们的客户端系统上的游戏动作。这样的输入设备的例子包括:鼠标或者游戏操纵杆,用于与个人电脑进行交互,以及平板电脑的触摸屏,例如iPad?。采用这样的设备输入游戏动作或者指令的过程包括:在游戏动作(或者指令)被实际输入之前的一些初步运动。这些初步运动或动作可通过一种或另一种客户端机构(传感器)来检测,这些机构能检测多种不同的游戏者活动。例如,采用鼠标的游戏者需要移动鼠标以致在显示屏上的光标是处于正确的位置,然后点击其中一个鼠标键以输入游戏动作。鼠标在到达合适位置途中的转换和旋转,开始相对较快,然后变慢,当游戏者使鼠标接近于想要的位置时。鼠标键的按压是通过鼠标的细微振动来进行的。
[0041]根据本发明所述,游戏应用程序(总体上定位于客户端设备)知道在游戏者的运动之间的联系,正如通过鼠标或者任意其他输入设备所感知的,当游戏者开始玩游戏时,游戏应用程序也知道最终游戏动作输入。在一些【具体实施方式】中,现有的在游戏设备(例如加速器)上可用的背景传感器,但不是被用作所定义的输入设备,仍能不断地在背景中允许,并收集正在进行中的基础上的数据。这个数据可被用于使用户意图有效。游戏应用程序可预定或获得与游戏的期望(可用)活动相关联的总体模式。
[0042]非指令运动的预定模式和/或由游戏者作出的指令输入顺序包括:精确的模式值在该模式的定义范围内的可接受的背离(除非在上下文中另外解释)。因此,在实际输入指令之前,用户做出的初始运动的总体模式包括:该模式在可接受的(和预定的)参数范围内的可接收的背离。这些背离可以是例如:关于这些数值(例如非简单的I或0,而是给出的数值,可以是正负2或3或类似的“背离”)或者这样的事实:该模式的仅一些数值是存在的,而其他数值不存在,等等。
[0043]本地游戏应用程序将获知游戏者活动,并重新定义总体模式以匹配游戏者的实际行为。当游戏应用程序已经认识游戏者的鼠标运动轨迹,具有足够精确度来预测,在百毫秒的级别,在游戏者实际输入游戏动作之前,游戏动作的内容将会被转送到中央预测单元,该单元通常定位在游戏服务器上。预测动作或指令的能力实际上可以是更微妙。也就是说,随着时间变化,给定顺序的可能性将会导致期望动作满意地增加。然后,这个信息是被包括在总的预测过程(通过中央预测单元来计算,该单元或者定位于远程游戏服务器,或者定位于本地客户端应用程序上)中作为信息的附加来源,但不是绝对确定的。在其他具体实施例中,客户端应用程序可以是独立模块,仅基于初步运动或模式来预测。
[0044]根据本发明所述,由输入机构(HID)的传感器A、B、C(例如,加速器、照相机等)测量的数值是周期性采样的,或者由于触发事件而采样。所采样的数值是已处理的(P)以找到对应于预定初步顺序的模式,该初步顺序是被预期为终止于用户输入指令L到游戏中。
[0045]在时间点t0,数值Α0、Β0和CO是被发送用于处理P。在时间点tl,数值A1、B1和Cl是被发送用于处理P,等等。
[0046]实施例1-表1.1
[0047]

【权利要求】
1.一种用于改善预测的方法,所述方法包括以下步骤: (a)随时间变化从至少一个传感器接收的数值中进行采样; (b)将所采样的数值与传感器数值的至少一个预定的模式相比较;以及 (C)鉴别一组所采样的数值是否至少部分地匹配至少一个预定的模式; 其中,所采样的传感器数值至少部分地对应于由至少一个传感器所感知的非指令输入相关的运动; 所述传感器数值的预定模 式是被预期为先于给出的指令输入。
2.根据权利要求1所述的方法,还包括以下步骤: (d)将所鉴别的采样数值组发送到中央预测单元。
3.根据权利要求1所述的方法,还包括以下步骤: (d)评估所鉴别的采样数值组将会先于给出的指令输入的可能性的水平。
4.根据权利要求3所述的方法,还包括以下步骤: (e)将所鉴别的采样数值组与所评估的可能性的水平一起发送到中央预测单元。
5.根据权利要求4所述的方法,其特征在于:所述中央预测单元是被定位在远程服务器上。
6.根据权利要求4所述的方法,其特征在于:所述中央预测单元是被定位在客户端设备上。
7.根据权利要求3所述的方法,还包括以下步骤: (e)基于至少部分的所鉴别的采样数值组与所评估的可能性的水平来创建预测状态。
8.根据权利要求1所述的方法,还包括以下步骤: (d)基于相关的采样传感器数值,更新所述传感器数值的预定模式。
9.根据权利要求1所述的方法,其特征在于:所述传感器数值的预定模式还包括对应于一系列至少一些所述指令输入的传感器数值。
10.根据权利要求1所述的方法,还包括以下步骤: (d)鉴别对应于指令输入的一系列所采样的数值是否匹配于所述预定的模式。
11.根据权利要求1所述的方法,还包括以下步骤: (d)在用户对所述给出的指令输入产生影响之前,基于所采样的传感器数值对于所述用户创建独特的轮廓。
12.一种用于改善预测的客户端系统,所述系统包括: (a)用于从用户接收指令输入的人输入设备(HID); (b)至少一个传感器,被配置为感知所述用户的运动;以及 (c)应用逻辑程序,适合于接收和处理来自所述至少一个传感器的传感器数值,并基于所述传感器数值将预测数据发送到中央预测单元; 其中,所接收的传感器数值是与传感器数值的至少一个预定模式进行比较,所述传感器数值的预定模式对应于在输入所述指令输入之前影响的运动;以及 传感器数值至少部分地匹配所述预定模式,导致所述应用逻辑程序将预测数据发送到中央预测单元,所述预测数据是预测与所匹配的预定模式相关的指令输入。
13.根据权利要求12所述的系统,其特征在于:所述运动是至少部分地非指令输入相关的运动。
14.根据权利要求12所述的系统,其特征在于:所述中央预测单元是被定位在远程服务器 上。
【文档编号】G06F3/033GK104081321SQ201380007794
【公开日】2014年10月1日 申请日期:2013年1月31日 优先权日:2012年2月1日
【发明者】约瑟夫·米兹腊希 申请人:约瑟夫·米兹腊希
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1