CN104081321A - 改善在线游戏的预测的方法与系统 - Google Patents

改善在线游戏的预测的方法与系统 Download PDF

Info

Publication number
CN104081321A
CN104081321A CN201380007794.8A CN201380007794A CN104081321A CN 104081321 A CN104081321 A CN 104081321A CN 201380007794 A CN201380007794 A CN 201380007794A CN 104081321 A CN104081321 A CN 104081321A
Authority
CN
China
Prior art keywords
numerical value
sensor values
instruction
sensor
game
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.)
Pending
Application number
CN201380007794.8A
Other languages
English (en)
Inventor
约瑟夫·米兹腊希
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Publication of CN104081321A publication Critical patent/CN104081321A/zh
Pending legal-status Critical Current

Links

Classifications

    • 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/40Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
    • A63F13/42Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle
    • A63F13/422Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle automatically for the purpose of assisting the player, e.g. automatic braking in a driving game
    • 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/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/211Input arrangements for video game devices characterised by their sensors, purposes or types using inertial sensors, e.g. accelerometers or gyroscopes
    • 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/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/213Input arrangements for video game devices characterised by their sensors, purposes or types comprising photodetecting means, e.g. cameras, photodiodes or infrared cells
    • 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
    • A63F13/35Details of game servers
    • A63F13/358Adapting the game course according to the network or server load, e.g. for reducing latency due to different connection speeds between clients
    • 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/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • A63F13/67Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor adaptively or by learning from player actions, e.g. skill level adjustment or by storing successful combat sequences for re-use
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • G06N5/046Forward inferencing; Production systems
    • G06N5/047Pattern matching networks; Rete networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/131Protocols for games, networked simulations or virtual reality
    • 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/534Features 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 network load management, e.g. bandwidth optimization, latency reduction
    • 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/535Features 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 monitoring, e.g. of user parameters, terminal parameters, application parameters, network parameters
    • 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/60Methods for processing data by generating or executing the game program
    • A63F2300/6045Methods for processing data by generating or executing the game program for mapping control signals received from the input arrangement into game commands
    • A63F2300/6054Methods for processing data by generating or executing the game program for mapping control signals received from the input arrangement into game commands by generating automatically game commands to assist the player, e.g. automatic braking in a driving game

Abstract

一种改善例如在线游戏的预测的方法与系统,所述方法包括以下步骤:随时间变化从至少一个传感器接收的数值中进行采样;将所采样的数值与传感器数值的至少一个预定的模式相比较;以及鉴别一组所采样的数值是否至少部分地匹配至少一个预定的模式;其中,所采样的传感器数值至少部分地对应于由至少一个传感器所感知的非指令输入相关的运动,且传感器数值的预定模式是被预期为先于给出的指令输入。

Description

改善在线游戏的预测的方法与系统
技术领域与背景技术
本发明涉及在线游戏、监控系统、刺激器(刺激物)和其他应用的预测,尤其是涉及用于改善基于预先输入的运动、姿势、程序等的预测的方法与系统,这些预测“透露出”用户的意图,并能被用于在用户实际进行该动作或者完成该动作之前预测用户的动作。
“游戏控制器”是一种与游戏或娱乐系统共同使用的装置,以提供输入到视频游戏,通常用于控制在游戏中的对象或字符。控制器通常是通过线缆或电源线连接到游戏控制台或者电脑,虽然无线控制器也是广泛使用的。已经被分类为游戏控制器的输入设备包括:键盘、鼠标、游戏板、游戏操纵杆等。特殊目的的设备,例如用于驾驶游戏的方向盘和用于射击游戏的光枪,也是游戏控制器。
“视频游戏控制台”是一种交互式娱乐电脑或者产生视频播放信号的定制的电脑系统,它能与显示设备(电视机、监视器等)一起使用以显示视频游戏。
“人机交互设备”(HID)是一种类型的电脑设备,它能直接与人进行交互作用,大多数经常从人获取输入,并可将输出传递到人。
总的来说,游戏包括循环的一系列状态或者“帧”。在每个帧期间,游戏接受用户输入,进行必要的计算(AI、制图等)。当所有处理已被完成时,该游戏将更新游戏状态,并产生一个输出,例如在屏幕上以新的图像的方式输出,和/或将信息包发送到服务器。产生帧的频率通常是指帧的速率。
在在线游戏中,“滞后(lag)”是在游戏者的动作与服务器的反应之间的可察觉的迟延。虽然由于高的通讯潜伏期可导致滞后,也可以是由于在客户端和/或服务器和/或在服务器上的非优化构造和/或任意终端设备的处理能量不足而导致滞后。而且,潜伏期不是恒定的,而是波动的导致称为“跳动(jitter)”的现象。用于处理跳动的大多数普遍使用的解决方案是创建更大的缓存以致该系统具有更多时间来运行平滑算法来使游戏平滑。更大缓存的结果是:具有增加的潜伏期,但至少该潜伏期是恒定的。
对于整个滞后(潜伏期的所有部分和缓存以减缓跳动)的容忍度主要取决于游戏的类型。例如,具有低步调的策略游戏或者回合制游戏可以具有高的阈值,或者甚至通常不受高迟延的影响,而“短促反应(twitch gameplay)”游戏,例如具有显著较高步调的第一人称射击游戏,会要求显著较低的迟延以便能够提供令人满意的游戏反应。
解决方案与滞后补偿
有多种不同方法用于减少或掩盖迟延:
客户端
尽管客户端通常不允许定义主要的游戏状态,而是从服务器接收游戏状态,客户端补偿的主要任务是尽可能精确地表现虚拟世界。尽管更新伴随迟延,甚至是被降低的,有时需要客户端来预测游戏的流向。因为该状态是以离散步骤来更新的,客户端必须能够基于可用的样本来估计运动。
因此,“客户端预测”可被定义为在视频游戏中采用的一种网络程序技术,以便试图掩盖高潜伏期连接的负效应。该技术试图使得游戏者输入感觉更瞬间完成,同时在远程服务器上管理游戏者的动作。两种基础方法能被用于获得这样的效果:外推法和内插法。
外推法是试图估计未来的游戏状态。只要接收到来自服务器的信息包,对象的位置将被更新到新的位置。等候下一次更新时,下一个位置是基于当前位置和更新时的运动来推断的。基本上,客户端可假设:运动的对象将会继续在相同的方向上运动。当接收到新的信息包,该位置可被稍微校正。
内插法基本上是通过对游戏状态进行缓冲,并将游戏状态以微小的、恒定的迟延呈现给游戏者而起作用。当来自服务器的信息包到达时,代替对象位置的立即更新,客户端将会启动插入该位置,从最后已知的位置开始插入。在插入间隙之上,所述将可被呈现为在两个位置之间平滑地移动。理想地,这个间隙可精确地匹配在信息包之间的迟延,但由于损失和可变的迟延,这种情形很少见。两种方法都有优点和缺点。
内插法确保对象将仅在有效位置之间移动,并将会产生具有恒定迟延且没有损失。将会落下或者无序的信息包溢出内插缓存,客户端将不得不将对象冻结在合适的位置直到新的信息包到达,或者回归为外推法。
外推位置的问题是相当明显的:它不可能精确地预测未来。它仅当运动是恒定时,才能够正确地表现运动,但运动并不总是恒定的。游戏者可随机改变速度和方向。这样会导致出现小量的“扭曲(warping)”或“折断(snapping)”,尽管新的更新到达且估计的位置被校正,也会在命中检测中出现问题,尽管游戏者可被提供在他们实际上并不在的合适的位置。
通常,为了使得能够平滑反应,客户端需要对于游戏状态做出软改变。虽然服务器可最终保持弹药的轨道、健康、位置等,客户端可被允许基于游戏者的动作来预测新的服务器端游戏状态,例如,使得游戏者在服务器已经响应指令之前开始移动。总体上,这些改变会在通常条件下被接受,并使得延迟更为明显。当客户端预测是非常显然不能由服务器来完成时,问题会仅在高度延迟或者损失的情况下产生。有时,在微小差别的情况下,服务器甚至可以允许基于来自客户端的更新对所述状态进行“不正确的”改变。
服务器端
与客户端不同,服务器知道精确的当前游戏状态,尽管这样的预测是不必要的。服务器端滞后补偿的主要目的是代替提供客户端动作的准确效果。这是重要的,因为随着时间变化,游戏者的指令已经到达的时间将已经移动,而世界将不会处于当游戏者发出他们的指令时所看到的状态。这个非常明确的例子是对于在第一人称射击游戏武器开火的命中检测,如果不正确地处理时,即使边缘是小的,也能潜在地导致明显的问题。
直到现在,客户端预测,以及任意其他预测的解决方案,已经被局限为基于用户输入和基于游戏的目标的速度和加速度的运动的预测,当来自游戏者输入的更新最终到达服务器时,该游戏的状态将会在服务器上,并将处于该状态的游戏呈现给游戏者。换言之,游戏者的客户端系统在服务器已经知道用户输入并已经更新游戏状态之前本地地对该用户输入做出反应,这样做是为了预测游戏状态。
在其他服务器-客户端游戏格式,服务器完成所有计算并将预测状态发送游戏者。这些预测也是基于客户指令而且基于游戏引擎程序。
一种用于预测用户的意图而不是用户的实际输入的方法与系统,或者至少是在用户已经完成输入用户输入之前预测用户的意图的方法与系统,是具有较高优势的。
发明内容
本发明使得进一步减轻延迟/滞后,通过预测和影响使用者在实际提供输入或者完成提供输入之前的输入。
根据本发明所述,提供了一种用于改善预测的方法,例如用于改善在线游戏的预测的方法,所述方法包括以下步骤:随时间变化从至少一个传感器接收的数值中进行采样;将所采样的数值与传感器数值的至少一个预定的模式相比较;以及鉴别一组所采样的数值是否至少部分地匹配至少一个预定的模式;其中,所采样的传感器数值至少部分地对应于由至少一个传感器所感知的非指令输入相关的运动;所述传感器数值的预定模式是被预期为先于给出的指令输入。
根据本发明下面所述的优选实施例中的进一步特征,所述的方法还包括以下步骤:将所鉴别的采样数值组发送到中央预测单元。
根据在优选具体实施方式中所述的进一步的特征,所述的方法还包括以下步骤:评估所鉴别的采样数值组将会先于给出的指令输入的可能性的水平;以及将所鉴别的采样数值组与所评估的可能性的水平一起发送到中央预测单元;或者基于至少部分的所鉴别的采样数值组与所评估的可能性的水平来创建预测状态。
根据进一步的特征,所述中央预测单元是被定位在远程服务器或客户端设备上。
根据进一步的特征,所述的方法还包括以下步骤:基于相关的采样传感器数值,更新所述传感器数值的预定模式。
根据进一步的特征,所述传感器数值的预定模式还包括对应于一系列至少一些所述指令输入的传感器数值。
根据进一步的特征,所述的方法还包括以下步骤:鉴别对应于指令输入的一系列所采样的数值是否匹配于所述预定的模式。
根据进一步的特征,所述的方法还包括以下步骤:在用户对所述给出的指令输入产生影响之前,基于所采样的传感器数值对于所述用户创建独特的轮廓。
根据另一个具体实施方式,提供了一种用于改善预测的客户端系统,所述系统包括:(a)用于从用户接收指令输入的人输入设备(HID);(b)至少一个传感器,被配置为感知所述用户的运动;以及(c)应用逻辑程序,适合于接收和处理来自所述至少一个传感器的传感器数值,并基于所述传感器数值将预测数据发送到中央预测单元;其中,所接收的传感器数值是与传感器数值的至少一个预定模式进行比较,所述传感器数值的预定模式对应于在输入所述指令输入之前影响的运动;以及传感器数值至少部分地匹配所述预定模式,导致所述应用逻辑程序将预测数据发送到中央预测单元,所述预测数据是预测与所匹配的预定模式相关的指令输入。
根据进一步的特征,所述运动是至少部分地非指令输入相关的运动。
根据进一步的特征,所述中央预测单元是被定位在远程服务器上。
附图说明
这里将仅通过实施例的方式结合所附的附图来描述多种不同的具体实施方式,在这些附图中:
图1是用于处理的在常规间隔采样的所感知的输入的示意图;
图2是将所鉴别的初始模式和可能性以及所感知的实际游戏者输入指令一起发送的应用程序的示意图。
具体实施方式
根据本发明所述的预测方法与系统的原理和操作可参考附图以及相关的描述而得以清楚的理解。
现在参考附图,图1显示了用于处理的在常规间隔采样的所感知的输入的示意图。游戏者使用输入设备(HID)来输入在他们的客户端系统上的游戏动作。这样的输入设备的例子包括:鼠标或者游戏操纵杆,用于与个人电脑进行交互,以及平板电脑的触摸屏,例如iPadTM。采用这样的设备输入游戏动作或者指令的过程包括:在游戏动作(或者指令)被实际输入之前的一些初步运动。这些初步运动或动作可通过一种或另一种客户端机构(传感器)来检测,这些机构能检测多种不同的游戏者活动。例如,采用鼠标的游戏者需要移动鼠标以致在显示屏上的光标是处于正确的位置,然后点击其中一个鼠标键以输入游戏动作。鼠标在到达合适位置途中的转换和旋转,开始相对较快,然后变慢,当游戏者使鼠标接近于想要的位置时。鼠标键的按压是通过鼠标的细微振动来进行的。
根据本发明所述,游戏应用程序(总体上定位于客户端设备)知道在游戏者的运动之间的联系,正如通过鼠标或者任意其他输入设备所感知的,当游戏者开始玩游戏时,游戏应用程序也知道最终游戏动作输入。在一些具体实施方式中,现有的在游戏设备(例如加速器)上可用的背景传感器,但不是被用作所定义的输入设备,仍能不断地在背景中允许,并收集正在进行中的基础上的数据。这个数据可被用于使用户意图有效。游戏应用程序可预定或获得与游戏的期望(可用)活动相关联的总体模式。
非指令运动的预定模式和/或由游戏者作出的指令输入顺序包括:精确的模式值在该模式的定义范围内的可接受的背离(除非在上下文中另外解释)。因此,在实际输入指令之前,用户做出的初始运动的总体模式包括:该模式在可接受的(和预定的)参数范围内的可接收的背离。这些背离可以是例如:关于这些数值(例如非简单的1或0,而是给出的数值,可以是正负2或3或类似的“背离”)或者这样的事实:该模式的仅一些数值是存在的,而其他数值不存在,等等。
本地游戏应用程序将获知游戏者活动,并重新定义总体模式以匹配游戏者的实际行为。当游戏应用程序已经认识游戏者的鼠标运动轨迹,具有足够精确度来预测,在百毫秒的级别,在游戏者实际输入游戏动作之前,游戏动作的内容将会被转送到中央预测单元,该单元通常定位在游戏服务器上。预测动作或指令的能力实际上可以是更微妙。也就是说,随着时间变化,给定顺序的可能性将会导致期望动作满意地增加。然后,这个信息是被包括在总的预测过程(通过中央预测单元来计算,该单元或者定位于远程游戏服务器,或者定位于本地客户端应用程序上)中作为信息的附加来源,但不是绝对确定的。在其他具体实施例中,客户端应用程序可以是独立模块,仅基于初步运动或模式来预测。
根据本发明所述,由输入机构(HID)的传感器A、B、C(例如,加速器、照相机等)测量的数值是周期性采样的,或者由于触发事件而采样。所采样的数值是已处理的(P)以找到对应于预定初步顺序的模式,该初步顺序是被预期为终止于用户输入指令L到游戏中。
在时间点t0,数值A0、B0和C0是被发送用于处理P。在时间点t1,数值A1、B1和C1是被发送用于处理P,等等。
实施例1——表1.1
表1.1包括一个示例性的模式/模板,它具有一系列数值,这些数值匹配用户指令L。当该系列数值随时间t1-t3被测量,然后在时间t4,游戏者被期望为输入指令L。
在一些例子中,来自一些传感器的数值仅与一些时间具有关联。参见实施例2——表1.2。
实施例2——表1.2
如果随时间收集的数值匹配,则这是预期具有增加的可能性,游戏者在时间t4将会输入指令L。上述数据是通过客户端应用程序发送到中央预测单元,该单元通常是被定位在主游戏服务器上。
所述服务器预测单元将给出更大(统计的)重要性给初步过程,当游戏者随着时间再三地确认初步的过程。当有几个模式,它们具有相同初始阶段,不总是可能决定哪个是早期的真实或正确的过程。有必要考虑附加的数据,例如游戏的精确状态和对于这个步骤的相关指令或动作。该客户端应用程序能发送数据“asis”,并详细说明对于两个初步阶段的匹配,以及每个可能性是怎样的,如果可以量化这样的特性时。
图2显示了将所鉴别的初始模式和可能性以及所感知的实际游戏者输入指令一起发送的应用程序的示意图。
所预测的游戏动作(例如P0、P1、P2、P3)是被立即发送到服务器(也就是,分别在时间t0、t1、t2或t3期间),带有所有的游戏指令(例如V和G)。所预测的游戏动作(P0-P3)是与预测的精确的可能性(也就是几率)的水平一起发送。可期望的是,P0、P1、P2和P3将会预测相同的指令或动作,每个后续的预测具有精确度的增加的可能性。例如,如果一个模式包括15个数值,然后在第一组三个数值被采样之后,发送第一预测(P0),然后在下一组三个数值被采用之后(仅六个数值在总体上匹配预定的模式),第二个预测(P1)也被发送,其中,第二预测具有比第一预测更高的可能性。在下一个时间间隔,三个更多的数值匹配所采样的模式的下三个数值,第三个预测(P2)(包括9个数值匹配该模式),将具有比P0或P1更高的可能性。然而,如果所收集的数据不再匹配相同的模式时,预测能否被改变。服务器根据有限的更新指令而运行该游戏,并采用预测的游戏动作作为附加信息来创建该游戏的预测状态。当实际游戏移动到达服务器,游戏的状态是相应地更新的,类似于任意其他游戏指令。如果实际游戏移动与预期游戏动作不相同时,则新的预期将会被更新。这个不期望的预期视图可创建在游戏视图中的跳跃。如果不会损害游戏逻辑程序时,缓解机构将会改善该视图。缓解机构能定位在服务器端以及在客户设备上。
在服务器完成所有游戏计算的实施例中,客户端应用程序将游戏者的实际游戏动作和指令以及对动作意图的指示(这些指示甚至包括两个或更多的不同指示的游戏动作和那些游戏动作的时间设置的可能性,正如由客户端所计算的)发送到服务器。该服务器基于实际游戏指令和动作来计算游戏的逻辑。为了克服在整个过程中的潜伏期,该服务器也基于更新的游戏世界/状态对于客户的表现而创建游戏的状态,也考虑该服务器接收关于游戏者的意图的信息。
另一个实施例,在游戏者通过平板电脑的触摸屏的情形,输入是通过触摸触摸屏来进行,大多数初步运动,当游戏者的手指接近在触摸屏上想要的点,不能通过触摸屏而被感知,直到游戏者的手指实际接触触摸屏。如果平板电脑(例如iPadTM)包括加速器,用于游戏者的动作的预测的初步输入是来自加速器。如果平板电脑(例如iPad 2TM)包括照相机,用于游戏者的动作的预测的初步输入是来自照相机,采用在空间中检测对象的运动的应用程序。
在进一步的实施例中,在中央游戏引擎在网络上与游戏者连接的情形,该游戏是通过无线控制器(可能与游戏控制台配对)来进行玩耍的,游戏者在规则的时间间隔发送指令到服务器,这些时间间隔通常是等于游戏的帧速。在本创新系统中,发送用户指令以及游戏者意图的指示。无线控制器或游戏控制台是被配置为感知过剩的用户指令并识别预设的指令。即时应用程序也处理不能被识别为指令输入的传感器信息,以便识别游戏者的下一步动作或指令将会是怎样的初步指示。所述应用程序/机构能够识别这样的初步指示,通过将所感知的数据与预定的初步程序的模板或模式进行比较,这些预定的模板或模式参与了特定的游戏者输入、动作或者指令。当这样的模式被识别时,应用程序将发送包括模式的类型、在游戏时间线上的有意图的动作的位置以及游戏的步调等数据,以便正确地计算,通过游戏者输入实际指令而识别该模式,以及识别该将被实际执行的动作的可能性。
游戏服务器计算游戏状态以及对于游戏者的预测,并考虑关于初步程序的新信息以及具有在该游戏的一些或所有参数的这个信息/数据的影响。然后,该服务器创建游戏预测以便使得所有游戏者能具有一致的预测状态,它也可以是更精确的预测,虽然并不是最完美的预测。即时识别程序提供了对于在一段较长时间段内的较高精确度水平的预测。
改善预测的能力使得游戏者的系统/机构/应用程序能增加数据缓存尺寸,以致该应用程序能存储比最小数据需求更多的数据,当删除了在预测中发现的错误时,使得服务器发送校正的信息。然后,在游戏者设备上进行预测校正,此外,将进行内插程序,以便校正在缓存中不正确的数据,并在该数据上运行平滑算法,以致游戏者能在更精确预测的状态上进行玩耍,而图片将更平滑和没有跳动。
优选地,服务器计算用于克服整个或部分潜伏期的所预测的游戏状况是基于游戏者的意图,正如由客户端所计算的,作为最终分析数据被发送到服务器,除了游戏的运动和指令和游戏逻辑程序。较不可取地,因为大容量的数据将会必须被发送,客户端发送原始的删除的数据到服务器,服务器计算游戏者的意图。发送所有原始的传感器数据到服务器用于处理,这是不符合需要的,完全容量的数据将被传递——特别是来自多传感器输入设备——很有可能显著增加滞后(以及数据包的量下降或者另外在传输中损失),甚至需要具有与指定的线连接的较大带宽。
本发明创新的内容可被用作仅仅预测程序或者与另一个或其他预测解决方案相结合。
虽然不是100%精确,本发明创新的内容可改善预测的准确性,通过收集额外的数据来分析和预测用户的意图,而无需等待用户的游戏指令和/或游戏运动。这个解决方案对于几百毫秒的级别来说是非常好的。更多快速反应人的活动能被观察到和被呈现,尽管对于大多数人来说它们是非常类似的。
在所述系统的一个附加的示例性结构中,外部的传感器,例如与游戏服务器相接触的专用设备,能提供分离流的数据,例如,来自以下的数据:照相机、超声传感器、IR传感器、麦克风、热量传感器等,数据是在服务器端被处理的。外部设备可以被连接到输入设备,或者不连接到输入设备,用户以该输入设备来玩游戏。
外部传感器能考虑能直接或间接影响用户输入的任何本地信息(例如,感知干扰用户的宠物,用户是否站起或者躺下,或者感知增加的心率或血压等)。进一步感知的信息,例如用户是否单独在房间内,或者有同伴(朋友、明显的其他人、儿童),能全部或部分地加以考虑,并提供“心理上”的信息,除了前述的物理上的信息之外。潜在地,非指令运动的前述传感器数据处理能被在增强现实应用或虚拟现实应用中有效地实施。
一组游戏指令和/或运动可被定义为预测游戏动作(指令或运动或它们的任意组合)的模式。
在所述系统的一些具体实施例中,模式信息是由该系统从用户中收集的。该模式信息可被分析或另外用于更新预定的模式(也就是,重新定义总体模式)和/或创建新的总体模式。这个功能可由存储在非易失性存储器中的模块的认识应用程序来产生作用。
总的来说,所述系统和应用逻辑程序,无论是在客户端还是在服务器端,都能在硬件、软件、固件或它们的组合中进行实施。这些软件或固件是被存储在非易失性存储器中,是由合适的指令执行系统来执行,正如在本领域所熟知的指令执行系统。
在进一步的具体实施例中,当游戏应用程序已经认识到游戏者的鼠标运动轨迹、其他非指令的运动模式,或者指令输入的顺序和/或非指令运动,它们对于个别游戏者来说是独特的恶,这些预测数据可以其他方式而被应用。例如,非指令运动模式和/或输入指令顺序对于游戏者是独特的,可被用作独特的轮廓,该轮廓被用于验证:个别目前正在玩耍的用户是实际所识别的用户。这个程序可被用作安全校验机制,以及被应用于类似的用户是否需要识别的其他领域。
现代游戏控制台感知部分和完全的运动,并将这些运动转换为指令。这些控制台不会识别输入的一部分动作或指令的运动。本发明感知“电报”下一个运动或动作将会是什么的运动内容,甚至在该动作已经开始之前,或者至少在该动作被完成之前。
即使上述讨论已经聚焦于在线游戏的框架内的预测,必须强调的是,本发明也同样能被应用于监控系统、刺激器、附近的瞬时响应的远程交互(例如,航空器或类似物的遥控飞行)以及任意其他应用程序,其中传感器数据能被用于预测进一步的活动,基于这些运动,除了它们的动作之外——无论这些运动是在动作之前,还是在动作之后。(例如,人们能基于在球离开投球者的手之后的投球手的运动而预测如何进行玩板球。)
虽然本发明已经根据有限数量的实施例进行了说明,但是应当明确的是,本发明的许多变化、修饰或者其他应用方式也可以实现。因此,在所附的权利要求中所要求保护的发明并不限于这里所描述的具体实施方式。
权利要求书(按照条约第19条的修改)
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所述的系统,其特征在于:所述中央预测单元是被定位在远程服务器上。
15.一种用于改善预测的方法,所述方法包括以下步骤:
(a)随时间变化从至少一个传感器接收的数值中进行采样;
(b)从所采样的数值中计算数值;
(c)将所计算的数值与数值的至少一个预定的模式相比较;以及
(d)鉴别一组所计算的数值是否至少部分地匹配至少一个预定的模式;
其中,所述数值的至少一个预定模式是被预期为先于给出的指令输入。
16.根据权利要求15所述的方法,其特征在于:所述数值的至少一个预定模式包括选自以下组中的数值:所采样的数值、所计算的数值以及所采样的数值与所计算的数值的组合。
17.一种用于改善预测的方法,所述方法包括以下步骤:
(a)随时间变化从至少一个传感器接收的数值中进行采样,所采样的传感器数值至少部分地对应于由至少一个传感器所感知的非指令输入相关的运动;
(b)基于所采样的传感器数值来预测指令输入。
18.根据权利要求17所述的方法,还包括以下步骤:
(c)从所采样的数值中计算数值,其中所述指令输入是基于从所采样的数值中计算的所述数值来预测的。
19.根据权利要求18所述的方法,其特征在于:所述计算是基于选自以下组的计算机构:贝叶斯统计和卡尔曼滤波器算法。
20.根据权利要求17所述的方法,还包括以下步骤:
(c)基于所采样的数值来接收触发的数值。
21.根据权利要求20所述的方法,还包括以下步骤:
(d)基于所触发的数值来计算数值。
22.根据权利要求18、20和21之一所述的方法,其特征在于:所计算的数值或所触发的数值是被包括在由至少一个预测机构所产生作用的至少一个预测程序中。
23.根据权利要求22所述的方法,其特征在于:所述至少一个预测程序是选自以下的组:本地程序、远程程序、部分程序、分布式程序以及至少一些所述程序的组合。
24.根据权利要求22所述的方法,其特征在于:所述至少一个预测机构是选自以下的组:本地机构、远程机构、部分机构、分布式机构以及至少一些所述机构的组合。

Claims (14)

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所述的系统,其特征在于:所述中央预测单元是被定位在远程服务器上。
CN201380007794.8A 2012-02-01 2013-01-31 改善在线游戏的预测的方法与系统 Pending CN104081321A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201261593391P 2012-02-01 2012-02-01
US61/593,391 2012-02-01
PCT/IB2013/050843 WO2013114322A1 (en) 2012-02-01 2013-01-31 Method and system for improving prediction in online gaming

Publications (1)

Publication Number Publication Date
CN104081321A true CN104081321A (zh) 2014-10-01

Family

ID=48904494

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380007794.8A Pending CN104081321A (zh) 2012-02-01 2013-01-31 改善在线游戏的预测的方法与系统

Country Status (3)

Country Link
US (1) US20140365412A1 (zh)
CN (1) CN104081321A (zh)
WO (1) WO2013114322A1 (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9415301B2 (en) 2013-02-26 2016-08-16 Steelseries Aps Method and apparatus for processing control signals of an accessory
US9756375B2 (en) 2015-01-22 2017-09-05 Microsoft Technology Licensing, Llc Predictive server-side rendering of scenes
US10493365B2 (en) * 2015-07-21 2019-12-03 Fanisko Llc System and method for playing a predictive sports game on a computing device
US10552752B2 (en) 2015-11-02 2020-02-04 Microsoft Technology Licensing, Llc Predictive controller for applications
US11003499B1 (en) * 2017-06-14 2021-05-11 Amazon Technologies, Inc. Resource allocation based on agent behavior in a simulation environment
US10924525B2 (en) 2018-10-01 2021-02-16 Microsoft Technology Licensing, Llc Inducing higher input latency in multiplayer programs
US11033813B2 (en) * 2019-06-07 2021-06-15 Microsoft Technology Licensing, Llc Latency erasure
US11717748B2 (en) * 2019-11-19 2023-08-08 Valve Corporation Latency compensation using machine-learned prediction of user input
JP6748281B1 (ja) * 2019-12-10 2020-08-26 株式会社Cygames サーバ、処理システム、処理方法及びプログラム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5974442A (en) * 1996-12-31 1999-10-26 Intel Corporation Communication technique for interactive applications over a network with delays
US20060135258A1 (en) * 2004-12-17 2006-06-22 Nokia Corporation System, network entity, client and method for facilitating fairness in a multiplayer game
EP3711828B1 (en) * 2006-05-04 2023-03-15 Sony Interactive Entertainment LLC Scheme for detecting and tracking user manipulation of a game controller body and for translating movements thereof into inputs and game commands
US7971156B2 (en) * 2007-01-12 2011-06-28 International Business Machines Corporation Controlling resource access based on user gesturing in a 3D captured image stream of the user
JP5440080B2 (ja) * 2009-10-02 2014-03-12 ソニー株式会社 行動パターン解析システム、携帯端末、行動パターン解析方法、及びプログラム
DE102010007455A1 (de) * 2010-02-10 2011-08-11 Ident Technology AG, 82234 System und Verfahren zum berührungslosen Erfassen und Erkennen von Gesten in einem dreidimensionalen Raum

Also Published As

Publication number Publication date
US20140365412A1 (en) 2014-12-11
WO2013114322A1 (en) 2013-08-08
WO2013114322A4 (en) 2013-10-24

Similar Documents

Publication Publication Date Title
CN104081321A (zh) 改善在线游戏的预测的方法与系统
US11369880B2 (en) Dynamic difficulty adjustment
US9400548B2 (en) Gesture personalization and profile roaming
US9056252B2 (en) Highly interactive online multiplayer video games
US8781151B2 (en) Object detection using video input combined with tilt angle information
US8310656B2 (en) Mapping movements of a hand-held controller to the two-dimensional image plane of a display screen
US8570378B2 (en) Method and apparatus for tracking three-dimensional movements of an object using a depth sensing camera
US9377857B2 (en) Show body position
KR102397507B1 (ko) 비디오 게임에서 자동 플레이어 제어의 인계
US11717748B2 (en) Latency compensation using machine-learned prediction of user input
US20110279368A1 (en) Inferring user intent to engage a motion capture system
US20070015558A1 (en) Method and apparatus for use in determining an activity level of a user in relation to a system
US20070015559A1 (en) Method and apparatus for use in determining lack of user activity in relation to a system
US8773355B2 (en) Adaptive cursor sizing
US20110296352A1 (en) Active calibration of a natural user interface
US10926173B2 (en) Custom voice control of video game character
WO2007130872A2 (en) Method and apparatus for use in determining lack of user activity, determining an activity level of a user, and/or adding a new player in relation to a system
EP3738655A2 (en) Method and apparatus for use in determining lack of user activity, determining an activity level of a user, and/or adding a new player in relation to a system
USRE48417E1 (en) Object direction using video input combined with tilt angle information
US20220378358A1 (en) EEG With Artificial Intelligence As Control Device
WO2018154327A1 (en) Computer interface system and method
CN116650950B (zh) 一种用于vr游戏的控制系统及方法
CN112270210A (zh) 数据处理、操作指令识别方法、装置、设备和介质
CN117119418A (zh) 一种基于智能乒乓球发球机的信号交互系统及方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20141001