获得用于控制游戏程序的运行的输入的制作方法

文档序号:1573477阅读:151来源:国知局
专利名称:获得用于控制游戏程序的运行的输入的制作方法
技术领域
一般来说,本发明涉及人机接口,具体来说,涉及处理用于跟踪一个或多个控制器的用户操纵的多通道输入。
背景技术
计算机娱乐系统通常包括手持控制器、游戏控制器或其它控制器。用户或玩家使用控制器向娱乐系统发送命令或其它指令,以便控制正在玩的视频游戏或其它模拟。例如,控制器可配备由用户操作的操纵器、如操纵杆。操纵杆的被操纵变量从模拟值转换成数字值,该数字值被发送给游戏机主机。控制器还可配备可由用户操作的按钮。正是针对这些及其它背景信息因素发展了本发明。


结合附图通过参考以下详细描述,可易于理解本发明的理论,附图包括图1是示出根据本发明的一个实施例进行操作的视频游戏系统的实物电路图;图2是根据本发明的一个实施例制作的控制器的透视图;图3是示出根据本发明的一个实施例、可用于控制器的加速计的三维示意图;图4是根据本发明一个实施例、用于混合各种控制输入的系统的框图;图5A是图1的视频游戏系统的一部分的框图;图5B是根据本发明的一个实施例、用于跟踪视频游戏系统的控制器的方法的流程图;图5C是示出根据本发明的一个实施例、用于在视频游戏系统上的游戏进行期间利用位置和/或取向信息的方法的流程图;图6是示出根据本发明的一个实施例的视频游戏系统的框图;以及图7是根据本发明的一个实施例的视频游戏系统的单元处理器实现的框图。具体实施例描述虽然为了便于说明,以下详细描述包含许多具体细节,但是,本领域的技术人员会理解,对以下细节的许多变化和变更处于本发明的范围之内。因此,提出以下描述的本发明的示范实施例,而不失要求权益的本发明的一般性并且没有对要求权益的本发明施加限制。本文所述的方法、设备、方案和系统的各种实施例提供用户对整个控制器主体本身的移动、运动和/或操纵的检测、捕捉和跟踪。用户对整个控制器主体的所检测移动、运动和/或操纵可作为附加命令用来控制所进行的游戏或其它模拟的各个方面。检测和跟踪用户对游戏控制器主体的操纵的步骤可通过不同方式来实现。例如,例如加速计或陀螺仪等惯性传感器、例如数码相机等图像捕捉单元可与计算机娱乐系统配合使用,以便检测手持控制器主体的运动,并将它们转换成游戏中的动作。例如在标题为“三维输入控制的系统、方法和设备”的美国专利申请11/382033(代理人档案号SCEA06INRT1)中描述了跟踪具有惯性传感器的控制器的示例,通过引用将其结合到本文中。例如在标题为“用于检测和跟踪游戏控制器主体的用户操纵的方案”的美国专利申请11/382034(代理人档案号SCEA05082US00)中描述了使用图像捕捉来跟踪控制器的示例,通过引用将其结合到本文中。另外,还可使用话筒阵列和适当的信号处理以声学方式跟踪控制器和/或用户。在美国专利申请11/381721中描述了这种声跟踪的示例,通过引用将其结合到本文中。声感测、惯性感测和图像捕捉可单独地或者以任何组合用于检测控制器的许多不同类型的运动,例如上下移动、扭转移动、左右移动、急拉移动、棒式运动、俯冲运动等。这类 运动可对应于各种命令,使得运动被转换成游戏中的动作。检测和跟踪用户对游戏控制器主体的操纵可用来实现许多不同类型的游戏、模拟等,这允许用户例如参加刀剑或光剑战斗,使用棍棒跟踪物品的形状,参加许多不同类型的体育赛事,参加屏幕上的战斗或其它对抗等。游戏程序可配置成跟踪控制器的运动,并且从被跟踪运动中识别出某些预先记录的姿势。这些姿势中的一个或多个的识别可触发游戏状态的变化。在本发明的实施例中,可在用于姿势识别的分析之前混合从这些不同来源得到的控制器路径信息。可通过改进识别姿势的可能性的方式混合来自不同来源(例如声、惯性和图像捕捉)的跟踪数据。参照图1,示出根据本发明的一个实施例进行操作的系统100。如图所示,计算机娱乐控制台102可与电视或其它视频显示器104耦合,以便在其中显示视频游戏或其它模拟的图像。游戏或其它模拟可存储在插入控制台102的DVD、CD、闪速存储器、USB存储器或者其它存储器介质106上。用户或玩家108操纵游戏控制器110来控制视频游戏或其它模拟。在图2中看到,游戏控制器110包括惯性传感器112,它响应游戏控制器110的位置、运动、取向或者取向的变化而产生信号。除了惯性传感器之外,游戏控制器110还可包括常规控制输入装置,例如操纵杆111、按钮113、R1、LI等。在操作中,用户108以物理方式移动控制器110。例如,控制器110可由用户108朝任何方向移动,例如上、下、到一侧、到另一侧、扭转、翻滚、摇晃、急拉、俯冲等。控制器110本身的这些移动可由相机112通过经由分析来自惯性传感器112的信号进行跟踪、以下面所述的方式来检测和捕捉。再参照图1,系统100可以可选地包括相机或其它视频图像捕捉装置114,它可定位成使得控制器110在相机的视野116之内。来自图像捕捉装置114的图像的分析可与来自惯性传感器112的数据的分析结合使用。如图2所示,控制器110可以可选地配备例如发光二极管(LED)202、204、206、208等光源,以帮助通过视频分析进行跟踪。它们可安装到控制器110的主体上。本文所使用的术语“主体”用于描述游戏控制器110中将用手握住(或者在它是可佩戴游戏控制器时佩戴)的部分。例如在授予发明人Gary M. Zalewsk1、标题为“用于检测和跟踪游戏控制器主体的用户操纵的方案”的美国专利申请号11/382034 (代理人档案号SCEA05082US00)中描述为了跟踪控制器110而对这类视频图像的分析,通过引用将其结合到本文中。控制台102可包括声换能器,例如话筒阵列118。控制器110还可包括声信号生成器210 (例如喇ΒΛ ),从而提供声源以帮助具有话筒阵列118的控制器110的声跟踪以及适当的声信号处理,如美国专利申请11/381724中所述,通过引用将其结合到本文中。一般来说,来自惯性传感器112的信号用于生成控制器110的位置和取向数据。这种数据可用来计算控制器110的移动的许多物理方面,例如它沿任何轴的加速度和速度、它的倾斜、俯仰、偏航、翻滚以及控制器110的任何遥测点。本文所使用的“遥测”一般指的是远程测量受关注信息并向系统或者向系统的设计人员或操作员报告。检测和跟踪控制器110的移动的能力使得能够确定是否执行控制器110的任何预定移动。也就是说,控制器110的某些移动模式或姿势可预先定义并用作游戏或其它模拟的输入命令。例如,控制器110的向下俯冲姿势可定义为一个命令,控制器110的扭转姿势可定义为另一个命令,控制器110的摇晃姿势可定义为另一个命令,依此类推。这样,用户108以物理方式移动控制器110的方式用作用于控制游戏的另一个输入,它为用户提供更刺激更愉快的体验。作为示例而不是限制,惯性传感器112可以是加速计。图3示出采取在四个点例如通过弹簧306、308、310、312与框架304弹性耦合的简单质量决302的形式的加速计300的一个示例。俯仰轴和翻滚轴(分别由X和Y表示)位于与框架相交的平面中。偏航轴Z定向为与包含俯仰轴X和翻滚轴Y的平面垂直。框架304可通过任何适当方式安装到控制器110。当框架304 (以及游戏控制器110)加速和/或旋转时,质量决302可相对于框架304位移,并且弹簧306、308、310、312可按以下方式伸长或压缩,该方式取决于俯仰和/或翻滚和/或偏航的平移和/或旋转加速的数量和方向和/或角度。质量块302的位移和/或弹簧306、308、310、312的压缩或伸长可采用例如适当的传感器314、316、318、320来感测,并且被转换成以已知或预定方式与俯仰和/或翻滚的加速量相关的信号。存在许多不同的方式来跟踪质量决的位置和/或施加到其上的力,其中包括电阻应变计材料、光子传感器、磁传感器、霍耳效应装置、压电装置、电容传感器等。本发明的实施例可包括任何数量和类型的传感器或者传感器类型的组合。通过示例而不是限制,传感器314、316、318、320可以是设置在质量块302上的间隙近接式电极。质量块与各电极之间的电容随质量块相对于各电极的位置而改变。各电极可连接到电路,该电路产生与质量块302相对于电极的电容(因此与质量块相对于电极的接近度)相关的信号。另外,弹簧306、308、310、312可包括电阻应变计传感器,它们产生与弹簧的压缩和伸长相关的信号。在一些实施例中,框架304可用万向架安装到控制器110,使得加速计300相对于俯仰和/或翻滚和/或偏航轴保持固定取向。这样,控制器轴X、YZ可直接映射到实际空间中的对应轴,而无需考虑控制器轴相对于实际空间坐标轴的倾斜。如上所述,可分析来自惯性、图像捕捉和声源的数据,以生成跟踪控制器110的位置和/或取向的路径。如图4的框图所示,根据本发明的一个实施例的系统400可包括惯性分析器402、图像分析器404和声学分析器406。这些分析器中的每个接收来自感测环境401的信号。分析器402、404、406可通过硬件、软件(或固件)或者它们中的两个或更多的某种组合来实现。分析器中的每个产生与受关注对象的位置和/或取向相关的跟踪信息。作为示例,受关注对象可以是上述控制器110。图像分析器404可结合美国专利申请11/382034(代理人档案号SCEA05082US00)中所述的方法进行工作、按照它形成场以及相对它进行操作。惯性分析器402可结合标题为“三维输入控制的系统、方法和设备”的美国专利申请11/382033 (代理人档案号SCEA06INRT1)中所述的方法进行工作、按照它形成场以及相对它进行操作。声学分析器406可结合美国专利申请11/381,724中所述的方法进行工作、按照它形成场以及相对它进行操作。分析器402、404和406可被看作与位置和/或取向信息的输入的不同通道关联。混合器408可接受多个输入通道,并且这类通道可包含表征感测环境401的样本数据,通常从通道的角度看。惯性分析器402、图像分析器404和声学分析器406生成的位置和/或取向信息可耦合到混合器408的输入。混合器408和分析器402、404、406可由游戏软件程序410来查询,并且可配置成响应事件而中断游戏软件。事件可包括姿势识别事件、联动变化、配置变化、设置噪声等级、设置取样率、变更映射链等,下面论述其示例。混合器408可结合本文所述的方法进行工作、按照它形成场以及相对它进行操作。如上所述,来自例如惯性传感器、视频图像和/或声学传感器等的不同输入通道的信号可分别由惯性分析器402、图像分析器404和声学分析器406进行分析,以便根据本发明方法在进行视频游戏期间确定控制器110的运动和/或取向。这种方法可实现为处理器可读介质中存储的并且在数字处理器上运行的一系列(a series of)处理器可执行程序代码指令。例如,如图5A所示,视频游戏系统100可包括具有通过硬件或者软件来实现的惯性分析器402、图像分析器404和声学分析器406的控制台102。作为示例,分析器402、404,406可实现为运行于适当处理器单元502上的软件指令。作为示例,处理器单元502可以是数字处理器,例如视频游戏控制台中常用类型的微处理器。指令的一部分可存储在存储器506中。备选地,惯性分析器402、图像分析器404和声学分析器406可通过硬件、例如专用集成电路(ASIC)来实现。这种分析器硬件可设置在控制器110或者控制台102上,或者可远程设置在其它位置。在硬件实现中,分析器402、404、406可以是响应例如来自处理器502或者例如通过USB缆线、无线连接或者通过网络所连接的其它某个远程设置的源的外部信号而可编程的。惯性分析器402可包括或者实现分析惯性传感器112生成的信号并且利用与控制器110的位置和/或取向有关的信息的指令。类似地,图像分析器404可实现分析图像捕捉单元114所捕捉的图像的指令。另外,声学分析器可实现分析话筒阵列118所捕捉的图像的指令。如图5B的流程图510所示,这些信号和/或图像可由分析器402、404、406接收,如框512所示。信号和/或图像可由分析器402、404、406进行分析,以确定与控制器110的位置和/或取向有关的惯性跟踪信息403、图像跟踪信息405和声学跟踪信息407,如框514所示。跟踪信息403、405、407可与一个或多个自由度相关。优选地跟踪六个自由度,以表征控制器110或其它被跟踪对象的操纵。这类自由度可与沿X、y和z轴的控制器倾斜、偏航、翻滚以及位置、速度或加速度相关。如框516所示,混合器408混合惯性信息403、图像信息405和声学信息407,以生成精确的位置和/或取向信息(orientationinformation)409。作为示例,混合器408可根据游戏或环境条件来对惯性、图像和声学跟踪信息403、405、407应用不同的权重,并取加权平均。另外,混合器408可包括它自己的混合器分析器412,分析器412分析组合的位置/取向信息,并生成包含其它分析器生成的信息的组合的它自己的所得“混合器”信息。在本发明的一个实施例中,混合器408可将分布值赋予来自分析器402、404、406的跟踪信息403、405、407。如上所述,可对输入控制数据的某些集合求平均。但是,在本实施例中,在对输入控制数据求平均之前对它赋予某个值,由此,来自某些分析器的输入控制数据比来自其它分析器的输入控制数据具有更大的分析重要性。混合器408在本系统的上下文中可承担多种功能性,包括观测、校正、稳定、推导、组合、路由选择、混合、报告、缓冲、中断其它过程和分析。这可相对于从分析器402、404、406的一个或多个所接收的跟踪信息403、405、407来执行。虽然分析器402、404、406的每个可接收和/或推导某些跟踪信息,但是混合器408可实现成优化所接收的跟踪信息403、405、407的使用,并生成精确的跟踪信息409。分析器402、404、406和混合器408优选地配置成为跟踪信息提供相似的输出格式。来自任何分析器元件402、404、406的跟踪信息参数可映射到分析器中的单个参数。备选地,通过处理来自分析器402、404、406的一个或多个的一个或多个跟踪信息参数,混合器408可形成分析器402、404、406的任一个的跟踪信息。混合器可组合取自分析器402、404,406的相同参数类型的跟踪信息的两个或更多元素,和/或对于分析器生成的跟踪信息的多个参数执行功能,以创建具有从输入的多个通道生成的有益效果的输出的合成集
口 ο精确的跟踪信息409可在采用系统100进行视频游戏期间使用,如框518所示。在某些实施例中,可相对于用户108在游戏进行期间做出的姿势来使用位置和/或取向信息。在一些实施例中,混合器408可结合姿势识别器505进行操作,以便将游戏环境中的至少一个动作与来自用户的一个或多个用户动作(例如空间中的控制器的操纵)关联。如图5C的流程图520所示,可使用位置和/或取向信息来跟踪控制器110的路径,如框522所示。作为示例而不是限制,该路径可包括表示控制器的质量决的中心相对于某种坐标系的位置的点的集合。各位置点可通过一个或多个坐标、例如笛卡儿坐标系中的X、Y和Z坐标来表示。时间可与路径上的各点关联,使得可监测路径的形状和控制器沿路径的进度。另外,集合中的各点可关联了表示控制器的取向、例如控制器围绕其质量块的中心旋转的一个或多个角度的数据。此外,路径上的各点可关联了控制器的质量块的中心的速度和加速度以及控制器围绕其质量块的中心的角旋转和角加速度的速率的值。如框524所示,可以将被跟踪的路径与对应于已知和/或预先记录的姿势508的一个或多个存储的路径进行比较,这些已知和/或预先记录的姿势508与所进行的视频游戏的上下文相关。识别器505可配置成识别用户或过程音频鉴别姿势等。例如,用户可由识别器505通过姿势来识别,并且姿势可以是用户特定的。这种特定姿势可被记录并包含在存储器506所存储的预先记录姿势508之中。记录过程可以可选地存储在姿势的记录期间生成的音频。感测环境被取样到多通道分析器中并进行处理。处理器可参考姿势模型以根据语音或声波图、以高精度和性能来确定和鉴别和/或识别用户或对象。如图5A所示,表示姿势的数据508可存储在存储器506中。姿势的示例包括但不限于投掷物体,例如球;摆动对象,例如球棒或高尔夫球棒;抽吸手泵;开或者关门或窗;转动方向盘或其它车辆控制;武术动作,例如拳击;砂纸打磨动作;涂蜡和除蜡;油漆房屋;握手;发出格格的响声;翻滚;掷橄榄球;转动把手运动;3D鼠标移动;滚动移动;已知剖面的移动;任何可记录移动;沿任何向量的来回移动,即,对轮胎充气,但在空间中以某个任意取向进行;沿路径的移动;具有准确停止和开始时间的移动;在噪声层、样条中可记录、跟踪和重复的基于任何时间的用户操纵;等等。这些姿势中的每个可从路径数据预先记录并作为基于时间的模型存储。路径和存储的姿势的比较可从假定稳态开始,如果路径偏离稳态,则路径可通过消除过程与存储的姿势进行比较。在框526,如果没有匹配,则在框522,分析器可继续跟踪控制器110的路径。如果路径(或者它的一部分)与存储的姿势之间存在充分匹配,则游戏的状态可改变,如528所示。游戏状态的改变可包括但不限于中断、发送控制信号、改变变量等。这里是可能发生这种情况的一个示例。在确定控制器110已经离开稳态时,分析器402、404、406或412跟踪控制器110的移动。只要控制器110的路径符合存储的姿势模型508中所定义的路径,则那些姿势是可能的“命中”。如果控制器110的路径(在噪声容差设定内)偏离任何姿势模型508,则从命中列表中删除那个姿势模型。各姿势参考模型包括记录姿势的时基。分析器402、404、406或412在适当的时间索引将控制器路径数据与存储的姿势508进行比较。稳态条件的出现重置时钟。在偏离稳态时(即,在噪声阈值之外跟踪移动时),对命中列表加载所有可能的姿势模型。启动时钟,并且将控制器的移动与命中列表进行比较。比较同样是走查(walk through)时间。如果命中列表中的任何姿势到达姿势结束,则是一次命中。在某些实施例中,混合器408和/或各个分析器402、404、406、412可通知游戏程序关于发生某些事件的时间。这类事件的示例包括下列各项中断达到的零加速度点(X和/或Y和/或Z轴)在某些游戏情况中,当控制器的加速度在拐点改变时,分析器可通知或中断游戏程序中的例程。例如,用户108可使用控制器110来控制表示橄榄球模拟游戏中的四分卫的游戏替身。分析器可经由根据来自惯性传感器112的信号生成的路径来跟踪控制器(表示橄榄球)。控制器110的加速度的特定变化可发信号通知发球。这时,分析器可触发程序(例如物理模拟包)中的另一个例程,根据发球点处控制器的位置和/或速度和/或取向来模拟橄榄球的轨迹。中断识别的新姿势另外,分析器可通过一个或多个输入来配置。这类输入的示例包括但不限于设置噪声等级(X、Y或Z轴)噪声等级可以是分析游戏中用户的手的抖动时所使用的参考容差。设置取样率。本文所使用的“取样率”可指分析器对于来自惯性传感器的信号进行取样的频度。取样率可设置成对信号过取样或者求平均。设置联动(gearing)。本文所使用的“联动”一般指控制器移动与游戏中出现的移动的比率。控制视频游戏的上下文中的这种“联动”的示例可见于2006年5月7日提交的美国专利申请号11/382040 (代理人档案号No. :S0NYP058D),通过引用将它结合到本文中。设置映射链。本文所使用的“映射链”指的是姿势模型的图。可使姿势模型图适合于特定输入通道(例如仅从惯性传感器信号生成的路径数据)或者在混合器单元中形成的混合通道。可由与惯性分析器402相似的两个或更多不同的分析器服务于三个输入通道。具体来说,它们可包括如本文所述的惯性分析器402,例如在授予发明人Gary M. Zalewski的美国专利申请11/382034、标题为“用于检测和跟踪游戏控制器主体的用户操纵的方案”(代理人档案号SCEA05082US00)中所述的视频分析器,其通过引用结合到本文中,以及例如通过引用结合到本文中的美国专利申请11/381721中所述的声学分析器。分析器可用映射链来配置。映射链可在游戏进行期间由游戏换出,例如可设置到分析器或者混合器。又参照图5B的框512,本领域的技术人员会知道,存在许多方式从惯性传感器112生成信号。本文描述了其中的几个不例。参照框514,存在许多方式来分析框512中生成的传感器信号以获得与控制器110的位置和/或取向相关的跟踪信息。作为示例而不是限制,跟踪信息可包括但不限于单独地或者在任何组合中与下列参数有关的信息控制器取向。控制器110的取向可按照相对于某种参考取向的俯仰(pitch)、翻滚(roll)或偏航(yaw)角度、例如以弧度来表示。控制器取向的变化速率(例如角速度或角加速度)还可包含在位置和/或取向信息中。例如,在惯性传感器112包括陀螺传感器的情况下,可直接获得与俯仰、翻滚或偏航的角度成比例的一个或多个输出值的形式的控制器取向信息。控制器位置(例如某个参考系中控制器110的笛卡儿坐标X、Y、Z)
控制器X轴速度控制器Y轴速度控制器Z轴速度控制器X轴加速度控制器Y轴加速度控制器Z轴加速度要注意,相对于位置、速度和加速度,位置和/或取向信息可按照与笛卡儿不同的坐标系来表示。例如,柱面或球面坐标可用于位置、速度和加速度。相对于x、Y和Z轴的加速度信息可直接从加速计类型传感器获得,如本文所述。X、Y和Z加速度可对于自某个初始时刻的时间进行积分,以确定Χ、γ和Z速度的变化。可通过将速度变化与初始时刻的X、Y和Z速度的已知值相加,来计算这些速度。X、Y和Z速度可对于时间进行积分,以确定控制器的Χ、Υ和Z位移。可通过将位移与初始时刻的已知Χ、Υ和Z位置相加,来确定Χ、Υ和Z位置。稳态γ/N-这个特定信息表示控制器是否处于稳态,它可定义为任何位置,也可经过变化。在一个优选实施例中,稳态位置可以是控制器以大约水平取向保持在大致与用户腰部齐平的高度的位置。“自最后一次稳态的时间”一般指的是与自最后一次检测到稳态(如上所述)以来经过多长时间段相关的数据。如前面所述,时间的确定可实时、按处理器周期或取样周期来计算。对于相对于初始点来重置控制器的跟踪以确保游戏环境中映射的人物或对象的准确度,“自最后一次稳态的时间”会是重要的。对于确定游戏环境中随后可能运行的可用动作/姿势(排除在外或者包含在内),这个数据也会是重要的。“识别的最后一次姿势” 一般指的是由姿势识别器505 (可以通过硬件或软件来实现)识别的最后一次姿势。对于前一个姿势可与随后可识别的可能姿势或者游戏环境中发生的另外某个动作相关的事实,识别的最后一次姿势的标识会是重要的。识别的最后一次姿势的时间可在任何时间通过游戏程序或软件对上述输出进行取样。在本发明的一个实施例中,混合器408可将分布值赋予来自分析器402、404、406的跟踪信息403、405、407。如上所述,可对输入控制数据的某些集合求平均。但是,在本实施例中,在对输入控制数据求平均之前向它赋予某个值,由此,来自某些分析器的输入控制数据比来自其它分析器的输入控制数据具有更大的分析重要性。例如,混合器408可需要与加速度和稳态相关的跟踪信息。然后,混合器408将接收跟踪信息403、405、407,如上所述。跟踪信息可包括与加速度和稳态相关的参数,例如以上所述。在对表示这个信息的数据求平均之前,混合器408可将分布值赋予跟踪信息数据集403、405、407。例如,能以90%的值对于来自惯性分析器402的x和y加速度参数进行加权。但是,可仅以10%对于来自图像分析器406的1和7加速度参数进行加权。声学分析器跟踪信息407在涉及加速度参数时能以0%进行加权,即,该数据没有值。类似地,来自惯性分析器402的Z轴跟踪信息参数能以10%进行加权,而图像分析器Z轴跟踪信息能以90%进行加权。声学分析器跟踪信息407同样能以0%值进行加权,但是来自声学分析器406的稳态跟踪信息能以100%进行加权,其中其余分析器跟踪信息能以O %进行加权。在赋予适当的分布权重之后,可结合那个权重来对输入控制数据求平均,以得出加权平均输入控制数据集,该数据集随后由姿势识别器505进行分析,并且与游戏环境中的特定动作关联。关联的值可由混合器408或者由特定游戏标题预先定义。这些值也可以是混合器408识别来自各个分析器的特定数据质量、因而进行下面进一步论述的动态调整的结果。调整也可以是构建在特定数据在特定环境中具有特定值和/或响应给定游戏标题的特性时的历史知识库的结果。混合器408可配置成在游戏进行期间动态操作。例如,当混合器408接收各种输入控制数据时,它可识别到某个数据始终在可接受的数据范围或质量之外或者反映可指示相关输入装置的处理错误的损坏数据。另外,现实世界环境的某些条件可改变。例如,用户的家庭游戏环境中的自然光可能在早晨转到下午时不断增加,从而导致图像数据捕捉的问题。此外,邻居或家人可能随一天中时间的推移而变得更嘈杂,从而导致音频数据捕捉时出现问题。同样,如果用户已经进行数小时游戏,则他们的反应能力变得不太敏锐,因而导致惯性数据的解释的问题。在这些情况下,或者在特定形式的输入控制数据的质量成为问题的任何其它情况下,混合器408可将分布权重(weight)动态重新赋予来自特定装置的数据的特定集合,使得给予特定输入控制数据更多或更少重要性,如上所述。类似地,游戏环境可随特定游戏的需要改变的游戏过程而改变,因而需要重新赋值或者需要特定输入控制数据。类似地,混合器408可根据处理错误或者可由姿势识别器505生成的反馈数据识别到传递到姿势识别器505的某个数据被不正确地处理、缓慢地处理或者完全没有处理。响应这个反馈或者识别到这些处理困难(例如,当图像分析数据在可接受范围之内的同时,在由姿势识别器505进行关联时产生错误),混合器408可调整从哪一个分析器寻求哪一个输入控制数据以及在如果有的情况下的时间。在输入控制数据被传递给混合器408之前,混合器408也可需要适当的分析器对输入控制数据的某些分析和处理,它可重新处理数据(例如对数据求平均),使得构成关于有效且适当地处理传递给姿势识别器505的数据的另一层保证。在一些实施例中,混合器408可识别到某个数据已损坏、无效或者超出特定变量之外,并且可需要与那个数据相关的特定输入控制数据或变量,使得它可取代不正确数据,或者相对于必要变量适当地分析和计算某个数据。根据本发明的实施例,上述类型的视频游戏系统和方法可按照图6所示方式来实现。视频游戏系统600可包括处理器601和存储器602 (例如RAM、DRAM、ROM等)。另外,如果要实现并行处理,则视频游戏系统600可具有多个处理器601。存储器602包括数据和游戏程序代码604,它可包括如上所述进行配置的部分。具体来说,存储器602可包括惯性信号数据606,该惯性信号数据606可包括如上所述的已存储控制器路径信息。存储器602还可包含已存储的姿势数据608,例如表示与游戏程序604相关的一个或多个姿势的数据。运行于处理器602的编码指令可实现多输入混合器605,它可按照以上所述进行配置以及起作用。系统600还可包括众所周知的支持功能610,例如输入/输出(I/O)元件611、电源(P/S)612、时钟(CLK)613和高速缓存614。设备600可以可选地包括存储程序和/或数据的大容量存储装置615,例如磁盘驱动器、CD-ROM驱动器、磁带驱动器等。控制器还可以可选地包括显示单元616和用户接口单元618,以便于控制器600与用户之间的交互。显示单元616可采取显示文本、数字、图形符号或图像的阴极射线管(CRT)或平板屏幕的形式。用户接口 618可包括键盘、鼠标、操纵杆、光笔或其它装置。另外,用户接口 618可包括话筒、摄像机或其它信号变换装置,以提供待分析的信号的直接捕捉。系统600的处理器601、存储器602和其它组件可经由系统总线620相互交换信号(例如代码指令和数据),如图6所
/Jn ο话筒阵列622可通过I/O功能611与系统600耦合。话筒阵列可包括大约2个至大约8个话筒,优选地大约4个话筒,其中相邻话筒分隔开小于大约4厘米、优选地为大约I厘米与大约2厘米之间的距离。优选地,阵列622中的话筒是全向话筒。可选图像捕捉单元623 (例如摄像机)可通过I/O功能611与设备600耦合。与相机机械耦合的一个或多个指向执行机构625可经由I/O功能611与处理器601交换信号。本文所使用的术语“I/O”一般指向系统600以及向外围装置传递数据或传递来自系统600以及外围装置的数据的任何程序、操作或装置。每一个数据传递可看作是来自一个装置的输出以及到另一个装置的输入。外围装置包括例如键盘和鼠标等的只输入装置、例如打印机等的只输出装置以及例如要充当输入以及输出装置的可写CD-ROM等装置。术语“外围装置”包括例如鼠标、键盘、打印机、监测器、话筒、游戏控制器、相机、外部Zip驱动器或扫描仪等的外部装置以及例如CD-ROM驱动器、CD-R驱动器或内部调制解调器等的内部装置或者例如闪速存储器读取器/写入器、硬盘驱动器等的其它外设。在本发明的某些实施例中,设备600可以是视频游戏单元,它可包括经由I/O功能611与处理器有线(例如USB缆线)或无线耦合的控制器630。控制器630可具有模拟操纵杆控件631和常规按钮633,它们提供进行视频游戏期间常用的控制信号。这类视频游戏可实现为来自可存储在存储器602或者例如与大容量存储装置615关联等的其它处理器可读介质中的程序604的处理器可读数据和/或指令。在一些实施例中,混合器605可接收来自模拟操纵杆控件631和按钮633的输入。操纵杆控件631 —般可配置成使得向左或向右移动控制杆发送信号通知沿X轴的移动,而将控制杆向前(向上)或向后(向下)移动则发信号通知沿Y轴的移动。在配置用于三维移动的操纵杆中,向左(逆时针)或向右(顺时针)扭转操纵杆可发信号通知沿Z轴的移动。这三个轴-X、Y和Z-通常分别称作翻滚、俯仰和偏航,特别是相对于飞行器。游戏控制器630可包括可操作以与处理器602、游戏控制器630中的至少一个或者它们两者进行数字通信的通信接口。通信接口可包括通用异步接收器发射器(“UART”)。UART可以可操作以接收用于控制跟踪装置的操作、或者用于从跟踪装置传送与另一个装置进行通信的信号的控制信号。备选地,通信接口包括通用串行总线(“USB”)控制器。USB控制器可以可操作以接收用于控制跟踪装置的操作、或者用于从跟踪装置传送与另一个装置进行通信的信号的控制信号。另外,控制器630可包括一个或多个惯性传感器632,其可经由惯性信号向处理器601提供位置和/或取向信息。取向信息可包括角信息,例如控制器630的倾斜、翻滚或偏航。作为示例,惯性传感器632可包括任何数量的加速计、陀螺仪或倾斜传感器或者它们的任何组合。在一个优选实施例中,惯性传感器632包括倾斜传感器,适合于感测游戏控制器630相对于倾斜和翻滚轴的取向;第一加速计,适合于感测沿偏航轴的加速度;以及第二加速计,适合于感测相对于偏航轴的角加速度。加速计可实现为例如MEMS装置,包括通过一个或多个弹簧安装的质量块,其中具有用于感测质量块相对于一个或多个方向的位移的传感器。来自传感器的取决于质量块的位移的信号可用来确定游戏控制器630的加速度。这类技术可通过来自可存储在存储器602中并且由处理器601运行的游戏程序604的指令来实现。作为示例,适合作为惯性传感器632的加速计可以是例如通过弹簧、在三或四个点上与框架弹性耦合的简单质量决。俯仰和翻滚轴位于与安装到游戏控料器630的框架相交的平面中。当框架(和游戏控制器630)围绕俯仰和翻滚轴旋转时,质量决将在重力的影响下位移,并且弹簧将以取决于俯仰和/或翻滚的角度的方式伸长或压缩。质量块的位移可被感测并转换成取决于俯仰和/或翻滚量的信号。围绕偏航轴的角加速度或者沿偏航轴的线性加速度还可产生弹簧的压缩和/或伸长或者质量块的运动的特征图,它们可被感测并且转换成取决于角或线性加速度的量的信号。这种加速计装置可通过跟踪质量决的移动或者弹簧的压缩和膨胀力,来测量围绕偏航轴的倾斜、翻滚角加速度以及沿偏航轴的线性加速度。存在许多不同的方式来跟踪质量块的位置和/或施加到其上的力,其中包括电阻应变计材料、光子传感器、磁传感器、霍耳效应装置、压电装置、电容传感器等。另外,游戏控制器630可包括一个或多个光源634,例如发光二极管(LED)。光源634可用来区分一个控制器与另一个控制器。例如,一个或多个LED可通过使LED模式代码闪烁或保持来实现这个方面。作为示例,5个LED能以线性或二维模式设置在游戏控制器630上。虽然LED的线性阵列是优选的,但是,LED可以备选地设置成矩形模式或者拱形模式,以便于当分析图像捕捉单元623所得到的LED模式的图像时确定LED阵列的图像平面。此外,LED模式代码还可用于在游戏进行期间确定游戏控制器630的定位。例如,LED可帮助识别控制器的倾斜、偏航和翻滚。这种检测模式可帮助在游戏、如飞行器飞行游戏等中提供更好的用户/感觉。图像捕捉单元623可捕捉包含游戏控制器630和光源634的图像。这类图像的分析可确定游戏控制器的位置和/或取向。这种分析可通过存储在存储器602中并且由处理器601运行的程序代码指令604来实现。为了便于通过图像捕捉单元623捕捉光源634的图像,光源634可设置在游戏控制器630的两个或更多不同的侧面上,例如设置在正面和背面上(如阴影所示)。这种布置允许图像捕捉单元623根据用户保持游戏控制器630的方式对于游戏控制器630的不同取向来获得光源634的图像。另外,光源634可通过例如脉冲码、幅度调制或频率调制格式向处理器601提供遥测信号。这类遥测信号可指明按下哪些操纵杆按钮和/或按下这类按钮的力度。例如通过脉冲编码、脉宽调制、频率调制或光强(幅度)调制,可将遥测信号编码成光信号。处理器601可对来自光信号的遥测信号进行解码,并响应解码的遥测信号而运行游戏命令。可从图像捕捉单元623所得到的游戏控制器630的图像分析中对遥测信号进行解码。备选地,设备600可包括专用于接收来自光源634的遥测信号的独立光学传感器。例如在2006年5月4日提交的授予Richard L. Marks等人的美国专利申请号11/429414、标题为“与计算机程序接口的强度和输入装置的计算机图像及音频处理”(代理人档案号No. S0NYP052)中描述了结合确定与计算机程序接口的强度量来使用LED,通过引用将它完整地结合到本文中。另外,包含光源634的图像的分析可用于遥测以及确定游戏控制器630的位置和/或取向。这类技术可通过可存储在存储器602中并且由处理器601运行的程序604的指令来实现。
处理器601可与来自图像捕捉单元623所检测的光源634的光学信号和/或来自话筒阵列622所检测的声信号的声源位置和表征信息结合使用来自惯性传感器632的惯性信号,以便推导关于控制器630和/或其用户的位置和/或取向的信息。例如,“声雷达”声源位置和表征可与话筒阵列622结合用于跟踪移动语音,同时游戏控制器的运动(通过惯性传感器632和/或光源634)被单独跟踪。在声雷达中,在运行时选择预先校准的监听区域,并且滤除预先校准的监听区域外部的源发出的声音。预先校准的监听区域可包括与图像捕捉单元623的大量焦点或视野对应的监听区域。在2006年5月4日提交的授予XiadongMao的标题为“用于目标声音检测和表征的方法及设备”的美国专利申请号11/381724中详细描述了声雷达的示例,通过引用将它结合到本文中。向处理器601提供控制信号的不同模式的任何数量的不同组合可与本发明的实施例结合使用。这类技术可通过可存储在存储器602中并且由处理器601运行的程序代码指令604来实现,并且可选地可包括一个或多个指令,这些指令指导一个或多个处理器在运行时选择预先校准的监听区域并且滤除从预先校准的监听区域外部的源发出的声音。预先校准的监听区域可包括与图像捕捉单元623的大量焦点或视野对应的监听区域。程序604可选地可包括一个或多个指令,这些指令指导一个或多个处理器从话筒阵列622的话筒M0. . . Mm中产生离散时域输入信号xm(t),确定监听扇区(sector),以及在半盲源分隔中使用监听扇区来选择有限脉冲响应滤波器系数,以便分出来自输入信号Xm(t)的不同声源。程序604还可包括将一个或多个分数延迟应用于与来自参考话筒Mtl的输入信号X(l(t)不同的所选输入信号xm(t)的指令。每个分数延迟可选择成优化来自话筒阵列的离散时域输出信号y(t)的信噪比。分数延迟可选择成使得来自参考话筒Mtl的信号在时间上相对于来自阵列的其它话筒的信号是第一个。程序604还可包括将分数延时Λ引入话筒阵列的输出信号 y(t)的指令,使得y(t+A) = X (t+ Δ ) *b0+x (t-1+ Δ ) ^bi+x (t~2+ Δ )朴2+...+叉(卜奸八)*%,其中Λ在O与±1之间。在2006年5月4日提交的授予XiadongMao的标题为“超小型话筒阵列”的美国专利申请号11/381729中详细描述了这类技术的示例,通过引用结合其完整公开。程序604可包括一个或多个指令,这些指令在运行时使系统600选择包含声源的预先校准的监听扇区。这类指令可使设备确定声源是否位于初始扇区中或者位于初始扇区的特定一侧。如果声源不在缺省扇区中,则指令可在运行时选择缺省扇区的特定一侧的不同扇区。该不同扇区的特征可在于最接近最佳值的输入信号的衰减。这些指令在运行时可计算来自话筒阵列622的输入信号的衰减以及对最佳值的衰减。指令可在运行时使设备600确定一个或多个扇区的输入信号的衰减值,并且选择衰减最接近最佳值的扇区。例如在2006年5月4日提交的授予Xiadong Mao的标题为“用于目标声音检测的方法和设备”的美国专利申请11/381725中描述了这种技术的示例,通过引用将其公开结合到本文中。来自惯性传感器632的信号可提供部分跟踪信息输入,而从图像捕捉单元623通过跟踪一个或多个光源634所生成的信号可提供另一部分跟踪信息输入。作为示例而不是限制,这类“混合模式”信号可用于橄榄球类型视频游戏中,其中四分卫在向左的头碰头假动作之后向右掷球。具体来说,持有控制器630的游戏玩家可把头转向左边,并在进行将控制器好像是橄榄球一样摆向右方的掷动作的同时发出声音。与“声雷达”程序代码结合的话筒阵列622可跟踪用户的语音。图像捕捉单元623可跟踪用户头部的运动或者跟踪不需要声音或者使用控制器的其它命令。传感器632可跟踪游戏控制器(表示橄榄球)的运动。图像捕捉单元623还可跟踪控制器630上的光源634。可在达到游戏控制器630的加速度的一定量和/或方向时,或者在通过按下控制器630上的按钮所触发的按键命令时,用户可松开“球”。在本发明的某些实施例中,例如来自加速计或陀螺仪的惯性信号可用来确定控制器630的位置。具体来说,来自加速计的加速度信号可相对于时间积分一次,以确定速度的变化,并且速度可相对于时间进行积分,以确定位置的变化。如果某个时间的初始位置和速度的值为已知,则可使用这些值以及速度和位置的变化来确定绝对位置。虽然可令使用惯性传感器的位置确定比使用图像捕捉单元623和光源634更快,但是,惯性传感器632可能经过称作“漂移”的一种类型的错误,其中随时间累积的错误可导致从惯性信号所计算的操纵杆631的位置(以阴影表示)与游戏控制器630之间的实际位置的不一致。本发明的实施例允许多种方式来处理这类错误。例如,可通过将控制器630的初始位置重置为等于当前计算的位置,手动抵消漂移。用户可使用控制器630上的按钮的一个或多个来触发重置初始位置的命令。备选地,可通过将当前位置重置为根据从图像捕捉单元623得到的图像所确定的作为参考的位置,来实现基于图像的漂移。例如当用户触发游戏控制器630上的按钮的一个或多个时,可手动实现这种基于图像的漂移补偿。备选地,例如以定期时间间隔或者响应游戏进行而自动实现基于图像的漂移补偿。这类技术可通过可存储在存储器602中并且由处理器601运行的程序代码指令604来实现。在某些实施例中,可能希望补偿惯性传感器信号中的寄生数据。例如,可对于来自惯性传感器632的信号进行过取样,并从过取样信号计算滑动平均值,以便从惯性传感器信号中去除寄生数据。在一些情况下,可能希望对信号进行过取样,并从数据点的某个子集中排除高和/或低值,以及从其余数据点计算滑动平均值。此外,其它数据取样和操纵技术可用于调整来自惯性传感器的信号,以便去除或减小寄生数据的重要性。技术的选择可取决于信号的性质、对信号执行的计算、游戏进行的性质或者它们的两个或更多的某种组合。这类技术可通过可存储在存储器602中并且由处理器601运行的程序604的指令来实现。处理器601可响应由存储器602存储及检索并且由处理器模块601运行的数据606和程序604的程序代码指令而执行如上所述的惯性信号数据606的分析。程序604的代码部分可符合多种不同编程语言的任一种,例如汇编、C++、JAVA或许多其它语言。处理器模块601形成通用计算机,它在运行例如程序代码604等程序时成为专用计算机。虽然程序代码604在本文中描述为通过软件来实现并且运行于通用计算机,但是,本领域的技术人员会知道,任务管理的方法备选地可使用例如专用集成电路(ASIC)或其它硬件电路等的硬件来实现。因此,应当理解,本发明的实施例可以整体或部分通过软件、硬件或者它们两者的组合来实现。在一个实施例中,程序代码604其中还可包括处理器可读指令集,该指令集实现具有与图5B的方法510和图5C的方法520或者它们的两个或更多的某种组合一样的特征的方法。程序代码604 —般可包括一个或多个指令,这些指令指导一个或多个处理器分析来自惯性传感器632的信号,以便生成位置和/或取向信息,并在进行视频游戏期间利用该信息。程序代码604可选地可包括处理器可执行指令,其中包括一个或多个指令,它们在运行时使图像捕捉单元623监测图像捕捉单元623前面的视野,识别视野中的光源634中的一个或多个,检测从光源634发出的光线的变化;以及响应检测到变化而触发对处理器601的输入命令。例如在2004年I月16日提交的授予Richard L. Marks的标题为“用于光输入装置的方法和设备”的美国专利申请号10/759782中描述了与图像捕捉装置结合使用LED来触发游戏控制器中的动作,通过引用将它完整地结合到本文中。程序代码604可选地可包括处理器可执行指令,其中包括一个或多个指令,它们在运行时使用来自惯性传感器的信号以及从图像捕捉单元通过跟踪一个或多个光源所生成的信号作为对游戏系统的输入,如上所述。程序代码604可选地可包括处理器可执行指令,其中包括在运行时补偿惯性传感器632中的漂移的一个或多个指令。另外,程序代码604可选地可包括处理器可执行指令,其中包括在运行时调整控制器操纵对游戏环境的联动和映射的一个或多个指令。这种特征允许用户改变游戏控制器630的操纵对游戏状态的“联动”。例如,游戏控制器630的45度旋转可与游戏对象的45度旋转联动。但是,这种1:1联动比可修改成使得控制器的X度旋转(或者倾斜或偏航或“操纵”)转换成游戏对象的Y旋转(或者倾斜或偏航或“操纵”)。联动可以是1:1比率、I 2比率、I X比率或者X Y比率,其中X和Y可取任意值。另外,输入通道到游戏控制的映射还可随时间或者即时修改。修改可包括改变姿势轨迹模型、修改位置、标度、姿势的阈值等。这种映射可以经过编程、随机、重叠、交错等,以便为用户提供动态范围的操纵。映射、联动或比率的修改可由游戏程序604按照游戏进行、游戏状态、通过设置在游戏控制器630上的用户修改器按钮(小键盘等)或者广泛地响应输入通道来调整。输入通道可包括但不限于用户音频、控制器生成的音频、控制器生成的跟踪音频、控制器按钮状态、摄像机输出、包括加速计数据、倾斜、偏航、翻滚、位置、加速度的控制器遥测数据以及来自传感器的能够跟踪用户或者对于对象的用户操纵的任何其它数据。在某些实施例中,游戏程序604可通过预定的时间相关方式随时间从一种方案或比率到另一种方案分别改变映射或联动。联动和映射变化可通过各种方式应用于游戏环境。在一个示例中,当人物健康时,视频游戏人物可按照一种联动方案来控制,而当人物的健康恶化时,系统可调整控制器命令,因此迫使用户加剧控制器的移动以向人物示意命令。当例如可能要求用户调整输入以便在新映射下重新获得人物的控制时,变得迷失方向的视频游戏人物可迫使改变输入通道的映射。修改输入通道到游戏命令的转换的映射方案也可在游戏进行期间改变。这种转换可响应游戏状态或者响应输入通道的一个或多个元素下发出的修改命令而通过各种方式进行。联动和映射还可配置成影响输入通道的一个或多个元素的配置和/或处理。另外,例如喇叭、蜂鸣器、号角、风笛等的声音发射器636可安装到操纵杆控制器630。在某些实施例中,声音发射器能以可分离方式安装到操纵杆控制器630的“主体(body) ”。在程序代码604定位和表征采用话筒阵列622所检测的声音的“声雷达”实施例中,声音发射器636可提供可由话筒阵列622检测并且由程序代码604用来跟踪游戏控制器630的位置的音频信号。声音发射器636还可用于将附加“输入通道”从游戏控制器630提供给处理器601。可定期用脉冲发送来自声音发射器636的音频信号,以便提供使声雷达跟踪位置的信标。音频信号(用脉冲发送或其它方式)可以是可听的或者是超声波的。声雷达可跟踪游戏控制器630的用户操纵,并且其中这种操纵跟踪可包括与游戏控制器630的位置和取向(例如俯仰、翻滚或偏航角)有关的信息。脉冲能以适当的工作周期来触发,这是本领域的技术人员能够应用的。脉冲可根据从系统仲裁的控制信号来发起。系统600 (通过程序代码604)可协调与处理器601耦合的两个或更多操纵杆控制器630之间的控制信号的分发,以确保可跟踪多个控制器。在某些实施例中,混合器605可配置成获得用于使用从游戏控制器630上的例如模拟操纵杆控件631和按钮633等常规控件所接收的输入来控制游戏程序604的运行的输入。具体来说,接收混合器605可接收来自控制器630的控制器输入信息。控制器输入信息可包括下列至少一个a)识别游戏控制器的用户可移动控制杆相对于控制杆的静止位置的当前位置的信息,或者b)识别游戏控制器中包含的开关是否为活动的信息。混合器605还可接收来自正使用控制器630的环境的补充输入信息。作为示例而不是限制,补充输入信息可包括下列一个或多个i)从环境中的图像捕捉装置(例如图像捕捉单元623)所得到的信息;和/或ii)来自与游戏控制器或用户的至少一个关联的惯性传感器(例如惯性传感器632)的信息;和/或iii)从环境中的声换能器所得到的声信息(例如来自话筒阵列622,可能与声发射器636生成的声信号结合)。控制器输入信息还可包括识别压力敏感按钮是否为活动的信息。通过处理控制器输入信息和补充输入信息以产生组合输入,混合器605可获得用于控制游戏程序604的运行的组合输入。组合输入可包括用于在游戏程序604的运行期间控制相应的各个功能的各个合并输入。可通过合并关于特定单独功能的控制器输入信息以及关于特定单独功能的补充输入信息,来获得各个合并输入的至少一些。组合输入可包括用于在游戏程序604的运行期间控制某个功能的合并输入,并且可通过合并关于该功能的控制器输入信息以及关于该功能的补充输入信息,来获得合并输入的至少一些。在这类情况下,可通过求表示控制器输入信息的值与表示补充输入信息的值的平均,来执行合并。作为示例,可按照一比一的比率求控制器输入信息的值与补充输入信息的值的均值。备选地,控制器输入信息和补充输入信息均可被赋予不同的权重,并且可按照所赋权重、作为控制器输入信息和补充输入信息的值的加权平均,来执行求均值。
在一些实施例中,控制器输入信息或者补充输入信息的第一个的值可用作对游戏程序的修改输入,用于修改对于按照控制器输入信息或者补充输入信息的第二个的至少一个所激活的仍然活动的功能的控制。补充输入信息可包括通过操作惯性传感器632所得到的惯性传感器信息和/或表示用户可移动对象的取向的取向信息。备选地,补充输入信息包括指示用户可移动对象的位置或取向的至少一个的信息。这里所使用的“用户可移动对象”可指控制器630或者安装到控制器630的主体的产品,并且补充输入信息包括指示用户可移动对象的取向的信息。作为示例,这种取向信息可包括指示俯仰、偏航或翻滚中的至少一个的信息。在一些实施例中,可通过将表示控制杆(例如模拟操纵杆631其中之一)的位置的控制器输入信息的值与表示用户可移动对象的取向的补充输入信息的值合并,来获得组合输入。如上所述,用户可移动对象可包括安装到游戏控制器630的对象和/或游戏控制器630,以及当控制杆向后移动、同时俯仰增加到正(昂头(nose-up))值时,组合输入可反映增强的上仰输入。类似地,当控制杆向前移动、同时俯仰减少到负(下冲)值时,组合输入可反映增强的俯冲输入。可通过指定表示控制杆的位置的控制器输入信息的值作为粗控制信息以及指定表示用户可移动对象的取向的补充输入信息的值作为细控制信息,来获得组合输入。备选地,可通过指定识别游戏控制器的开关是否为活动的控制器输入信息的值作为粗控制信息以及指定表示用户可移动对象的取向的补充输入信息的值作为细控制信息,来获得组合输入。另外,可通过指定表示用户可移动对象的取向的补充输入信息的值作为粗控制信息以及指定表示控制杆的位置的控制器输入信息的值作为细控制信息,来获得组合输入。此外,还可通过指定识别游戏控制器的开关是否为活动的控制器输入信息的值作为细控制信息以及指定表示用户可移动对象的取向的补充输入信息的值作为粗控制信息,来获得组合输入。在所有这些情况或者其中的任一个情况中,组合输入可表示按照细控制信息调整相对较小数量的粗控制信息的值。在一些实施例中,可通过将控制器输入信息所表不的值与补充输入信息所表不的值加法组合,使得组合输入向游戏程序604提供具有比控制器输入信息或者补充输入信息单独取的值的任一个更高或更低的值的信号,来获得组合输入。备选地,组合输入可向游戏程序604提供具有平滑值的信号,平滑值信号随时间经过比控制器输入信息或者补充输入信息单独取的值的任一个更缓慢的变化。组合输入还可向游戏程序提供具有增加的信号内容的高清晰度信号。高清晰度信号可随时间经过比控制器输入信息或者补充输入信息单独取的值的任一个更迅速的变化。虽然根据与视频游戏控制器630的游戏相关的示例描述了本发明的实施例,但是,包括系统600在内的本发明的实施例可以在任何用户操纵主体、塑造对象、旋钮、结构等之上使用,其中具有惯性感测能力以及无线或其它方式的惯性传感器信号传输能力。作为示例,本发明的实施例可在并行处理系统上实现。这类并行处理系统通常包括两个或更多处理器元件,它们配置成使用独立处理器并行运行程序的若干部分。作为示例而不是限制,图7示出根据本发明的一个实施例的一种类型的cel I处理器700。cell处理器700可用作图6的处理器601或者图5A的处理器502。在图7所示的示例中,cell处理器700包括主存储器702、功率处理器元件(PPE) 704和多个协同处理器元件(SPE) 706。在图7所示的示例中,cell处理器700包括单个PPE 704和八个SPE 706。在这种配置中,SPE 706中的七个可用于并行处理,而一个可保留作为另外七个中的一个出故障时的备用。备选地,cell处理器可包括多组PPE (PPE组)和多组SPE (SPE组)。在这种情况下,硬件资源可在一组中的单元之间共享。但是,SPE和PPE对软件必须表现为独立元件。因此,本发明的实施例并不局限于与图7所示的配置配合使用。主存储器702通常包括通用和非易失性存储装置以及用于例如系统配置、数据传递同步、存储器映射I/O和I/O子系统等功能的专用硬件寄存器或阵列。在本发明的实施例中,视频游戏程序703可常驻主存储器702中。存储器702还可包含信号数据709。视频程序703可包括惯性、图像以及以上针对图4、图5A、图5B或图5C所述或者它们的某种组合所配置的声学分析器和混合器。程序703可在PPE上运行。程序703可分为可在SPE和/或PPE上运行的多个信号处理任务。作为示例,PPE 704可以是具有关联的LI和L2高速缓存的64位PowerPC处理器单元(PPU)。PPE 704是通用处理单元,它可访问系统管理资源(例如存储器保护表)。硬件资源可明确映射到PPE所看到的实际地址空间。因此,PPE可通过使用适当的有效地址值直接对这些资源的任一个寻址。PPE 704的主要功能是管理和分配cell处理器700中的SPE 706的任务。虽然图7中仅示出单个PPE,但在一些cell处理器实现、如cell宽带引擎架构(CBEA)中,cell处理器700可具有组织成PPE组的多个PPE,PPE组中可存在多于一个PPE。这些PPE组可共享对主存储器702的存取。此外,cell处理器700可包括两组或更多组SPE0 SPE组也可共享对主存储器702的存取。这类配置落入本发明的范围之内。各SPE 706包括协同处理器单元(SPU)以及它自己的本地存储区LS。本地存储区LS可包括一个或多个独立的存储器存储区,每一个与特定SPU关联。各SPU可配置成仅运行来自它自己的关联的本地存储域中的指令(包括数据加载和数据存储操作)。在这种配置中,可通过从存储器流控制器(MFC)发出直接存储器存取(DMA)命令以便向(单独SPE的)本地存储域传递数据或传递来自本地存储域的数据,来执行本地存储区LS与系统700的其它位置之间的数据传递。与PPE 704相比,SPU是不太复杂的计算单元,因为它们不执行任何系统管理功能。SPU —般具有单指令多数据(SMD)能力,并且通常处理数据并发起任何所需数据传递(服从PPE所建立的访问属性),以便执行其分配任务。SPU的目的是实现需要较高计算单元密度的应用,并且可有效地使用提供的指令集。PPE 704所管理的系统中的大量SPE允许对于大范围应用的节省成本的处理。各SPE 706可包括专用存储器流控制器(MFC),它包括可保持和处理存储器保护以及访问准许信息的关联存储器管理单元。MFC提供cell处理器的主存储装置与SPE的本地存储装置之间的数据传递、保护和同步的初步方法。MFC命令描述待执行的传递。传递数据的命令有时称作MFC直接存储器存取(DMA)命令(或MFC DMA命令)。各MFC可同时支持多个DMA传递,并且可保持和处理多个MFC命令。各MFC DMA数据传递命令请求可包含本地存储地址(LSA)和有效地址(EA)。本地存储地址可以仅对其关联SPE的本地存储区直接寻址。有效地址可具有更一般应用,例如,它可以能够引用主存储装置,包括所有SPE本地存储区,如果它们混叠到实际地址空间。为了帮助SPE 706之间和/或SPE 706与PPE 704之间的通信,SPE706和PPE 704可包括依靠信令事件的信号通知寄存器。PPE 704和SPE 706可通过星形拓扑结构进行耦合,其中PPE 704充当向SPE 706传送消息的路由器。备选地,各SPE 706和PPE 704可具有称作邮箱的单向信号通知寄存器。邮箱可由SPE 706用来主持操作系统(OS)同步。cell处理器700可包括输入/输出(I/O)功能708,cell处理器700可通过该功能与例如话筒阵列712以及可选图像捕捉单元713及游戏控制器730等的外围装置接口。游戏控制器单元可包括惯性传感器732和光源734。另外,元件互连总线710可连接上述各种组件。各SPE和PPE可通过总线接口单元BIU来访问总线710。cell处理器700还可包括通常存在于处理器中的两个控制器控制总线710与主存储器702之间的数据流的存储器接口控制器MIC以及控制I/O 708与总线710之间的数据流的总线接口控制器BIC。虽然MIC、BIC、BIU和总线710的要求对于不同的实现可能极大地改变,但是本领域的技术人员会熟悉其功能以及用于实现它们的电路。cell处理器700还可包括内部中断控制器IIC。IIC组件管理提供给PPE的中断的优先级。Iic允许处理来自cell处理器700的其它组件的中断,而无需使用主系统中断控制器。IIC可被看作是第二级控制器。主系统中断控制器可处理cell处理器外部始发的中断在本发明的实施例中,可使用PPE 704和/或SPE 706的一个或多个并行执行某些计算、如上述分数延迟。各分数延迟计算可作为一个或多个独立任务来运行,在它们变为可用时不同SPE 706可进行这些任务。虽然以上是对本发明的优选实施例的完整描述,但是能够使用各种备选、修改和等效方案。因此,本发明的范围不应当参照以上描述来确定,而是应当参照所附权利要求及其完整的等效范围共同确定。本文所述的无论是否优选的任何特征均可与本文所述的无论是否优选的任何其它特征进行组合。在以下权利要求书中,“一个”指的是该词之后的一项或多项的数量,除非另加说明。所附权利要求书不是要理解为包含部件加功能限制,除非在给定权利要求中使用词语“用于.· ·的部件”明确描述这种限制。
权利要求
1.一种用于控制程序的运行的控制器,包括 来自用户可操纵控制器的控制器输入信息的源,所述控制器输入信息包括用于识别所述控制器上的用户可移动开关或控制杆的当前状态的信息; 来自所述控制器的补充输入信息的源,其中所述补充输入信息包括指示所述控制器的三维运动的信息;并且 其中,所述控制器输入信息和所述补充输入信息配置成通过处理所述控制器输入信息和所述补充输入信息以得到组合输入而相组合,从而获得用于控制所述程序的运行的所述组合输入,其中通过指定所述控制器输入信息的值作为粗控制信息以及指定表示所述用户可移动对象的取向的所述补充输入信息的值作为细控制信息或反之来获得所述组合输入。
2.如权利要求1所述的控制器,其中,所述控制器输入信息和所述补充输入信息配置成使得所述组合输入包括用于在所述程序的运行期间控制某个功能的合并输入,并且通过合并有关所述功能的所述控制器输入信息以及有关所述功能的所述补充输入信息来获得所述合并输入的至少一些。
3.如权利要求2所述的控制器,其中,通过求表示所述控制器输入信息的值与表示所述补充输入信息的值的均值,来执行所述合并。
4.如权利要求3所述的控制器,其中,按照一比一的比率求所述控制器输入信息的值与所述补充输入信息的值的均值。
5.如权利要求3所述的控制器,其中,所述控制器输入信息和所述补充输入信息均被赋予不同的权重,并且按照所赋权重、作为控制器输入信息和补充输入信息的所述值的加权平均,来执行所述求均值步骤。
6.如权利要求1所述的控制器,其中,所述控制器输入信息或者所述补充输入信息的第一个的值配置成用作对所述程序的修改输入,以用于修改对于按照所述控制器输入信息或者所述补充输入信息的第二个的至少一个所激活的仍然活动的功能的控制。
7.如权利要求1所述的控制器,其中,所述补充信息的源包括所述控制器上的LED光源和漫射器,其中所述漫射器配置成使来自所述光源的光发生漫射,并且其中从所述LED光源在从图像捕捉装置所得到的图像内的漫射图像获取所述补充输入信息。
8.如权利要求1所述的控制器,其中,所述补充输入信息还包括通过操作惯性传感器所得到的惯性传感器信息或者表示用户可移动对象的取向的取向信息的至少一个。
9.如权利要求8所述的控制器,其中,所述惯性传感器安装到所述控制器,并且所述惯性传感器包括加速计或陀螺仪的至少一个。
10.如权利要求1所述的控制器,其中,所述补充输入信息包括指示用户可移动对象的位置或取向的至少一个的信息。
11.如权利要求10所述的控制器,其中,所述用户可移动对象包括所述控制器或者安装到所述控制器的主体的产品的至少一个,并且所述补充输入信息包括指示所述用户可移动对象的取向的信息。
12.如权利要求10所述的控制器,其中,所述补充输入信息包括指示俯仰、偏航或翻滚的至少一个的信息。
13.如权利要求12所述的控制器,其中,所述补充输入信息包括指示俯仰、偏航或翻滚的信息。
14.如权利要求10所述的控制器,其中,通过将表示所述开关或控制杆的状态的控制器输入信息的值与表示所述用户可移动对象的取向的所述补充输入信息的值合并,来获得所述组合输入。
15.如权利要求14所述的控制器,其中,当所述控制杆向后移动、同时俯仰增加到正(昂头)值时,所述组合输入反映增强的上仰输入。
16.如权利要求15所述的控制器,其中,当所述控制杆向前移动、同时俯仰减小到负(下冲)值时,所述组合输入反映增强的俯冲输入。
17.如权利要求14所述的控制器,其中,所述组合输入表示按照所述细控制信息调整相对较小数量的所述粗控制信息的值。
18.如权利要求14所述的控制器,其中,通过指定识别所述控制器上的所述开关或控制杆是否为活动的所述控制器输入信息的值作为粗控制信息以及指定表示所述用户可移动对象的取向的所述补充输入信息的值作为细控制信息来获得所述组合输入,其中所述组合输入表示按照所述细控制信息调整相对较小数量的所述粗控制信息的值。
19.如权利要求14所述的控制器,其中,所述控制器输入信息和所述补充信息配置成使得通过指定识别所述控制器上的所述开关或控制杆是否为活动的所述控制器输入信息的值作为细控制信息以及指定表示所述用户可移动对象的取向的所述补充输入信息的值作为粗控制信息来获得所述组合输入,其中所述组合输入表示按照所述细控制信息调整相对较小数量的所述粗控制信息的值。
20.如权利要求1所述的控制器,其中,所述控制器输入信息和所述补充信息配置成使得通过将所述控制器输入信息所表示的值与所述补充输入信息所表示的值加法组合以使得所述组合输入向所述程序提供具有比所述控制器输入信息或者所述补充输入信息单独取的值的任一个更高的值的信号来获得所述组合输入。
21.如权利要求1所述的控制器,其中,所述控制器输入信息和所述补充信息配置成使得通过将所述控制器输入信息所表示的值与所述补充输入信息所表示的值减法组合以使得所述组合输入向所述程序提供具有比所述控制器输入信息或者所述补充输入信息单独取的值的任一个更低的值的信号来获得所述组合输入。
22.如权利要求1所述的控制器,其中,所述控制器输入信息和所述补充信息配置成使得所述组合输入向所述程序提供具有平滑值的信号,所述平滑值信号随时间经过比所述控制器输入信息或者所述补充输入信息单独取的值的任一个更缓慢的变化。
23.如权利要求1所述的控制器,其中,所述控制器输入信息和所述补充信息配置成使得所述组合输入向所述程序提供具有增加的信号内容的高清晰度信号,所述高清晰度信号随时间经过比所述控制器输入信息或者所述补充输入信息单独取的值的任一个更迅速的变化。
24.如权利要求1所述的控制器,其中,所述补充输入信息包括响应从所述控制器上的声源发射的声音从环境中的声换能器所得到的声信息。
25.如权利要求1所述的控制器,其中,所述控制器输入信息包括识别压力敏感按钮是否为活动的信息。
26.如权利要求1所述的控制器,其中,所述补充输入信息包括下列至少一个i)从环境中的图像捕捉装置所得到的信息,ii)来自与所述控制器或用户的至少一个关联的惯性传感器的信息,或者iii)来自环境中的声换能器的信息。
27.如权利要求1所述的控制器,其中,所述补充输入信息包括从环境中的图像捕捉装置所得到的信息、来自与所述控制器或用户的至少一个关联的惯性传感器的信息以及来自环境中的声换能器的信息。
全文摘要
公开了获得用于控制游戏的运行的输入的方法。在本发明的实施例中,可在姿势识别的分析之前,混合来自惯性、图像捕捉和声源的控制器路径信息。
文档编号A63F13/06GK102989174SQ20121049671
公开日2013年3月27日 申请日期2007年4月14日 优先权日2006年5月4日
发明者X.毛, R.L.马克斯, G.M.扎列夫斯基 申请人:美国索尼电脑娱乐公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1