CN102243528A - 在自由空间中提供方向性力反馈 - Google Patents
在自由空间中提供方向性力反馈 Download PDFInfo
- Publication number
- CN102243528A CN102243528A CN2011101846644A CN201110184664A CN102243528A CN 102243528 A CN102243528 A CN 102243528A CN 2011101846644 A CN2011101846644 A CN 2011101846644A CN 201110184664 A CN201110184664 A CN 201110184664A CN 102243528 A CN102243528 A CN 102243528A
- Authority
- CN
- China
- Prior art keywords
- user
- power
- axle construction
- force vector
- data
- 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
Links
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/25—Output arrangements for video game devices
- A63F13/28—Output arrangements for video game devices responding to control signals received from the game device for affecting ambient conditions, e.g. for vibrating players' seats, activating scent dispensers or affecting temperature or light
- A63F13/285—Generating tactile feedback signals via the game input device, e.g. force feedback
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/016—Input arrangements with force or tactile feedback as computer generated output to the user
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/20—Input arrangements for video game devices
- A63F13/21—Input arrangements for video game devices characterised by their sensors, purposes or types
- A63F13/211—Input arrangements for video game devices characterised by their sensors, purposes or types using inertial sensors, e.g. accelerometers or gyroscopes
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/20—Input arrangements for video game devices
- A63F13/21—Input arrangements for video game devices characterised by their sensors, purposes or types
- A63F13/213—Input arrangements for video game devices characterised by their sensors, purposes or types comprising photodetecting means, e.g. cameras, photodiodes or infrared cells
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/20—Input arrangements for video game devices
- A63F13/21—Input arrangements for video game devices characterised by their sensors, purposes or types
- A63F13/218—Input arrangements for video game devices characterised by their sensors, purposes or types using pressure sensors, e.g. generating a signal proportional to the pressure applied by the player
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/20—Input arrangements for video game devices
- A63F13/24—Constructional details thereof, e.g. game controllers with detachable joystick handles
- A63F13/245—Constructional details thereof, e.g. game controllers with detachable joystick handles specially adapted to a particular type of game, e.g. steering wheels
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/40—Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
- A63F13/42—Processing 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/428—Processing 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 involving motion or position input signals, e.g. signals representing the rotation of an input controller or a player's arm motions sensed by accelerometers or gyroscopes
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/80—Special adaptations for executing a specific game genre or game mode
- A63F13/833—Hand-to-hand fighting, e.g. martial arts competition
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features 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/10—Features 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 input arrangements for converting player-generated signals into game device control signals
- A63F2300/1037—Features 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 input arrangements for converting player-generated signals into game device control signals being specially adapted for converting control signals received from the game device into a haptic signal, e.g. using force feedback
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features 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/10—Features 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 input arrangements for converting player-generated signals into game device control signals
- A63F2300/1087—Features 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 input arrangements for converting player-generated signals into game device control signals comprising photodetecting means, e.g. a camera
- A63F2300/1093—Features 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 input arrangements for converting player-generated signals into game device control signals comprising photodetecting means, e.g. a camera using visible light
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features 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/50—Features 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/55—Details of game data or player data management
- A63F2300/5546—Details of game data or player data management using player registration data, e.g. identification, account, preferences, game history
- A63F2300/5553—Details of game data or player data management using player registration data, e.g. identification, account, preferences, game history user representation in the game field, e.g. avatar
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features 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/60—Methods for processing data by generating or executing the game program
- A63F2300/66—Methods for processing data by generating or executing the game program for rendering three dimensional images
- A63F2300/6607—Methods for processing data by generating or executing the game program for rendering three dimensional images for animating game characters, e.g. skeleton kinematics
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2203/00—Indexing scheme relating to G06F3/00 - G06F3/048
- G06F2203/01—Indexing scheme relating to G06F3/01
- G06F2203/013—Force feedback applied to a game
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Toys (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明涉及在自由空间中提供方向性力反馈。提出了用于使用可绕可移动轴旋转的质量块在自由空间中向用户生成方向性力反馈的技术。质量块和可移动轴响应于控制信号生成三维空间中具有方向和大小的力矢量,以向用户提供反馈。力矢量是响应于在处理设备中执行的应用中的事件而创建的。力矢量表示关于应用中的事件的反馈。
Description
技术领域
本发明涉及自由空间中提供方向性力反馈的技术。
背景技术
用户在处理设备上控制的应用以音频、视觉和感觉的形式向用户提供传感反馈。应用可使用反馈来提供指令和信息,或作为导航辅助。娱乐领域中的诸如游戏之类的应用力求改善用户的真实地处于计算机生成的现实中的体验。例如,使用加速计和其他传感器的手持设备允许用户的物理运动被转换到游戏应用中,并基于游戏中事件提供振动反馈。
在诸如游戏中所使用的虚拟现实环境中,用户可通过诸如化身之类的用户的屏幕上表示来与虚拟环境交互。游戏中发生的事件可被转换成对控制设备的反馈。例如,当用户使用基于控制器的移动击打网球时,控制器可振动。
发明内容
提出了用于在自由空间中向用户生成方向性力反馈的技术。该技术使用可绕可移动的轴旋转的质量块。可移动的轴可绕与该可移动的轴正交的轴转动,或者可耦合到将该可移动的轴定位在绕枢轴移动的范围内的轴结构和横臂。质量块和可移动的轴响应于控制信号生成三维空间中具有方向和大小的力矢量,以向用户提供反馈。力矢量是响应于在处理设备中执行的应用中的事件而产生的。力矢量表示关于应用中的事件的反馈。
该事件使得生成物在应用的上下文中有意义。例如,所生成的力可表示对用户的消息。在某些示例中,消息的含义可以是对用户的问题或动作的指令或物理响应。在另一示例中,所生成的力可对应于指向应用的上下文中的虚拟对象的虚拟力矢量,该虚拟对象对应于用户手持的且反馈设备所附连的物理对象。当方向性反馈设备生成力矢量时,手持附连于反馈设备的物体的用户或设备本身将感受到力。
提供本发明内容以便以简化形式介绍将在以下的具体实施方式中进一步描述的一些概念。本发明内容并不旨在标识出所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。
附图说明
参考附图进一步描述根据本说明书的用于在自由空间中提供方向性力反馈的方向性反馈设备的系统、方法和计算机可读介质。
图1A和1B示出可生成表示向用户的力的力矩的关系的一个实施例。
图2示出整装的方向性力反馈设备的实施例。
图3描绘了包括自由空间方向性反馈设备的实施例的物理对象的玩具剑示例。
图4示出了用于由执行中的应用确定物理力矢量的计算环境的示例实施例。
图5A和5B示出方向性力反馈设备的控制系统的实施例。
图6是为方向性力反馈设备定义力矢量的方法实施例的流程图。
图7是参考设备的原位置生成力的方法实施例的流程图。
图8A示出自由空间方向性反馈设备的实施例。
图8B示出方向性反馈设备的另一实施例。
图9A示出容纳在图8B的一个附连结构中的短轴型电动机系统。
图9B示出容纳在图8B的另一附连结构中的另一短轴型电动机系统。
图10A示出方向性反馈设备的另一实施例,其中在基于无刷DC电动机的布置中的磁体绕轴结构旋转质量块。
图10B示出用于绕轴结构旋转质量块的磁体的不同布置中的方向性反馈设备的另一实施例。
图11A示出容纳在图10A和10B的附连结构之一中的电磁体。
图11B示出容纳在图10A和10B的另一附连结构中的电磁体。
图12A示出方向性反馈设备的又一实施例。
图12B示出在不同于原位置的位置中图12A的实施例。
图13A示出可充当用户输入设备的方向性反馈设备。
图13B示出用于传感导电胶中的变化的示例构造。
图14A示出方向性反馈设备的另一实施例,该方向性反馈设备还可使用至少一个指定压力点而用作用户输入设备。
图14B和14C示出了在具有图14A的指定压力点的情况下,用于传感导电胶中的变化的另一示例构造。
图15示出了用于处理来自自由空间方向性反馈设备的用户输入的方法的实施例的流程图。
图16示出了用户玩剑击游戏软件应用的目标识别、分析和跟踪系统的配置的示例实施例。
图17是能在目标识别、分析和跟踪系统中工作的用于在自由空间中提供传感方向性反馈的方法的实施例的流程图。
图18A示出可用于类似于图16中的游戏控制台的计算环境的实施例的详细示例,其中用于在自由空间中提供方向性反馈的一个或多个实施例可工作。
图18B示出用于在自由空间中提供方向性反馈的一个或多个实施例可工作的计算环境的另一示例实施例。
图18C示出用于在自由空间中提供方向性反馈的一个或多个实施例可工作的联网计算环境的示例实施例。
图19示出可用于适用于一个或多个实施例的目标识别、分析和跟踪系统的图像捕捉系统的实施例。
图20A和20B示出了用于跟踪手持方向性反馈设备的用户的方法实施例的流程图。
图21A示出了两把虚拟剑之间的剑击。
图21B示出方向性反馈设备中力生成系统的模型的原位置。
图21C示出轴结构响应于剑击而进入的位置。
图22A和22B示出了形成为道具的反馈设备的替换实施例。
具体实施方式
提出了在自由空间中提供方向性力反馈的技术。使用可绕轴旋转的质量块来提供力的生成,轴是可移动的。质量块和可移动的轴生成三维空间中具有方向和大小的力矢量,以向用户提供反馈。力矢量是响应于在处理设备中执行的应用中的事件而产生的。力矢量表示关于应用中的事件的反馈。该技术通过在质量块中生成力矩来生成力矢量。生成的力矩大小和方向被手持该质量块的用户感受到。力矩提供了来自与力矩所来自的方向相同方向的力的物理传感。
图1A示出对于绕第一轴的旋转的力矩、力和位置矢量之间的关系,图1B示出对于绕第二轴旋转的力矩、力和位置矢量之间的关系。力等于质量乘以加速度(加速度是时间变化率)。位置矢量“r”表示从旋转物体的边缘的一点到旋转轴的距离。该关系由T=r x F来捕捉。力矩T的大小是rFsinθ。θ是盘的边缘上的该点上的力和其离旋转轴的距离r之间的角度。在该例中,是90度,因此sinθ是1。所有的讨论都假设右手坐标系且应用右手规则,但是如果需要的话左手坐标系也可用于该技术。
图1A和1B示出可生成表示向用户的力的力矩的关系的一个实施例。图1A示出轴结构104,具有绕其重心的质量块102,在该示例中,质量块是盘。在该示例中,重心是xyz参考坐标系的中心。轴结构104以及稍候在图1B中所示的盘102绕重心旋转。在图1A中,盘当前不在旋转。力F2是使轴结构104从正y轴向负x轴(-x轴)逆时针旋转到图1B所示的位置的旋转力。尽管轴结构104在旋转,但是力F2总是垂直于在位置矢量r2的末端处的端部108的点。该旋转所生成的力矩T2在力F2旋转时总是在点108处垂直于力F2,且总是垂直于位置矢量r2,如由T2=r2 x F2表示;力矩T2等于r2和F2的叉积。使用右手规则,食指指向位置矢量r2的方向(y轴)。中指、无名指和小拇指在从y轴到-x轴的旋转力F2的方向上弯曲。拇指指向力矩T2的方向,在该示例中是沿正z轴向页面外。
在图1B中,F2现在为0,使得轴结构104与x轴对齐或平行且静止不动。没有了力F2,则T2现在也为0。在图1B中,在位置矢量r1的结束处盘的边缘上的点处的力F1的作用下,盘102绕轴结构104旋转。力F1指向页面内,因此使用右手规则,力矩T1出现在-x轴(负x轴)方向,从端部108出来。
用户感受到的力通常是有有限的持续时间的。例如,如果力矩要表示从与游戏环境中的另一物体的接触而生成的力,则在接触结束时将解除力。如果接触是击打、猛击、打击,则它最多仅可持续几秒。
在一个实施例中,力F2可用于通过将轴结构104定位在某一角度来设定力矩T1的方向。在图1A和1B的示例中,离开初始或重心位置-90度。一旦处于所需方向的角度,力F2就被去除且在特定方向上施加力F1以生成从轴结构104的预期端部向外的力矩T1。例如,如果力F1指向页面外,则盘以相反方向旋转,且T1将朝向端部106之外。在一个示例中,为了最小化对生成的力矩T2的感受,轴结构104可由类似塑料的轻型材料制成,以便不会向盘添加太多的质量。此外,轴结构104可以比盘速度低得多得多的速度移动,从而产生小得多得多的力F2和力矩T2。例如,盘速度可以是每分钟5000转(RPM),而轴结构的旋转速度可以是它的十分之一。通过保持盘旋转的时间比将轴结构104定向到所需角度的时间更长,用户将力矩T1而不是更小的力矩T2与所表示的接触或消息相关联。在另一示例中,力F2可以快速的、迅速突发地施加到轴结构104,然后是产生力矩T1的旋转盘的更长的力时间段持续时间。
通过将轴结构104定向到特定角度并使用盘102旋转所生成的力矩,可在由两个轴定义的平面内以360度表示力矢量,即沿圆周。
平衡重量的盘帮助随时间保持垂直关系不变以保持力矩方向始终一致。也可使用旋转速率或速度来控制力矩的大小,以及因此控制用户在手持物理对象时感测或感觉到的所生成的力的大小。增加速度会增加力矩的大小,而降低速度会减小力矩的大小。力矩是通过绕与偏转事件相耦合的单个允许的旋转轴的扭转而生成的。尽管所产生的净力矩的真正方向随时间变化,但是偏转事件是以使得所体验到的力对于用户来说似乎是单向的速度来发生的。
图2示出了方向性力反馈设备的一个示例。该整装的方向性反馈设备204包括装在外壳内并附连到外壳的支承结构806,外壳在该示例中是球壳。可使用其它形状的反馈设备。支承结构806在轴结构804的两端支承轴结构804,轴结构804支承以轴结构为中心的盘质量块802。同样在该示例中,控制电路810(见下文的讨论)位于盘内,它解释从计算环境接收的用于力生成的指令。响应于指令,控制电路810向诸如电动机系统之类的一个或多个力生成系统生成控制信号,电动机系统例如在类似于按钮(knob)816之类的结构中且在盘802本身之内,用以旋转结构806和旋转盘802。控制电路810还根据诸如力时间段已结束之类的准则来停止力的生成。
与力的收回有关的方法使用偏转速度。一旦完成作用事件使得生成预期的方向力,旋转质量块的偏转停止,并且开始慢速返回原位置。在一个实施例中,质量块以大约45度/秒旋转回原位置,使得用户体验到几乎不可辨别的力矩,且设备准备好立刻用于第二作用事件。
在该示例中,球壳822是半透明的,以允许盘轮圈上的显示元件220和盘表面240上的显示元件可被用户看到。在其它示例中,外壳可以是透明的。显示元件的示例是发光二极管(LED)。如下面更详细讨论的,控制电路810可经无线通信从诸如游戏控制台等通信上耦合的计算环境接收数据。数据可用于由一个或多个显示元件220、224显示。数据的某些示例是颜色或诸如罗经点之类的图像或文本或视频。在某些实例中,当盘旋转时,更新到显示元件的数据也可看上去移动。当盘以最高速度旋转时,旋转的LED条将形成视觉上的环形显示。LED本身被精确地定时以在它们旋转时表示显示区域的全部像素。
图3示出结合在物理对象中的可用于增强玩游戏的方向性反馈设备204。在图3中,所描绘的物理对象是结合了方向性反馈设备204的玩具剑200。玩具剑具有在两侧延伸的剑刃206和剑柄202。该玩具剑可以是轻型的塑料剑。
在该示例中,方向性反馈设备204附连到剑柄。这种附连可以是诸如具有自粘合扣件或咬合件的带之类的简单结构连接。在某些示例中,物理对象可被模型化成为扣件留出空间或被模型化为方向性反馈设备在适当的位置被装入并咬合的形状。在该示例中,反馈设备204配备有手柄部分820,手柄部分也容纳在剑柄202中。通过具有用于物体物理的附连的结构形状,物理对象不需要电子电路来与反馈设备交互。
如附图中的示例所示,方向性反馈设备204尺寸上足够小,从而可被手持。在一个示例中,它的直径小于4英寸。
图4、5A和5B示出了在用于向用户提供方向性力反馈的系统中通信的计算环境。图4示出了包括用于确定物理力矢量以及将其定义通信给诸如图5A所示的方向性力反馈设备的控制系统的计算机硬件和软件组件的计算环境的示例实施例。
计算机系统300包括一个或多个处理器304,如实时、高运动视听显示的需求可要求的,该一个或多个处理器除了包括至少一个中央处理单元(CPU)之外还包括图形处理单元(GPU)。在该实施例中,处理器被示为具有本地存储器305,本地存储器可具体化为各种高速缓存设计,用以在复杂场景的实时视觉显示的高速执行需求方面辅助处理器。
处理器304经计算机通信总线316通信上耦合到其它硬件和软件组件。一个或多个网络适配器306与包括因特网203的一个或多个网络通信,以接收和发送用于计算机系统300的数据。一个或多个视听控制器308(如图形卡、声卡)通信上耦合到视听数据捕捉系统(如图19中的60)以及视听显示系统(如图16中的56)中的处理单元。如图16的示例中所示,视听显示系统56可以是诸如高清晰度电视(HDTV)之类的高级显示系统。在其它实施例中,显示器可以是较低分辨率显示器,其某些示例包括电视机、计算机监视器或移动设备显示器。
计算机系统具有用于处理来自诸如键盘或定点设备(如鼠标)之类的用户输入设备309的输入的I/O控制器310。一个或多个可移动介质接口控制器307便于对存储在诸如DVD、CD ROM、可移动硬盘和存储棒(memory stick)之类的介质存储设备319上的数据的传送和程序的执行。存储器控制器312在处理器304上执行的应用315的命令下控制去往和来自各种数据存储的数据的传送。
计算机系统300或计算环境300还包括用于无线地发送和接收数据的无线接口端口333。此外,系统300包括用于从诸如方向性反馈设备204上的加速计818(见图8A、8B、10A、10B)之类的远程传感器无线地接收数据的传感器接口端口335。在某些实例中,加速计可经无线接口端口333接受的无线协议来发送其数据,或者反馈设备204上的控制器(508)可经无线接口端口333接受的无线协议发送加速计数据。在其它示例中,协议可以是诸如使用单独的传感器接口端口335的红外光之类的另一无线协议。
存储器314表示典型计算机系统中存在的各种类型的存储器。这些包括用于引导软件的只读存储器(ROM)、用于存储操作系统318和应用315(系统应用和用户空间应用两者)的非易失性存储器。应用315包括用于一个或多个应用315所使用的一个或多个力确定软件处理模块323的软件和数据存储。这些应用的某些示例可包括游戏应用、3D电视应用、导航应用和教育应用。一个或多个力确定软件处理模块323确定要由反馈设备根据相应应用的准则来生成的物理力矢量。在某些实施例中,力确定软件323确定相对于来自加速计818或其它定向传感设备的位置数据的矢量定义。
存储器314还表示诸如采用各种技术实现(DRAM、SRAM等)的在应用在处理器304上执行时使用的随机存取存储器(RAM)之类的易失性存储。
各种类型的存储器314(易失性和非易失性两者)以及介质存储设备319是计算机可读存储介质的示例,计算机可读存储介质上编码了用于执行用于提供方向性力反馈的方法的计算机可执行指令。例如,它们可单独或组合地存储用于力确定模块323的软件和相关联的数据存储。
执行应用和模块323可访问操作系统318和操作系统为应用提供的或可为应用访问的各种信息,如用于接收数据或它所指定的端口。
图5A示出方向性力反馈设备的控制系统810的实施例。无线通信设备502,在该示例中是收发机502,从通信上耦合的、执行应用(例如315)的计算环境的无线接口端口333接收用力矢量的定义编码的无线信号,在该示例中力矢量的定义是所需力矢量的方向和大小。无线通信协议可以是射频(RF)、蓝牙或基于IEEE 802无线的标准(如802.11或802.16标准集合)之一,或任何其它合适的无线通信协议。收发机502从载波或在必要情况下的其它格式对编码信号进行解调。如果信号不是数字形式的,则收发机电路将数据的基带模拟信号转换成能够由控制器508或其它数字组件处理的数字信号。
数字信号经通信总线520发送到控制器508。示例类型的控制器508包括,但不限于,微控制器、微处理器或在希望的情况下的多个此类设备。
存储器512对于控制器508是可访问的。在一个示例中,存储器可包括用于存储控制器508可执行的软件的只读存储器(ROM)和用于在软件的执行期间使用的随机存取存储器(RAM)。在图5B所示的实施例中,力处理软件应用524存储在非易失性存储器中,并且在当由控制器508执行时确定一个或多个控制消息或信号,以发送到力生成模块控制硬件518来表示要由方向性反馈设备生成的力。在一个实施例中,力值的查找表526可存储在存储器512中,从中控制器508可基于接收到的力定义来进行选择。在一个示例中,力值可包括致使电动机旋转其轴以实现旋转或偏转角度以及旋转速度的数据。所确定的一个或多个值可被数模转换器414转换成一个或多个模拟信号。在一些实施例中,模拟信号可充当电动机或其它力生成机制的驱动信号。
如此后的附图中所示,反馈设备可包括通过传感器接口端口533连接的加速计或其它定向传感器818,以对设备提供它们的定向数据。在其他实施例中,传感器818将其数据传送到本地无线通信设备502。在其他示例中,传感器还可将数据发送到耦合的计算机环境的无线接口端口333。
在该实施例中,存储器512还包括传感器数据525以及传感器处理软件527。方向性反馈设备204的各实施例包括至少一个加速计,通常是3轴加速计,它给出设备204相对于地面的定向。在一个实施例中,传感器处理软件525使得传感器数据被发送到计算环境无线接口端口333,供其力确定软件323使用。可相对于定向位置基准来给出力矢量的定义数据,所述定向位置基准例如可以是设备204上的加速计的位置。
加速计和/或其他定向传感器的位置数据可被存储在位置基准数据528中,供力处理软件524使用。定向基准点可以是设备204上除了加速计的位置之外的另一任意位置。在该情况下,定向传感器位置和定向位置基准之间的关系也被存储。
在一些实施例中,力生成系统518的原或初始位置基准点是来自加速计在设备上的位置的已知位置。原位置基准点及其相对于定向位置基准的位置关系也被存储在位置基准数据528中。力处理软件524在计算中使用该信息以便通过相对于力生成系统518的原或初始位置的矢量定义来表示相对于定向位置基准点的位置的所请求的矢量定义。基于相对于原位置的所需旋转,力处理软件524设置力生成机制的控制设定(例如来自表526的值)。
此外,控制系统810包括一个或多个显示元件驱动器529,该显示元件驱动器从控制器508上执行的显示软件530接收指令和某些数据以使数据530显示在通信上耦合的显示元件(220和240)上。某些数据可存储在存储器512的非易失性存储器中,而其他数据可从耦合的计算环境300上的执行应用315接收。
此外,控制系统810可处理用户可通过向反馈设备施加压力(见图13A和14A)来指示的一个或多个命令。在一个实施例中,控制系统可访问存储器512中的命令532的查找表,以便将接收到的信号对应于具体的命令。(见图15)。
通过电源522经电源总线510对控制系统供电。在一个实施例中,电源是电池。在一个示例中,电池是感应式充电的电池。这是方便的,因为方向性反馈设备可被放置在无线充电器中并被充电。这允许避免方向性反馈设备上的用于充电的有线连接,进一步支持了整装版本的设备204。可选地,力生成系统518可从感应式充电的电源522汲取电源。在另一实施例中,力生成系统518的组件可具有位于各组件本地的感应式充电的电源。
在下面示出的示例中,反馈设备实施例在设备的已知位置上具有至少一个加速计。原位置基准点也在诸如类似球壳822的外壳之类的支承结构上的已知位置处,因此处于相对于所述至少一个加速计的已知相对位置处。在某些实施例中,为了简化计算,加速计可被放置在原位置基准点。
图6是对方向性力反馈设备定义力矢量的方法实施例600的流程图。图7是参考设备的原位置生成力的方法实施例的流程图。仅出于说明的目的而并非限制,图6和7是在图4的计算环境和图5A和5B中所示的反馈设备的控制系统810的上下文中讨论的。
处理器304上执行的应用315确定力产生事件已经发生。例如,来自反馈设备204的用户输入需要响应;或诸如在特定方向上移动的导航建议之类的指令需要被传递给手持设备的用户;或已经做出了与附连到用户所持的反馈设备的物理对象的接触。响应于力产生事件发生,与应用相关联的力确定软件模块323例如基于来自设备上的加速计的数据确定602反馈设备的定向。基于力产生事件,力确定模块323确定力持续时间段。力确定模块323确定606事件的相对于方向性反馈设备上的定向基准位置的力方向。在一个示例中,这是反馈设备上的一个或多个3轴加速计的位置。模块323还确定608要被生成的力的大小,并将相对于定向基准位置的力定义传递给610方向性反馈设备204的控制器508。在与物理对象的接触是力产生事件的示例中,诸如游戏应用之类的应用315可接收例如物体的图像数据,以及标识它被击中的角度。取决于分辨率程度,来自设备上的传感器的附加定向数据可帮助标识物理对象的运动,例如剑200的剑刃的边缘是水平还是垂直还是两者之间的某个位置。定向数据也可将诸如人的手中的物体的旋转之类的运动反映到更精细的分辨率。在另一示例中,用户可能正手持设备204本身,应用315需要指示用户移动到他的左边。控制系统508需要确定用户的左侧与力生成系统的力矩矢量将被定向到的位置之间的关系。确定设备的定向并具有定向基准位置作为起始帮助了容纳在反馈设备204内的用于力生成的控制系统810确定力矢量将指向的方向。此外,反馈设备204的力生成系统518具有初始位置或原位置作为基准点,该基准点作为起始点或原点来定义角度。
图7是参考设备的原位置生成力的方法实施例的流程图。控制器508从通信上耦合的计算环境中执行的力确定模块323接收702力矢量定义,它是相对于设备的定向基准位置定义的。如上所述,基准位置可以是诸如设备上的加速计之类的定向传感器的位置。控制器508可从存储器512访问设备204上的加速计的位置528以及设备的原位置基准点的位置528。控制器508上执行的力处理软件524确定704由于将力矢量定义的基准从定向基准位置转换到原位置基准而造成的对力矢量定义的任何改变。在加速计处于原位置基准点的某些情况下,力矢量定义中可能几乎不要求改变或没有改变。力处理软件524确定706反馈设备是否处于原位置。如果否,则力处理软件824使得向力生成系统518发送指令以将力生成系统518返回716到原位置。
如果设备已在原位置,则力处理软件524向力生成系统518发送指令以相对于原位置生成708力。响应于满足力持续时间准则710,力处理软件524使得714力生成系统518收回力并将设备返回716到原位置。否则,力生成系统518继续712相对于原位置基准生成力。下面的示例示出力生成系统示例原位置基准的各种实施例。
图8A示出方向性反馈设备204的一实施例。仅出于说明的目的而非限制,该实施例是在玩具剑200的上下文中示出的。在该实施例中,设备204具有手柄部分820和球壳部分822。壳或外壳的形状可以是任何所需形状。
球壳822可以是支承力生成系统的支承结构。力生成系统包括结构以及提供动力以移动结构来在指定方向上产生力的元件。附连于球壳822的是固定地附连于球壳并具有对内部支承结构806的至少一个附连点816a的外部支承结构808。在该情况下,外部支承结构808在内部支承结构的相对侧上具有附连结构816b和816a。在内部支承结构806内的是轴结构804,在该情况下是轴或杆,一质量块(在该例中是盘802)绕轴旋转。在该示例中,力矢量的大小是通过控制绕轴结构804的旋转质量块的速度而产生的力矩。通过附连结构816a和816b,电动机814至少向结构816a提供动力以沿垂直于轴结构804的轴旋转内部支承结构806。例如,该轴可以是从816a到816b的假想线。。力生成系统的内部支承结构806的旋转将从轴结构804的端部之一向外生成的力矩定向到旋转圈中的任何方向。
在该示例中,电动机812提供动力来绕轴结构804旋转盘802,从而生成力矩。盘802在重量上绕结构804是平衡的。通过相对于外部支承以及球壳822旋转内部支承结构806,与轴结构的一端或另一端对齐生成的力矩可被定向到以盘中心为中心且绕816a和816b之间的轴的360度圆的任何度数。
在该实施例中,内部支承结构806的旋转参考原位置。不同的设计选择可选择不同的原位置。在图8A的示例中,当内部支承结构806处于与外部支承结构808基本或完全相同的平面时,设备204处于原位置。基于该定义,图8A中的设备被示为处于其原位置。如果内部支承结构806向页面内旋转,则设备204将不处于原位置,且当盘顺时针旋转时将感受到从轴结构的底端向外的来自页面的力。原位置相对于包围在外壳822内的方向性反馈设备的定向系统,而不是相对于可附连于反馈设备的任何物理对象。它们的定向系统是独立的。然而,它们之间的转换可相对于基准点来进行。
内部支承结构806可具有位于其最外表面上的传感器807,该传感器发送指示它与外部支承结构808的内侧上固定的原位置基准点809对齐的数据。
图8A、8B、10A、10B的示例中的至少一个传感器包括手柄部分820上的三轴加速计818。对于诸如剑、球棒、球拍等手持的物理对象,这种布局接近于用户的手且相对于用户的手是相对静止的。加速计可提供诸如物理对象的俯仰和平摇等定向数据,可用于确定物理对象的运动特性。使用运动特性,一个或多个处理模块可确定要被定向到物理对象上的物理力矢量的方向和大小。加速计818可无线地819向控制器508传送电信号,以向耦合的计算环境传输或进行后续传输。
在该实施例中,电子控制电路810容纳在盘内。例如,它可以被实现为片上系统(SoC),包括感应式充电的电源522。在该示例中,绝缘导体823(例如一个或多个绝缘导线)从电路810通过轴结构804延伸到盘的电动机812,并通过内部支承结构806和附连结构816a延伸到电动机814用于旋转内部结构806。在一个示例中,电动机814可通过绝缘导体823将电力导向附连结构816b。通过绝缘导体823,控制器508可向电动机814发送指示出旋转的方向和旋转的度数的控制信号,并向电动机812发送盘旋转的确定的速率。
图8B示出方向性反馈设备204的另一实施例。在该实施例中,手柄部分820中电动机814被附连结构816a和816b中的至少一个中的一个或多个小型电动机替代。此外,在该示例中,球壳充当外部支承结构,而附连结构816a和816b附连到球壳。为了确定原位置,内部支承结构806可仍然具有位于其最外表面上的发送指示它与基准点809对齐的数据的传感器807,区别在于该基准点809位于球壳的内面。
图9A示出容纳在图8B的附连结构之一(在该例中是816a)中的短轴型电动机系统,而图9B示出容纳附连结构816b中的另一短轴型电动机系统。在该实施例中,电动机和附连结构被一起讨论,因为它们结构类似且以类似的方式操作。在该实施例中,电动机驱动轴834a、834b的连接器830a、830b从支承结构806延伸。支承结构可以是塑料的,连接器可被塑造成突出在附连结构816a、816b中。在该实施例中,短轴型电动机832a连同另一附连结构816b处的短轴型电动机832b一起工作,以所需角度旋转支承结构806来将轴结构804定向到所需位置。短轴型电动机832a、832b的驱动轴834a、834b适合于连接器830a、830b以旋转806。短轴型电动机系统832a、832b包括感应式充电的电池833a、833b,用于向电动机提供驱动轴的电流。
短轴型电动机系统832a、832b可通过如图8A所示的绝缘导体823从盘中的电子电路810接收控制驱动信号。然而,在该实施例中,短轴型电动机系统832a、832b各自包括用于从盘中的电子电路810接收控制信号的无线通信设备835a、835b。
图10A示出方向性反馈设备204的另一实施例,其中在基于无刷直流(DC)电动机的布置中的磁体绕轴结构804旋转质量块802。图10B示出用于绕轴结构804旋转质量块的磁体的不同布置中的方向性反馈设备的另一实施例。
图10A示出方向性反馈设备204的另一实施例。在该实施例中,用于旋转盘802的电动机812被盘802之下的支承件中的至少一个永磁体1013替代。沿附连支承816a和816b设置电磁体。(见下面的图11A和11B)。图10B示出方向性反馈设备204的另一实施例,其中至少一个永磁体1013位于盘本身上。
图11A示出容纳在图10A和10B的附连结构之一中的电磁体1014a。图11B示出容纳在图10A和10B的另一附连结构中的电磁体1014b。在该实施例中,它们被一起讨论,因为它们结构和操作类似。电磁体1014a和1014b固定到他们的位置上。当流经它们的电流反向时它们改变其极性。在该示例中,中心磁体1013是永磁体且绕其中心旋转。
电动机驱动轴834a、834b的连接器830a、830b是支承电磁体的支承件,包括由绝缘导体1044a、1044b围绕的金属层1042a、1042b。例如,绝缘导线可缠绕在金属套上。电子控制电路1040a、1040b连接到绝缘导体1044a、1044b,以监控定时并在合适的时间反转电流极性。磁体电子控制电路1040a、1040b可包括感应式充电电池。磁体电子控制电路1040a、1040b可通过如图8A所示的绝缘导体823从盘中的电子电路810接收控制驱动信号。然而,在该实施例中,磁体电子控制电路1040a、1040b各自包括用于从盘中的电子电路810接收控制信号的无线通信设备1045a、1045b。电磁体1014a、1014b和短轴型电动机832a、832b也可共享无线通信设备和感应式充电电池。
图12A示出方向性反馈设备204的又一实施例。在该实施例中,力生成系统包括轴结构804,质量块(盘802)通过电动机812的驱动而绕轴结构旋转。然而,替代旋转支承结构,伺服电动机1104附连到电动机支承件1102,电动机支承件可附连到设备的支承结构或作为设备的支承结构的一部分,例如球壳外壳822的内面。伺服电动机1104的轴1112响应于来自控制器508的控制信号中的变化而改变其角度位置。伺服电动机1104也可在其控制电路内包括无线通信设备。伺服电动机趋向于小型、轻量,且配备有内置的控制电路。轴1112在轴改变角度位置时移动偏转臂1106的一端。偏转臂1106在其另一端连接到轴结构804。该端由于轴112的角度位置改变而使轴结构804及其中心盘802倾斜。轴结构804的倾斜受限于铰链1108,铰链1108也具有可附连于方向性反馈设备204的支承结构822或作为方向性反馈设备204的支承结构822的一部分的支承件1110。图12A示出设备位于其原位置,其中偏转臂1106垂直于轴结构804。
图12B示出在不同于原位置的位置中图12A的实施例。电动机轴1112在一个方向上旋转或改变其角度,使得偏转臂1106的一端遵循其角度路径,导致臂1106的另一端在与所需位置相反的方向上以铰链1108所允许的程度倾斜轴结构804。在某些实例中,轴结构804的倾斜可以快速突发方式执行。
图13A示出可充当用户输入设备的方向性反馈设备204。球壳外壳822充当外壳,并容纳内壳1325。壳之间是导电胶1324。胶的导电性受用户对设备204的压力影响。导电胶的某些示例是基于氯化银的胶和硅胶。硅胶的一个示例具有包括镀银云母和无氧银片的导电颗粒。在一个实施例中,当从诸如手或手指等施加压力时,导电胶中发生电阻变化。这些电阻变化可充当来自用户的命令的信号。诸如导线1326之类的导体按照电压(V)等于电流(I)乘以电阻(R),V=IR来表示通过电压或电流变化的电阻变化。
图13B示出用于传感导电胶中的导电性的变化的示例构造。导线1326连接到传感器系统1304a,传感器系统1304a可提供基准电压或电流以在导电胶中产生回路。传感器检测电流电压或电流,例如周期性地进行,并可通过无线通信设备1302a将值无线地传送到无线设备502供控制器508进行命令处理。命令可由施加压力的量和施加压力的时间长度来表示。
图14A示出方向性反馈设备的另一实施例,该方向性反馈设备还可使用至少一个指定的压力点而用作用户输入设备。在该示例中,有5个指定的压力点被实现为球体上的5个凹口1402a-1402e,方便放置手指。如所示,反馈设备采用能够被手持的大小。每个指定的压力点凹口在外壳822和内壳1325之间的一侧上具有围绕它的封闭量1406a-1406e的导电胶。导线1404a-1404e从相应凹口的各封闭量的胶将相应凹口链接附连支承816a或816b之一中的传感器系统1304a、1304b。以此方式,由于5个压力点以及它们允许的各种组合,用户可指示的命令数量被极大地增加了。
图14B和14C示出了在具有图14A的5个指定压力点的情况下,用于传感导电胶中的变化的另一示例构造。在该示例中,来自关于拇指和食指凹口的凹口1402a和1402b的各个封闭量的导线1404a-1404b耦合到传感器系统1304a,来自关于中指、无名指和小拇指凹口的凹口1402c、1402d和1402e的各个封闭量的导线1404c-1404e耦合到传感器系统1304b。所有五个导线都可按需耦合到一个传感器系统。
命令将通常为应用上下文来定义。例如,命令可包括在诸如Windows之类图形用户界面应用或环境中滚动、打开、关闭、保存、退出、点击等。在另一示例中,用户可导航通过动画化的游戏现实或三维显示上下文,并可希望沿特定路径移动其化身或其视角。命令可以是例如向左、向右、向前、向后之类的项目。方向性反馈设备204上的加速计818可通过传感并转发指示出用户有多快地转动他或她手中的设备204的数据来指示出用户希望有多快地这样做。此外,加速计818可提供表示运动特性的数据,如方向性反馈设备204的位置及其移动方向。耦合的计算环境(例如52)的控制器508或处理器304可使用该信息来确定用户希望去往哪个方向。
图15示出了用于处理来自自由空间方向性反馈设备的用户输入的方法1500的实施例的流程图。控制器508接收1502来自传感器系统的一个或多个读数,并确定1504所述一个或多个读数是否对应于命令,且如果是,则将命令传递1506给计算环境(如300)。在一个示例中,控制器508访问存储器512中存储值的查找表,并进行比较。可能有一个或多个查找表,(如命令532)将信号与手指相关,然后将手指按压的组合与特定命令相关。控制器508在确定命令时还可监视已经施加压力的时间周期。在其他实施例中,读数可被直接传送到耦合的计算环境供处理。
类似地,方向性反馈设备204可生成指向特定方向以向用户指示建议的或命令的移动方向的力矢量,如由无线通信耦合的计算环境中执行的应用所指示的。在一个实施例中,控制器508可按任何其他力矢量一样处理该导航命令。
图16示出了用户58玩计算环境52中执行的剑击游戏软件应用的目标识别、分析和跟踪系统50的配置的示例实施例。在一实施例中,系统包括例如相机的图像捕捉系统60,可用于可视地监视诸如用户58等的一个或多个用户,使得所述一个或多个用户执行的移动可被捕捉、分析和跟踪。用户58的移动可被解释为可用于影响计算环境52所执行的应用的控制。
在一个实施例中,基于捕捉的图像数据,系统分析并跟踪用户在三维空间中的自然移动。使用该系统,用户的动作可直接控制显示画面上的诸如剑击者化身64之类的相关联的化身的动作。换言之,化身64可实时地模仿用户58的动作。
对化身的显示的用户运动的跟踪最好实时进行,使得用户可实时地与执行应用交互。实时显示指的是用户的运动或姿态的视觉表示的显示,其中与物理空间中的运动或姿态的执行同时或几乎同时地显示显示画面。例如,系统可以提供对用户进行回应的显示画面的显示画面更新速率可以是20Hz的速率或更高,其中无关紧要的处理延迟造成最小的显示延迟或对用户而言根本不可见。因此,实时包括与被自动数据处理所需的时间延迟了的数据的及时性有关的任何无关紧要的延迟。
在其他示例实施例中,诸如用户58之类的人类目标可具有诸如玩具枪、球棒、球拍、剑等之类的物体物体。在这些实施例中,电子游戏的用户可在参与游戏的同时手持并使用物体。物体的运动被跟踪并映射到屏幕上,使得化身被描绘为具有表示用户正在操纵的物体的虚拟对象。在物理对象在自由空间中被用户移动时,虚拟对象跟踪物理对象的运动。例如,用户58如何用他的剑200进行击打的运动被跟踪并用于控制他的屏幕上化身64如何用他的动画化的剑63进行击打。
在一个实施例中,目标识别、分析和跟踪系统50可仅跟踪用户58正持有的物理对象200的移动。此外,物理对象或用户的移动可被限于来自特定一组运动或姿态的表示。换言之,某些运动或姿态触发游戏中的动作,但不是所有的自然移动都被跟踪到用户的化身。
目标识别、分析和跟踪系统50可包括计算环境52。计算环境52可以是计算机、游戏系统或控制台等等。根据一示例实施例,计算环境52可包括硬件组件和/或软件组件,使得计算环境52可用于执行诸如游戏应用、非游戏应用等的应用。
根据一个实施例,目标识别、分析和跟踪系统50可连接到可向用户58提供游戏或应用视觉和/或音频的视听设备56,如电视机、监视器、高清电视机(HDTV)等。例如,计算环境52可包括诸如图形卡等视频适配器和/或诸如声卡等音频适配器,这些适配器可提供与游戏应用、非游戏应用等相关联的视听信号。视听设备56可从计算环境52接收视听信号,然后可向用户58输出与该视听信号相关联的游戏或应用视觉和/或音频。根据一个实施例,视听设备56可经由例如,S-视频电缆、同轴电缆、HDMI电缆、DVI电缆、VGA电缆等连接到计算环境52。
图17是能在目标识别、分析和跟踪系统中工作的用于在自由空间中提供方向性力反馈的方法的实施例的流程图。该方法可被实现为可由一个或多个处理器和/或计算机硬件上执行的软件操作的一个或多个处理模块,或实现为硬件或固件。例如,在图18A的游戏控制台52、图18B的个人计算机环境或图18C的联网的计算环境的计算环境中,该方法可被实现为被存储并作为应用程序来执行的软件。
在一个实施例中,与其计算环境中的其他硬件和软件组件交互的应用监视用户和她的物理对象的运动以及游戏的上下文中化身和它们的动画化物体的运动。例如,在剑游戏中,它监视剑之间或游戏的虚拟环境内的其他物体之间的接触。以此方式,一个或多个力确定软件处理模块323基于玩家的控制下的物理对象的运动特性来确定相对于游戏的上下文中虚拟对象的力产生事件。物体的运动特性的某些示例包括位置、角度、速度、移动方向、加速度、运动的时间周期、以及物理对象在其中移动的用户的身体周围的空间体。使用上述的以及结合于此的共同待决的申请中的运动跟踪系统,上述特性允许系统相对于游戏环境控制用户玩的游戏。
诸如定向数据之类的运动特性还可用于补充物体的图像数据。例如,在剑游戏示例中,目标识别、分析和跟踪系统可确定物体的位置和速度,而加速计数据提供诸如定向数据之类的补充的运动特性信息。
在一个实施例中,应用指示315应在相应的虚拟对象上的力矢量的方向上对方向性力反馈设备施加力。力矢量通常根据方向和大小来定义。在图17的实施例中,力确定模块323确定1702在诸如游戏之类的执行应用的上下文中的虚拟对象上的力将被定向的方向。
该力可根据接收到由另一虚拟对象发起的接触而生成,或者它可以是在用户发起了与她的虚拟对象的接触之后生成的反作用力。例如,在图16的剑击中,对应于用户的化身手持虚拟对象,即剑63,其移动对应于物理对象,即用户58手持的玩具剑200,的移动。在剑游戏应用中,例如当其他化身的剑65击打用户的化身的剑63时,游戏控制台52上执行的力确定软件323识别对手化身的剑以何角度击打用户的虚拟剑。
确定力矢量可包括确定复合力矢量或合力矢量。例如,在剑游戏示例中,每个虚拟剑可从不同方向击打,且化身可在他们彼此搏斗时使剑卡住。相对的剑可具有相对的力,影响用户将用他的物理对象感受或传感到的方向和大小。在一个实施例中,力矢量表示计算环境中执行的应用的上下文中虚拟对象上生成的至少两个虚拟力矢量的合力矢量。
在1704,作出关于应用的上下文中虚拟对象上的力的大小的确定。例如,剑击打得越有力,用户应感受到越强的力(或反作用力)。
在一个或多个实施例中,物理力矢量的大小可被设为与执行应用的上下文中的虚拟对象的力、物理对象的物理特性或两者成比例。在一个示例中,用户正在用玩具剑玩,剑是由轻量的塑料制作的。物理特性的某些示例包括重量、大小和材料。游戏中的剑可被表示为重型钢剑。手持剑的用户要感受到的力的大小可被缩放或调整到与另一塑料类剑在被钢剑击碎时的大小相似。在另一上下文中,其中用户正在使用与实际运动时使用的相类似的正规网球球拍,力确定模块323可更为精确地表示化身对手和他的或她的虚拟球拍将产生的力。
在另一示例中,力大小可被缩放到方向性反馈设备能够产生的某一范围的大小值中的一个。例如,在剑游戏中,取决于所产生的力的大小,用户58获得剑刃击打或猛击有多强的相对感觉。
因此,任选地,可通过基于物理对象、虚拟对象或两者的特性来缩放1706力的大小来使得力的大小可变。
软件致使将力的方向和大小,即力矢量,传递1708给物理对象200所支承的方向性反馈设备204。方向性反馈设备基于该定义生成物理力矢量,以在设备204中产生用户可感觉到的游戏反馈。软件可与操作系统通信,表示方向和大小的数据要由无线适配器(例如333)发送,使得数据可被无线地传送到方向性反馈设备。此外,力确定模块323还可向自由空间方向性反馈设备传递物理力矢量中的变化。要被指示的这种变化的示例是力不再施加。例如,对手化身的剑65提离用户的虚拟剑63。其他变化可以是构成复合力矢量的分量矢量中的变化。例如,当剑保持接触,例如当化身各自向紧密接触的他们各自的剑施加虚拟力时,剑刃相对于彼此的角度中的变化。
描述与方向性反馈设备204的实施例通信的目标识别、分析和跟踪系统的计算环境的某些实施例。
图18A示出可用于类似于图16中的游戏控制台的计算环境52的实施例的详细示例,其中用于在自由空间中提供方向性反馈的一个或多个实施例可工作。如图18A所示,多媒体控制台100具有含有一级高速缓存103、二级高速缓存105和闪存ROM(只读存储器)107的中央处理单元(CPU)101。一级高速缓存103和二级高速缓存105临时存储数据并因此减少存储器访问周期数,由此改进处理速度和吞吐量。CPU 101可以设置成具有一个以上的内核,以及由此的附加的一级和二级高速缓存103和105。闪存ROM 107可存储在当多媒体控制台52通电时的引导过程的初始阶段期间加载的可执行代码。
图形处理单元(GPU)109和视频编码器/视频编解码器(编码器/解码器)114形成用于高速、高分辨率图形处理的视频处理流水线。数据经由总线从图形处理单元108输送到视频编码器/视频编解码器114。视频处理流水线向A/V(音频/视频)端口140输出数据,以便传输到电视机或其他显示器。存储器控制器110连接到GPU 108以方便处理器访问各种类型的存储器112,诸如但不局限于RAM(随机存取存储器)。
多媒体控制台52包括较佳地在模块118上实现的I/O控制器120、系统管理控制器122、音频处理单元123、网络接口控制器124、第一USB主控制器126、第二USB控制器128和前面板I/O子部件130。USB控制器126和128用作外围控制器142(1)-142(2)、无线适配器148、和外置存储器设备146(例如闪存、外置CD/DVD ROM驱动器、可移动介质等)的主机。网络接口124和/或无线适配器148提供对网络(例如,因特网、家庭网络等)的访问并且可以是包括以太网卡、调制解调器、蓝牙模块、射频模块、电缆调制解调器等的各种不同的有线或无线适配器组件中任何一种。此外,无线适配器卡148充当诸如用于与方向性反馈设备204通信的收发机之类的无线通信设备。无线通信协议可以是射频(RF)、蓝牙或基于IEEE 802无线的标准(如802.11或802.16标准集合)之一,或任何其它合适的无线通信协议。
提供系统存储器143来存储在引导过程期间加载的应用数据。提供了介质驱动器144,其可以包括DVD/CD驱动器、硬盘驱动器,或其他可移动介质驱动器等等。介质驱动器144可以是多媒体控制台100内部或外部的。应用数据可经由介质驱动器144访问,以由多媒体控制台52执行、回放等。介质驱动器144经由诸如串行ATA总线或其他高速连接(例如IEEE 1394)等总线连接到I/O控制器120。
在一个实施例中,用于一个或多个力确定模块323的软件和数据的副本可存储在在介质驱动器144上,并可在执行时被加载到系统存储器143中。
系统管理控制器122提供涉及确保多媒体控制台52的可用性的各种服务功能。音频处理单元123和音频编解码器132形成具有高保真度和立体声处理的对应的音频处理流水线。音频数据经由通信链路在音频处理单元123与音频编解码器132之间传输。音频处理流水线将数据输出到A/V端口140以供外置音频播放器或具有音频能力的设备再现。
前面板I/O子部件130支持暴露在多媒体控制台52的外表面上的电源按钮150和弹出按钮152以及任何LED(发光二极管)或其他指示器的功能。系统供电模块136向多媒体控制台52的组件供电。风扇138冷却多媒体控制台52内的电路。
CPU 101、GPU 109、存储器控制器110、和多媒体控制台52内的各个其他组件经由一条或多条总线互连,包括串行和并行总线、存储器总线、外围总线、和使用各种总线架构中任一种的处理器或局部总线。作为示例,这些架构可以包括外围部件互连(PCI)总线、PCI-Express总线等。
当多媒体控制台52通电时,应用数据可从系统存储器143加载到存储器112和/或高速缓存102、104中并在CPU 101上执行。应用可呈现在导航到多媒体控制台52上可用的不同媒体类型时提供一致的用户体验的图形用户界面。在操作中,介质驱动器144中包含的应用和/或其他媒体可从介质驱动器144启动或播放,以向多媒体控制台52提供附加功能。
多媒体控制台52可通过将该系统简单地连接到电视机或其他显示器而作为独立系统来操作。在该独立模式中,多媒体控制台52允许一个或多个用户与该系统交互、看电影、或听音乐。然而,随着通过网络接口124或无线适配器148可用的宽带连接的集成,多媒体控制台52还可作为较大网络社区中的参与者来操作。
当多媒体控制台52通电时,可以保留设定量的硬件资源以供多媒体控制台操作系统作系统使用。这些资源可包括预留存储器(例如,16MB)、CPU和GPU周期(例如,5%)、网络带宽(例如,8kbs)等等。因为这些资源是在系统引导时保留的,所以所保留的资源对应用而言是不存在的。
具体地,存储器保留较佳地足够大,以包含启动内核、并发系统应用和驱动程序。CPU保留较佳地为恒定,使得若所保留的CPU用量不被系统应用使用,则空闲线程将消耗任何未使用的周期。
对于GPU保留,通过使用GPU中断来显示由系统应用生成的轻量消息(例如,弹出窗口),以调度代码来将弹出窗口呈现为覆盖图。覆盖图所需的存储器量取决于覆盖区域大小,并且覆盖图较佳地与屏幕分辨率成比例缩放。在并发系统应用使用完整用户界面的情况下,优选使用独立于应用分辨率的分辨率。定标器可用于设置该分辨率,从而无需改变频率并引起TV重新同步。
在多媒体控制台52引导且系统资源被保留之后,就执行并发系统应用来提供系统功能。系统功能被封装在上述所保留的系统资源中执行的一组系统应用中。操作系统内核标识是系统应用线程而非游戏应用线程的线程。系统应用优选地被调度为在预定时间并以预定时间间隔在CPU 101上运行,以便为应用提供一致的系统资源视图。进行调度是为了把由在控制台上运行的游戏应用所引起的高速缓存分裂最小化。
当并发系统应用需要音频时,则由于时间敏感性而异步调度音频处理给游戏应用。多媒体控制台应用管理器(如下所述)在系统应用活动时控制游戏应用的音频水平(例如,静音、衰减)。
输入设备(例如,控制器142(1)和142(2))由游戏应用和系统应用共享。输入设备不是所保留的资源,但却在系统应用和游戏应用之间切换以使其各自具有设备的焦点。应用管理器较佳地控制输入流的切换,而无需知晓游戏应用的知识,并且驱动程序维护有关焦点切换的状态信息。图像捕捉系统60可为控制台52(例如,为其相机系统)定义附加输入设备。
图18B示出用于在自由空间中提供方向性反馈的一个或多个实施例可工作的计算环境420的另一示例实施例。计算系统420包括计算机241,计算机241通常包括各种计算机可读介质。计算机可读介质可以是能由计算机241访问的任何可用介质,而且包含易失性和非易失性介质、可移动和不可移动介质。系统存储器222包括易失性和/或非易失性存储器形式的计算机存储介质,如只读存储器(ROM)223和随机存取存储器(RAM)260。基本输入/输出系统224(BIOS)包括如在启动时帮助在计算机241内的元件之间传输信息的基本例程,它通常储存在ROM 223中。RAM 260通常包含处理单元259可以立即访问和/或目前正在操作的数据和/或程序模块。作为示例而非局限,图18B示出了操作系统225、应用程序226、其它程序模块227和程序数据228。
计算机241还可以包括其他可移动/不可移动、易失性/非易失性计算机存储介质。仅作为示例,图18B示出了对不可移动、非易失性磁介质进行读写的硬盘驱动器238,对可移动、非易失性磁盘254进行读写的磁盘驱动器239,以及对诸如CD ROM或其它光学介质等可移动、非易失性光盘253进行读写的光盘驱动器240。可以在示例性操作环境中使用的其他可移动/不可移动、易失性/非易失性计算机存储介质包括但不限于,磁带盒、闪存卡、数字多功能盘、数字录像带、固态RAM、固态ROM等等。硬盘驱动器238通常由不可移动存储器接口,诸如接口234连接至系统总线221,磁盘驱动器239和光盘驱动器240通常由可移动存储器接口,诸如接口235连接至系统总线221。
以上讨论并在图4B中示出的驱动器及其相关联的计算机存储介质为计算机241提供了对计算机可读指令、数据结构、程序模块和其他数据的存储。例如,示出硬盘驱动器238储存操作系统258、应用程序257、其它程序模块256和程序数据255。注意,这些组件可以与操作系统225、应用程序226、其他程序模块227和程序数据228相同,也可以与它们不同。在此给操作系统258、应用程序257、其他程序模块256、以及程序数据255提供了不同的编号,以说明至少它们是不同的副本。
在一个实施例中,用于一个或多个力确动模块323的软件和数据的副本可存储在硬盘驱动器238上所存储的应用程序257和程序数据255中,或可远程地存储(如248)。副本323也可在执行时作为应用程序226和程序数据228被加载到系统存储器222中。
用户可以通过输入设备,诸如键盘251和定点设备252(通常被称为鼠标、跟踪球或触摸垫),向计算机241输入命令和信息。其他输入设备(未示出)可以包括话筒、操纵杆、游戏手柄、圆盘式卫星天线、扫描仪等等。这些和其他输入设备通常由耦合至系统总线的用户输入接口236连接至处理单元259,但也可以由其他接口和总线结构,诸如并行端口、游戏端口或通用串行总线(USB),来连接。图像捕捉系统60可为控制台241(例如,为其相机系统)定义附加输入设备。监视器242或其他类型的显示设备也通过接口,诸如视频接口232,连接至系统总线221。除监视器以外,计算机也可以包括其他外围输出设备,诸如扬声器244和打印机243,它们可以通过输出外围接口233连接。
计算机241可使用至一个或多个远程计算机,诸如远程计算机246的逻辑连接在网络化环境中操作。远程计算机246可以是个人计算机、服务器、路由器、网络PC、对等设备或其他常见的网络节点,且通常包括许多或所有以上相对于计算机241描述的元件,尽管在图18B中仅示出了存储器存储设备247。图中所示逻辑连接包括局域网(LAN)245和广域网(WAN)249,但也可以包括其它网络。这样的联网环境在办公室、企业范围计算机网络、内联网和因特网中是常见的。
当在LAN联网环境中使用时,计算机241通过网络接口或适配器237连接至LAN 245。当在WAN联网环境中使用时,计算机241通常包括调制解调器250或用于通过诸如因特网等WAN 249建立通信的其他手段。调制解调器250可以是内置或外置的,它可以经由用户输入接口236或其他适当的机制连接至系统总线221。在网络化环境中,相对于计算机241所描述的程序模块或其部分可被存储在远程存储器存储设备中。作为示例而非限制,图18B示出了远程应用程序248驻留在存储器设备247上。可以理解,所示的网络连接是示例性的,且可以使用在计算机之间建立通信链路的其他手段。
网络接口237还耦合到提供诸如用于与方向性反馈设备通信的收发机之类的无线通信设备的无线适配器262。再次,无线通信协议可以是射频(RF)、蓝牙或基于IEEE 802无线的标准(如802.11或802.16标准集合)之一,或任何其它合适的无线通信协议。
计算系统环境52或420只是合适的计算环境的一个示例,并且不旨在对所公开的主题的使用范围或功能提出任何限制。也不应将该计算环境示例解释为对相应示例性操作环境中示出的任一组件或其组合有任何依赖性或要求。在某些实施例中,所描绘的各种计算元素可包括被配置成实例化本公开的各具体方面的电路。例如,本公开中使用的术语电路可包括被配置成通过固件或开关来执行功能的专用硬件组件。在其他示例实施例中,术语电路可包括由软件指令配置的实施可用于执行功能的逻辑的通用处理单元、存储器等。在其中电路包括硬件和软件的组合的示例实施例中,实施者可以编写体现逻辑的源代码,且源代码可以被编译为可以由通用处理单元处理的机器可读代码。因为本领域技术人员可以明白现有技术已经进化到硬件、软件或硬件/软件组合之间几乎没有差别的地步,因而选择硬件或是软件来实现具体功能是留给实现者的设计选择。更具体地,本领域技术人员可以明白软件进程可被变换成等价的硬件结构,而硬件结构本身可被变换成等价的软件进程。因此,对于硬件实现还是软件实现的选择是设计选择并留给实现者。
图18C示出用于提供方向性反馈的一个或多个实施例可工作的联网计算环境的示例实施例。如图18C所示,如图18A和18B中所示的那些等多个控制台400A-400X或处理设备可耦合到网络402,并可经网络402与具有一个或多个服务器406的网络游戏服务404通信。服务器406可包括能够从控制台400A-X接收信息并将信息发送给控制台400A-X的通信组件,并且可提供运行在控制台400A-X上的应用可调用和利用的服务的集合。
控制台400A-X可调用用户登录服务408,该用户登录服务用于在控制台400A-X上认证和标识用户。在登录期间,登录服务408获得来自用户的游戏玩家标签(与该用户相关联的唯一标识符)和口令,以及唯一地标识用户正在使用的控制台的控制台标识符和到该控制台的网络路径。游戏玩家标签和口令通过将它们与全局用户简档数据库416相比较来被认证,该全局用户简档数据库可位于与用户登录服务408相同的服务器上,或可以分布在不同的服务器上或不同的服务器集合上。一旦被认证,用户登录服务408就将控制台标识符和网络路径存储在全局用户简档数据库416中,使得可将消息和信息发送给控制台。
在一实施例中,控制台400A-X可包括游戏服务410、共享服务412、力确定软件323、以及用户共享数据428。游戏服务可允许用户玩在线交互式游戏,为在控制台之间的联合玩游戏创建和共享游戏环境,以及提供诸如在线市场、跨各种游戏的集中成就跟踪以及其他共享的体验功能之类的其他服务。共享服务412允许用户与其他用户共享玩游戏元素。例如,控制台400X上的用户可创建在游戏中使用的元素,并向其他用户共享或售卖它们。此外,用户可记录玩游戏体验的元素,例如竞赛的影片或游戏中的各种场景,并与其他用户共享它们。用户为了共享或售卖而提供的信息可被存储在用户共享数据428中。
除了向所有参与客户机计算机发送更新的化身和场景数据之外,网络游戏服务404的力确定软件323可确定力产生事件并确定要被发送到各个相应的客户机计算机的力矢量。在类似于与许多参与者进行战斗的激烈动作场景中,这可帮助加速处理。
全局用户简档数据库416可包括关于控制台400A-X上的全部用户的信息,如用户的账户信息以及唯一地标识每个用户正在使用的特定控制台的控制台标识符。全局用户简档数据库416还可包括与控制台400A-X上的所有用户相关联的用户偏好信息。全局用户简档数据库416还可包括关于诸如与用户相关联的游戏记录和朋友列表之类的信息。
根据如图18C中提供的游戏系统,可提供任何数量的联网处理设备。如此,这里提出的技术可结合游戏服务404在一个或多个服务器406上操作,或可在联网环境中的诸如设备400A-400X之类的个体处理设备中提供。
图19示出可用于一个或多个实施例的包括图像捕捉系统60的目标识别、分析和跟踪系统50的示例实施例。图像捕捉系统60标识捕捉区域中的人类和非人类目标,并在三维空间中跟踪它们。
它包括除了颜色和线条数据之外还能捕捉深度数据的图像相机组件70。如图19所示,根据一示例实施例,图像相机组件70可包括可用于捕捉区域的深度图像的IR光组件72、三维(3-D)相机74、和彩色(例如RGB)相机76。单独利用红外(IR)组件或结合来自其他相机的数据,可使用各种3-D技术来确定深度数据。这些技术的某些示例包括飞行时间分析、监视传出和传入信号的相移、快门式光脉冲成像以及结构化光图案处理。深度数据可表示物体或人类的不同点到相机组件的距离。
来自彩色相机76的颜色数据可补充来自3-D相机74和IR组件72的信息,以允许对人类目标的移动或位置进行更完整的识别。
根据另一个实施例,捕捉设备60可包括可以从不同的角度观察捕捉区域的两个或更多在物理上分离的相机,以获取可以被解析以生成深度信息的视觉立体数据。
捕捉设备60可以交互式速率来捕捉数据,从而提高了数据的保真度,并允许所公开的技术处理原始深度数据,数字化场景中的对象,提取对象的表面和纹理,以及实时地执行这些技术中的任一种,以使得显示画面(例如56)可以在其显示屏幕(例如54)上提供该场景的实时描绘。
在图19的系统实施例中,图像捕捉系统60通信上耦合84到计算环境52,计算环境在该示例中是多媒体控制台。通信耦合可以一种或多种有线或无线连接来实现,例如USB连接、火线连接、以太网电缆连接等,或诸如无线802.11b、802.11g、802.11a或802.11n连接等无线连接。
捕捉系统60还包括用于存储可由处理器80执行的指令以及可以帧格式被捕捉图像数据的存储器组件82。存储器组件82可包括随机存取存储器(RAM)、只读存储器(ROM)、高速缓存、闪存、硬盘、或任何其他合适的存储组件。在一个实施例中,如所示,存储器组件82可以是与图像捕捉组件70和处理器80进行通信90的单独的组件。根据另一实施例,存储器组件82可被集成到处理器80和/或图像捕捉组件70中。
捕捉系统60还包括通信上耦合90到图像相机组件70的处理器80,用以控制图像相机组件和用于存储图像数据的存储器82。处理器80可包括可执行指令的标准处理器、专用处理器、微处理器等,这些指令可包括用于存储简档的指令、用于接收深度图像数据的指令、用于以指定的格式将数据存储在存储器82中的指令、用于确定合适的目标是否可被包括在深度图像中的指令、用于将合适的目标转换成该目标的骨架表示或其他类型的模型的指令、或任何其他合适的指令。图像捕捉系统60中包含处理能力使得用户的诸如多点骨架模型之类的模型和/或物体能够被实时地传送。此外,该处理中的某一些可由一个或多个通信上耦合的计算环境中的其他处理器(例如101、109、259、229、304、472)来执行。
捕捉系统60还可包括接收由用户产生的音频信号的话筒78。从而,在该实施例中,图像捕捉系统60是视听数据捕捉系统。捕捉系统中的话筒可被用于提供关于目标的附加和补充信息以使系统能够更好地辨别目标的位置或移动的各方面。例如,话筒可包括方向性话筒或方向性话筒阵列,其可用于进一步辨别人类目标的位置或在两个目标之间进行区分。
图像数据通常以帧的形式被迭代地捕捉。基于模型和数据中的变化跟踪捕捉的图像数据中的差异。通过这些差异,跟踪图16中的用户的自然移动以及类似于剑的物体的移动。
该技术有利地被应用于诸如以下专利申请中公开的目标识别、分析和跟踪系统:通过引用而被完全结合于此的2009年5月29日提交的题为“Environmentand/or Target Segmentation(环境和/或目标分割)”的美国专利申请12/475094号;通过引用而被完全结合于此的2009年10月21日提交的题为“Pose TrackingPipeline(姿态跟踪流水线)”的美国专利申请12/603437号;通过引用而被完全结合于此的2009年5月29日提交的题为“Device for Identifying and TrackingMultiple Humans Over Time(用于随时间标识和跟踪多个人类的设备)”的美国专利申请12/475308号;通过引用而被完全结合于此的2009年12月18日提交的“Motion Detection Using Depth Images(使用深度图像的运动检测)”;通过引用而被完全结合于此的2009年10月7日提交的题为“Human TrackingSystem(人类跟踪系统)”的美国专利申请第12/575388号;通过引用而被完全结合于此的2009年4月13日提交的题为“Gesture Recognizer SystemArchitecture(姿势识别器系统架构)”的美国专利申请第12/422661号;以及通过引用而被完全结合于此的2009年7月29日提交的题为“Auto Generating aVisual Representation(自动生成视觉表示)”的美国专利申请第12/511850号。
标识和跟踪目标(是人类或非人类)通常是一迭代过程。图20A和20B示出了用于跟踪持有方向性反馈设备的用户以确定力产生事件是否已发生的方法实施例2000的流程图。在一个实施例中,该处理是由图像捕捉系统中的处理器80上执行的应用或计算环境52中执行的应用或两者的组合来执行的。仅为了说明的目的而非限制,该方法实施例是相对于这种应用软件来讨论的。
执行应用软件接收2002方向性力反馈设备的存在的通知。例如,控制器508发送来自加速计的消息或定向数据,以向应用警告其存在。应用接收2005包括深度数据的图像数据,并确定2010是否有感兴趣的区域。感兴趣的区域可以是非常窄的范围中具有深度值的相邻像素的集中。深度数据结合边缘检测结果和颜色数据可确定感兴趣的区域是否适合于诸如人类或剑或球拍等之类的目标类型的图案。
在确定2015感兴趣的区域是否是人类目标时,应用软件应用与基于例如人类骨架形式的模型匹配的图案。如果是,则应用软件扫描人类目标2020以寻找身体部位,并生成捕捉的人类目标的模型2030。例如,软件以基于模型的头部区域开始,并基于图案和对像素数据的随时间的更新来从头部区域定义身体部位,如肩膀。如果不是人类目标,则应用在下一次迭代接收2005图像数据并继续进行处理。
一旦标识了人类,则应用确定人类是否持有存在的反馈设备204。如果不是,则应用继续2040跟踪和更新人类模型,且对于每次迭代接收2005任何新的感兴趣区域作为新数据。
如果人类持有反馈设备,则应用确定2050反馈设备是否附连于物体。应用可检索它使用的物体的类型的图案。例如,应用可以是剑击应用,该剑击应用识别剑、盾和此类项目。该应用可具有为某些制造商的专门为方向性反馈设备的附连而制造的物理对象存储的图案。也可应用方向性反馈设备类型的图案。此外,还可基于物理对象的观测到的特征来生成目标的对象模型。
如果处于未附连模式的反馈设备由被建模的人类所持有,则应用2055将反馈设备结合2055在人类模型中,并跟踪2060人类模型和来自反馈设备的定向数据。
如果反馈设备被附连到物体,则应用可将包括反馈设备的物理对象的模型结合2070到人类模型中。换言之,可把人类和物体作为一个模型来对待。在其他示例中,如果优选的话,根据人类模型可单独地跟踪物理对象模型或反馈设备模型。应用跟踪2060人类模型和来自反馈设备的定向数据。
不管反馈设备被单独持有还是物理对象被附连到反馈设备,响应于力产生事件,力确定软件模块323基于模型和定向数据来为应用确定力矢量定义和持续时间。例如,力确定模块323可执行类似于图6的方法实施例,并将矢量定义和持续时间通信给方向性力反馈设备204供生成。
图21A示出了两把虚拟剑之间的剑击。图21B示出方向性反馈设备204中力生成系统518的模型的原位置。图21C示出轴结构804响应于剑击而进入的位置。
在图21中,虚拟剑201击打对应于具有附连的方向性力反馈设备204的物理剑200的虚拟剑。图21B示出假设剑200是静止的,在接触前方向性反馈设备204的力生成系统518。在该示例中,设备204处于原位置。其对平剑刃的当前定向可通过将x轴视为从支承件816a到816b延伸来表示。轴结构804沿y轴对齐。
Fsw是指向物理剑的虚拟对应物的虚拟力。该力将把物理剑200的剑刃206沿y轴向下(向着负y)以及以大约45度的角度推到负y和正z之间的平面中。
响应于此,如图21C所示,控制系统810将使得短轴型电动机832a和832b绕轴结构804旋转,以便与假想力Fsw矢量对齐。所以轴结构804将从y轴旋转-45度,并从负y和z轴延伸到正y和z轴定义的平面内。盘旋转,使得力矩定向到x和z轴定义的平面内。换言之,剑200力矩大小向下并向剑柄202的左侧定向,就好像来自右上方的击打会推它那样。
图22A和22B示出方向性反馈设备2204的另一实施例。设备2204包括形成为剑的形状的外壳2206,以装入反馈设备的机械和电气组件。支承件2208为力生成系统、电源2010(装在剑的“剑柄”中)以及装在剑的“剑刃”部分中的电气组件2012提供了结构刚性。在该实施例中,力生成系统包括装在旋转内环806-1中的球体旋转质量块802-1,旋转内环806-1在外环支承件822-1内旋转。环支承件822-1耦合到支承件2208。内环806-1通过轴承816-1和816-2耦合到环支承件822-1。环支承件802-1允许内环绕轴N旋转。球体质量块801-2耦合到轴2220并在位于质量块802-1内的内部安装的电动机812-1的驱动下绕轴N旋转。如图22A中所看到的,内环806-1可通过电动机2230和偏转结构绕轴M旋转(且在箭头2224、2226的方向上移动)。偏转结构包括横梁2232,横梁2232连接到内环806-1并通过臂2234、2236而连接到横梁2238。横梁2238由电动机2230旋转。
本技术可具体化为其他具体形式而不背离其精神或本质特征。类似地,对于模块、例程、特征、属性、方法和其他方面的具体命名和划分并非是强制性的,实现本技术或其特征的机制可具有不同的名称、划分和/或格式。此外,如本领域技术人员将显而易见的,所公开的实施例的模块、例程、特征、属性、方法和其他方面可被实现为软件、硬件、固件或三者的任意组合。当然,在组件(其示例是模块)被实现为软件的情况下,该组件可被实现为独立的程序、更大程序的一部分、多个单独的程序、静态或动态链接库、内核可加载模块、设备驱动程序、和/或编程技术领域中的技术人员现在已知或将来知晓的每一个和任何其他方式。
上述详细描述只是为了说明和描述的目的而提出的。并非旨在穷举所公开的技术或将其限于所公开的精确形式。鉴于上述教导,许多修改和变型都是可能的。所描述的实施例只是为了最好地说明本技术的原理以及其实际应用,从而使精通本技术的其他人在各种实施例中最佳地利用本技术,适合于特定用途的各种修改也是可以的。而且,应当注意,说明书中使用的语言原则上是出于可读性和指示性的目的而选择的。尽管用结构特征和/或方法动作专用的语言描述了本主题,但可以理解,所附权利要求书中定义的主题不必限于上述具体特征或动作。更确切而言,上述具体特征和动作是作为实现权利要求的示例形式公开的。
Claims (10)
1.一种用于在自由空间中向用户提供方向性力反馈的方法,包括:
提供能绕可移动的第一轴旋转的质量块,所述质量块和可移动的轴响应于控制信号生成三维空间中具有方向和大小的力矢量;以及
响应于处理设备中执行的应用,至少绕所述第一轴旋转所述质量块以生成所述力矢量,所述应用在用户的控制下且向用户显示事件,所述力矢量表示关于所述应用中的事件的反馈。
2.如权利要求1所述的方法,其特征在于,旋转包括绕所述第一轴旋转所述质量块同时移动所述可移动的轴,以生成所述力矢量。
3.如权利要求1所述的方法,其特征在于,提供包括提供所述质量块以一轴结构为中心,通过控制所述质量块绕所述轴结构旋转的速度来生成表示所述力矢量的大小的力矩大小。
4.如权利要求3所述的方法,其特征在于,旋转包括通过移动所述轴结构以使得所述力矩指向为物理力矢量定义的方向,为所述物理力矢量生成方向。
5.如权利要求4所述的方法,其特征在于,移动所述质量块绕其旋转的轴结构包括在一范围内倾斜所述轴结构。
6.如权利要求3所述的方法,其特征在于,移动所述轴结构包括将所述轴结构旋转到所需位置。
7.如权利要求3所述的方法,其特征在于,所述质量块具有原位置,所述轴结构的移动以所述原位置为基准。
8.如权利要求7所述的方法,其特征在于,所述原位置包括所述轴结构与原位置基准点对齐。
9.如权利要求1所述的方法,其特征在于,所述方法响应于执行应用的计算环境,所述方法在所述生成步骤之前还包括:
确定力产生事件已在所述应用中发生;
响应于力产生事件,基于所述力产生事件确定力持续时间;
相对于设备上的定向基准位置确定三维力矢量。
10.如权利要求9所述的方法,其特征在于,所述力产生事件表示所述应用中在生成所述力矢量的同时显示给所述用户的动作。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/821,099 US8878656B2 (en) | 2010-06-22 | 2010-06-22 | Providing directional force feedback in free space |
US12/821,099 | 2010-06-22 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102243528A true CN102243528A (zh) | 2011-11-16 |
CN102243528B CN102243528B (zh) | 2014-12-10 |
Family
ID=44961617
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110184664.4A Active CN102243528B (zh) | 2010-06-22 | 2011-06-21 | 在自由空间中提供方向性力反馈 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8878656B2 (zh) |
CN (1) | CN102243528B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107224327A (zh) * | 2017-06-07 | 2017-10-03 | 佛山市蓝瑞欧特信息服务有限公司 | 用于远程医疗的单工具操控系统以及使用方法 |
CN108744497A (zh) * | 2018-01-16 | 2018-11-06 | 上海狮峪智能科技有限公司 | 共享vr游戏一体机及其使用方法 |
CN109302521A (zh) * | 2018-11-23 | 2019-02-01 | Oppo(重庆)智能科技有限公司 | 电子设备和电子设备的跌落控制方法 |
CN109327623A (zh) * | 2018-11-23 | 2019-02-12 | Oppo(重庆)智能科技有限公司 | 电子设备和电子设备的跌落控制方法 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9041622B2 (en) | 2012-06-12 | 2015-05-26 | Microsoft Technology Licensing, Llc | Controlling a virtual object with a real controller device |
US10175750B1 (en) * | 2012-09-21 | 2019-01-08 | Amazon Technologies, Inc. | Projected workspace |
KR102140811B1 (ko) * | 2013-07-23 | 2020-08-03 | 삼성전자주식회사 | 디바이스의 사용자 인터페이스 제공 방법 및 그 디바이스 |
US9529454B1 (en) | 2015-06-19 | 2016-12-27 | Microsoft Technology Licensing, Llc | Three-dimensional user input |
GB2543358A (en) * | 2015-10-16 | 2017-04-19 | Sony Computer Entertainment Inc | Input device and method, entertainment system and control method |
CN113961130A (zh) * | 2021-11-15 | 2022-01-21 | 宝宝巴士股份有限公司 | 一种基于Unity3D模拟旋钮操作的方法 |
GB2622044A (en) * | 2022-08-31 | 2024-03-06 | Sony Interactive Entertainment Europe Ltd | Haptic module and controller having rotational weight distribution |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020036617A1 (en) * | 1998-08-21 | 2002-03-28 | Timothy R. Pryor | Novel man machine interfaces and applications |
CN2720514Y (zh) * | 2004-07-27 | 2005-08-24 | 任峰 | 振动鼠标 |
CN101329600A (zh) * | 2004-03-23 | 2008-12-24 | 富士通株式会社 | 动作控制系统 |
TW200949103A (en) * | 2008-04-17 | 2009-12-01 | Erke Erke Arastirmalari Ve Muhendislik Anonim Sirketi | Gear device, preferably motor device |
Family Cites Families (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6028593A (en) | 1995-12-01 | 2000-02-22 | Immersion Corporation | Method and apparatus for providing simulated physical interactions within computer generated environments |
US6278418B1 (en) | 1995-12-29 | 2001-08-21 | Kabushiki Kaisha Sega Enterprises | Three-dimensional imaging system, game device, method for same and recording medium |
US6705868B1 (en) | 1998-03-18 | 2004-03-16 | Purdue Research Foundation | Apparatus and methods for a shape memory spring actuator and display |
US6072494A (en) | 1997-10-15 | 2000-06-06 | Electric Planet, Inc. | Method and apparatus for real-time gesture recognition |
US6162123A (en) * | 1997-11-25 | 2000-12-19 | Woolston; Thomas G. | Interactive electronic sword game |
US6950534B2 (en) | 1998-08-10 | 2005-09-27 | Cybernet Systems Corporation | Gesture-controlled interfaces for self-service machines and other applications |
US6088020A (en) | 1998-08-12 | 2000-07-11 | Mitsubishi Electric Information Technology Center America, Inc. (Ita) | Haptic device |
US6512838B1 (en) | 1999-09-22 | 2003-01-28 | Canesta, Inc. | Methods for enhancing performance and data acquired from three-dimensional image systems |
US6674877B1 (en) | 2000-02-03 | 2004-01-06 | Microsoft Corporation | System and method for visually tracking occluded objects in real time |
US6663491B2 (en) | 2000-02-18 | 2003-12-16 | Namco Ltd. | Game apparatus, storage medium and computer program that adjust tempo of sound |
US7227526B2 (en) | 2000-07-24 | 2007-06-05 | Gesturetek, Inc. | Video-based image control system |
US7182691B1 (en) | 2000-09-28 | 2007-02-27 | Immersion Corporation | Directional inertial tactile feedback using rotating masses |
WO2002027705A1 (en) | 2000-09-28 | 2002-04-04 | Immersion Corporation | Directional tactile feedback for haptic feedback interface devices |
US6641480B2 (en) | 2001-01-29 | 2003-11-04 | Microsoft Corporation | Force feedback mechanism for gamepad device |
US6539931B2 (en) | 2001-04-16 | 2003-04-01 | Koninklijke Philips Electronics N.V. | Ball throwing assistant |
US7627139B2 (en) | 2002-07-27 | 2009-12-01 | Sony Computer Entertainment Inc. | Computer image and audio processing of intensity and input devices for interfacing with a computer program |
WO2004107266A1 (en) | 2003-05-29 | 2004-12-09 | Honda Motor Co., Ltd. | Visual tracking using depth data |
US7308112B2 (en) | 2004-05-14 | 2007-12-11 | Honda Motor Co., Ltd. | Sign based human-machine interaction |
US7704135B2 (en) | 2004-08-23 | 2010-04-27 | Harrison Jr Shelton E | Integrated game system, method, and device |
KR100754385B1 (ko) | 2004-09-30 | 2007-08-31 | 삼성전자주식회사 | 오디오/비디오 센서를 이용한 위치 파악, 추적 및 분리장치와 그 방법 |
US7492367B2 (en) | 2005-03-10 | 2009-02-17 | Motus Corporation | Apparatus, system and method for interpreting and reproducing physical motion |
JP4686595B2 (ja) | 2005-03-17 | 2011-05-25 | 本田技研工業株式会社 | クリティカルポイント解析に基づくポーズ推定 |
US20080026838A1 (en) | 2005-08-22 | 2008-01-31 | Dunstan James E | Multi-player non-role-playing virtual world games: method for two-way interaction between participants and multi-player virtual world games |
US8351646B2 (en) | 2006-12-21 | 2013-01-08 | Honda Motor Co., Ltd. | Human pose estimation and tracking using label assignment |
US20080242414A1 (en) | 2007-03-29 | 2008-10-02 | Broadcom Corporation, A California Corporation | Game devices with integrated gyrators and methods for use therewith |
US20080252596A1 (en) | 2007-04-10 | 2008-10-16 | Matthew Bell | Display Using a Three-Dimensional vision System |
AU2008299883B2 (en) | 2007-09-14 | 2012-03-15 | Facebook, Inc. | Processing of gesture-based user interactions |
WO2009059065A1 (en) | 2007-10-30 | 2009-05-07 | Hewlett-Packard Development Company, L.P. | Interactive display system with collaborative gesture detection |
US20090221368A1 (en) | 2007-11-28 | 2009-09-03 | Ailive Inc., | Method and system for creating a shared game space for a networked game |
GB2455316B (en) | 2007-12-04 | 2012-08-15 | Sony Corp | Image processing apparatus and method |
KR101335346B1 (ko) | 2008-02-27 | 2013-12-05 | 소니 컴퓨터 엔터테인먼트 유럽 리미티드 | 장면의 심도 데이터를 포착하고, 컴퓨터 액션을 적용하기 위한 방법들 |
US20090280860A1 (en) | 2008-05-12 | 2009-11-12 | Sony Ericsson Mobile Communications Ab | Mobile phone with directional force feedback and method |
US8620213B2 (en) * | 2009-12-24 | 2013-12-31 | Sony Computer Entertainment Inc. | Wireless device pairing methods |
TW201005469A (en) | 2008-07-23 | 2010-02-01 | Ind Tech Res Inst | Device with spatially unrestricted force feedback |
US9399167B2 (en) | 2008-10-14 | 2016-07-26 | Microsoft Technology Licensing, Llc | Virtual space mapping of a variable activity region |
-
2010
- 2010-06-22 US US12/821,099 patent/US8878656B2/en active Active
-
2011
- 2011-06-21 CN CN201110184664.4A patent/CN102243528B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020036617A1 (en) * | 1998-08-21 | 2002-03-28 | Timothy R. Pryor | Novel man machine interfaces and applications |
CN101329600A (zh) * | 2004-03-23 | 2008-12-24 | 富士通株式会社 | 动作控制系统 |
CN2720514Y (zh) * | 2004-07-27 | 2005-08-24 | 任峰 | 振动鼠标 |
TW200949103A (en) * | 2008-04-17 | 2009-12-01 | Erke Erke Arastirmalari Ve Muhendislik Anonim Sirketi | Gear device, preferably motor device |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107224327A (zh) * | 2017-06-07 | 2017-10-03 | 佛山市蓝瑞欧特信息服务有限公司 | 用于远程医疗的单工具操控系统以及使用方法 |
CN108744497A (zh) * | 2018-01-16 | 2018-11-06 | 上海狮峪智能科技有限公司 | 共享vr游戏一体机及其使用方法 |
CN109302521A (zh) * | 2018-11-23 | 2019-02-01 | Oppo(重庆)智能科技有限公司 | 电子设备和电子设备的跌落控制方法 |
CN109327623A (zh) * | 2018-11-23 | 2019-02-12 | Oppo(重庆)智能科技有限公司 | 电子设备和电子设备的跌落控制方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102243528B (zh) | 2014-12-10 |
US8878656B2 (en) | 2014-11-04 |
US20110309919A1 (en) | 2011-12-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102221890B (zh) | 自由空间方向性力反馈装置 | |
CN102243528B (zh) | 在自由空间中提供方向性力反馈 | |
EP3682307B1 (en) | Robot as personal trainer | |
CN108027653B (zh) | 虚拟环境中的触觉交互 | |
CN102135798B (zh) | 仿生学运动 | |
CN102306051B (zh) | 复合姿势-语音命令 | |
TWI594174B (zh) | 頭戴顯示器之追蹤系統、方法及裝置 | |
CN106664401B (zh) | 用于在与内容交互时向用户提供反馈的系统和方法 | |
CN102576466B (zh) | 用于跟踪模型的系统和方法 | |
CN109069933A (zh) | 在vr环境中的观众视角 | |
CN109069934A (zh) | 对虚拟现实环境(vr)中的vr用户的观众视图跟踪 | |
CN109069932A (zh) | 观看与虚拟现实(vr)用户互动性相关联的vr环境 | |
US20080215974A1 (en) | Interactive user controlled avatar animations | |
CN102129709A (zh) | 可视化深度 | |
CN102301398A (zh) | 身体扫描 | |
CN107517372A (zh) | 一种vr内容拍摄方法、相关设备及系统 | |
CN102135799A (zh) | 与基于计算机的应用的交互 | |
JP2010535363A (ja) | 仮想世界のアバター制御、インタラクティビティおよび通信インタラクティブメッセージング | |
CN102193624A (zh) | 用于基于姿势的用户界面的物理交互区 | |
CN102520574A (zh) | 飞行时间深度成像 | |
US10841247B2 (en) | Social media connection for a robot | |
CN102289815A (zh) | 检测多功能传感器设备的运动 | |
CN102207771A (zh) | 推断参与运动捕捉系统的用户意图 | |
CN102414641A (zh) | 改变显示环境内的视图视角 | |
CN102243650A (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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
ASS | Succession or assignment of patent right |
Owner name: MICROSOFT TECHNOLOGY LICENSING LLC Free format text: FORMER OWNER: MICROSOFT CORP. Effective date: 20150506 |
|
C41 | Transfer of patent application or patent right or utility model | ||
TR01 | Transfer of patent right |
Effective date of registration: 20150506 Address after: Washington State Patentee after: Micro soft technique license Co., Ltd Address before: Washington State Patentee before: Microsoft Corp. |