(57)【特許請求の範囲】
【請求項１】
コンピュータゲームプログラムとのインタラクティブなインタフェースを可能にするコンピュータ実装された方法であって、
ユーザ入力を受け取り、ユーザ入力を前記コンピュータゲームプログラムに無線で送信するための手持ち式の入力デバイスにおいて、前記コンピュータゲームプログラムのインタラクティブなコンポーネントに関連づけられた複数のギアリングパラメータをアクティブにするステップと、
前記コンピュータゲームプログラムのインタラクティブなコンポーネントであって、前記インタラクティブなインタフェースを可能にするために前記送信されたユーザ入力を受信するインタラクティブなコンポーネントを特定するステップと、
ユーザ入力を検出し、前記送信されたユーザ入力が指示する場合、前記インタラクティブなコンポーネントに前記複数のギアリングパラメータの一つを適用するステップとを含み、
前記適用されるギアリングパラメータは、前記ユーザ入力と、前記コンピュータゲームプログラムの実行中に前記インタラクティブなコンポーネントが反応するレートとの間のスケーリング率を定義し、
前記インタラクティブなコンポーネントが反応するレートの適用は、前記コンピュータゲームプログラムの実行中に起きるイベントに対して定義され、
前記複数のギアリングパラメータの間を不連続に切り替えられるように前記複数のギアリングパラメータのそれぞれが選択可能であることを特徴とする方法。
【請求項２】
前記ユーザ入力をモニタし、前記適用されるギアリングパラメータに変化が起きたかどうかを決定するステップと、
前記適用されるギアリングパラメータに変化が起きた場合に、更新されたギアリングパラメータを適用するステップとを含み、
前記更新されたギアリングパラメータは新しいスケーリング率を定義するものであることを特徴とする請求項１に記載のコンピュータゲームプログラムとのインタラクティブなインタフェースを可能にするコンピュータ実装された方法。
【請求項３】
前記入力デバイスは、３つの直交軸における並進および回転移動を検出することのできる動きセンサにもとづいてユーザ入力を受け取ることを特徴とする請求項１に記載のコンピュータゲームプログラムとのインタラクティブなインタフェースを可能にするコンピュータ実装された方法。
【請求項４】
音を検出するステップと、
前記音を処理して前記音がユーザ入力にマッピングされるかどうかを決定するステップと、
前記音が前記ユーザ入力にマッピングされる場合、前記ユーザ入力を適用して、前記コンピュータゲームプログラムの実行中に前記ギアリングパラメータの一つを適用するステップとをさらに含むことを特徴とする請求項１に記載のコンピュータゲームプログラムとのインタラクティブなインタフェースを可能にするコンピュータ実装された方法。
【請求項５】
前記適用されるギアリングパラメータは、前記コンピュータゲームの異なるインタラクティブなコンポーネントに適用されるべき複数の異なるスケーリング率を含むことを特徴とする請求項１に記載のコンピュータゲームプログラムとのインタラクティブなインタフェースを可能にするコンピュータ実装された方法。
【請求項６】
前記適用されるギアリングパラメータは、グラフィカルユーザインタフェースを用いて設定可能であることを特徴とする請求項１に記載のコンピュータゲームプログラムとのインタラクティブなインタフェースを可能にするコンピュータ実装された方法。
【請求項７】
選択されたユーザ入力に応答してビデオゲームのコンポーネントによる反応の変化を指示するコンピュータ実装された方法であって、
入力デバイスにおいて前記ビデオゲームのインタラクティブなコンポーネントを制御する主要なユーザ入力を受け取るステップと、
前記主要なユーザ入力に対して前記ビデオゲームの前記インタラクティブなコンポーネントの反応をスケーリングする率を定義する複数のギアリングを定義するステップと、
二次的なユーザ入力に応答して前記複数のギアリングの２以上の間でユーザによる制御されたインタラクティブな切り替えを可能にするステップとを含み、
前記入力デバイスは、前記ユーザ入力を前記ビデオゲームに無線で送信する手持ち式の入力デバイスであり、
前記インタラクティブなコンポーネントが反応するレートの適用は、前記ビデオゲームの実行中に起きるイベントに対して定義され、
前記複数のギアリングの間を不連続に切り替えられるように前記複数のギアリングのそれぞれが選択可能であることを特徴とする方法。
【請求項８】
複数のギアリングのそれぞれを異なる二次的なユーザ入力にマッピングすることにより、前記複数のギアリングの間を不連続に切り替えることを可能にすることを特徴とする請求項７に記載のコンピュータ実装された方法。
【請求項９】
前記複数のギアリングと異なる二次的なユーザ入力との間のマッピングは、グラフィカルユーザインタフェースを用いて設定可能であることを特徴とする請求項８に記載のコンピュータ実装された方法。
【請求項１０】
前記入力デバイスは３つの直交軸における前記入力デバイスの並進および回転運動を検出する機能を有し、前記ビデオゲームは、３つの直交軸における前記入力デバイスの並進および回転運動に対する反応性を有することを特徴とする請求項７に記載のコンピュータ実装された方法。
【請求項１１】
コンピュータプログラムのインタラクティブなコンポーネントに対するギアリングパラメータのユーザによる制御された適用を可能にするコンピュータ実装された方法であって、
ユーザ入力を受け取り、少なくとも部分的には前記コンピュータプログラムを実行しているコンピュータシステムにユーザ入力を無線で送信するための手持ち式の入力デバイスにおいて、前記コンピュータプログラムのインタラクティブなコンポーネントに関連づけられた複数のギアリング比の適用を可能にするステップと、
前記入力デバイスから、特定のタイプのユーザ入力であるギアリングトリガを受信するステップと、
前記ギアリングトリガに関連づけられたギアリングパラメータであって、前記コンピュータシステムに関連づけられた第１メモリに格納され、ユーザ入力と、前記コンピュータプログラムの実行中に前記インタラクティブなコンポーネントが反応するレートとの間のスケーリング率を定義するギアリングパラメータを調べるステップと、
前記ギアリングパラメータを第１メモリから、適用されるギアリングパラメータを格納するための第２メモリへコピーするステップと、
前記第２メモリから取得された前記適用されるギアリングパラメータを用いて前記コンピュータプログラムを実行する結果、前記ユーザ入力と前記コンピュータプログラムの実行中に前記インタラクティブなコンポーネントが反応するレートとの間のスケーリング率にしたがって次のユーザ入力が反応するステップとを含み、
前記インタラクティブなコンポーネントが反応するレートの適用は、前記コンピュータプログラムの実行中に起きるイベントに対して定義され、
前記複数のギアリングパラメータの間を不連続に切り替えられるように前記複数のギアリングパラメータのそれぞれが選択可能であることを特徴とする方法。
【請求項１２】
前記入力デバイスは３つの直交軸における前記入力デバイスの並進および回転運動を検出する機能を有し、前記コンピュータプログラムは、３つの直交軸における前記入力デバイスの並進および回転運動に対する反応性を有することを特徴とする請求項１１に記載のコンピュータ実装された方法。
【請求項１３】
前記コンピュータシステムはコンピュータネットワークの一部であり、前記コンピュータプログラムは前記コンピュータネットワークの他のユーザとの間の相互作用を可能にすることを特徴とする請求項１１に記載のコンピュータ実装された方法。
【請求項１４】
前記コンピュータプログラムの実行は、前記コンピュータネットワークに接続されたコンピュータシステム間で共有可能であることを特徴とする請求項１３に記載のコンピュータ実装された方法。
【請求項１５】
コンピュータゲームプログラムのインタラクティブなコンポーネントの反応を変えるためのコンピュータ実装された方法であって、
ユーザ入力を受け取り、少なくとも部分的には前記コンピュータプログラムを実行しているコンピュータシステムにユーザ入力を無線で送信するための手持ち式の入力デバイスにおいて、３つの直交軸における並進および回転運動を検出する機能を可能にするステップと、
ユーザ入力をマッピングして前記コンピュータゲームプログラムのインタラクティブなコンポーネントを制御するステップと、
ユーザ入力を検出し、ギアリングパラメータを特定のインタラクティブなコンポーネントに適用するステップと、
前記ユーザ入力に関連づけられたギアリングパラメータであって、前記コンピュータシステムに関連づけられた第１メモリに格納され、ユーザ入力と、前記コンピュータプログラムの実行中に前記インタラクティブなコンポーネントが反応するレートとの間のスケーリング率を定義するギアリングパラメータを調べるステップと、
前記ギアリングパラメータを格納メモリから、適用されるギアリングパラメータを保持するアクティブメモリへコピーするステップと、
次のユーザ入力に対して前記適用されるギアリングパラメータを用いて前記コンピュータプログラムを実行するステップとを含み、
前記インタラクティブなコンポーネントが反応するレートの適用は、前記コンピュータゲームプログラムの実行中に起きるイベントに対して定義され、
前記複数のギアリングパラメータの間を不連続に切り替えられるように前記複数のギアリングパラメータのそれぞれが選択可能であることを特徴とする方法。
【請求項１６】
前記コンピュータシステムはコンピュータネットワークの一部であり、前記コンピュータゲームプログラムは前記コンピュータネットワークの他のユーザとの間の相互作用を可能にすることを特徴とする請求項１５に記載のコンピュータ実装された方法。
【請求項１７】
前記格納メモリは前記コンピュータゲームプログラムに対する複数のギアリングパラメータを格納することを特徴とする請求項１５に記載のコンピュータ実装された方法。
【請求項１８】
前記複数のギアリングパラメータのそれぞれが異なるユーザ入力にマッピングされることで、ユーザが前記複数のギアリングパラメータから特定のギアリングパラメータをインタラクティブに選択することが可能になることを特徴とする請求項１７に記載のコンピュータ実装された方法。
【発明の詳細な説明】
【技術分野】
【０００１】
ビデオゲーム産業は、長年にわたって多くの変化を経験してきた。演算能力が拡大するにつれ、ビデオゲームの開発者も同様に、この演算能力の増大を利用するゲームソフトウェアを作成してきている。
【背景技術】
【０００２】
このために、ビデオゲーム開発者は、極めてリアルなゲーム体験を生み出すべく、高度な演算と数学を採用したゲームをコーディングしてきた。
ゲームプラットフォームの例に、ソニープレイステーションまたはソニープレイステーション２（ＰＳ２）があり、これらはそれぞれ、ゲームコンソールの形で販売されている。周知のように、ゲームコンソールはモニタ（通常はテレビ）と接続されて、手持ち式のコントローラによってユーザとのインタラクションを可能にするように設計されている。ゲームコンソールは、ＣＰＵ、処理量の多いグラフィック操作のためのグラフィックシンセサイザ、ジオメトリ変換を実行するためのベクトル装置などの特化した処理ハードウェアと、その他の繋ぎとなるハードウェア即ちグルーハードウェア、ファームウェアおよびソフトウェアなどを備えて設計される。また、ゲームコンソールは、ゲームコンソールによるローカルプレイを行うためにゲームのコンパクトディスクを受け容れるための光ディスクトレイを備えて設計される。また、ユーザが、インターネット上で他のユーザと対戦して、または、他のユーザと一緒にインタラクティブにプレイすることができるオンラインゲームも可能である。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
ゲームが複合的なものであることがプレーヤの興味を引き続けていることから、ゲームのソフトウェアおよびハードウェアのメーカは更なるインタラクティブ機能を実現するために革新を続けてきている。しかし、実際は、ユーザがゲームとインタラクトする手法は、長年にわたって劇的には変わることはなかった。一般に、ユーザは、未だに、手持ち式のコントローラを使用してコンピュータゲームをプレイしたり、マウスポインティングデバイスを使用してプログラムとのインタラクションを行っている。
【０００４】
前述を鑑みて、ゲームプレイにおいてより高度なユーザインタラクティビティを可能にする方法およびシステムが求められている。
【課題を解決するための手段】
【０００５】
概して、本発明は、コンピューティングシステムとのダイナミックなユーザインタラクティビティを可能にする方法、システムおよび装置を提供することによって、このニーズを満たす。ある実施の形態において、コンピュータゲームプログラムとのインタラクティブなインタフェースを可能にするコンピュータ実装された方法を開示する。この方法は、ユーザ入力を受け取り、ユーザ入力を前記コンピュータゲームプログラムに送信するための入力デバイスを提供する。この入力デバイスは、前記コンピュータゲームプログラムのインタラクティブなコンポーネントに関連づけられた１以上のギアリングパラメータをアクティブにすることができる。別のオペレーションにおいて、この方法は、前記コンピュータゲームプログラムのインタラクティブなコンポーネントを特定する。このインタラクティブなコンポーネントは、前記インタラクティブなインタフェースを可能にするために前記送信されたユーザ入力を受信するために使われる。さらに別のオペレーションにおいて、この方法は、ユーザ入力を検出し、前記送信されたユーザ入力が指示する場合、前記インタラクティブなコンポーネントに前記ギアリングパラメータの一つを適用する。前記適用されるギアリングパラメータは、前記ユーザ入力と、前記コンピュータゲームプログラムの実行中に前記インタラクティブなコンポーネントが反応するレートとの間のスケーリング率を定義するために使われる。
【０００６】
別の実施の形態において、選択されたユーザ入力に応答してビデオゲームのコンポーネントによる反応の変化を指示するコンピュータ実装された方法を開示する。この方法は、入力デバイスにおいて前記ビデオゲームのインタラクティブなコンポーネントを制御する主要なユーザ入力を受け取る。この方法はまた、複数のギアリングを定義する。ギアリングは、前記主要なユーザ入力に対して前記ビデオゲームの前記インタラクティブなコンポーネントの反応をスケーリングする率を定義するために使われる。この方法は、次に、二次的なユーザ入力に応答して前記複数のギアリングの２以上の間でユーザによる制御されたインタラクティブな切り替えを可能にする。
【０００７】
さらに別の実施の形態において、コンピュータプログラムのインタラクティブなコンポーネントに対するギアリングパラメータのユーザによる制御された適用を可能にするコンピュータ実装された方法を開示する。この方法において、あるオペレーションは、ユーザ入力を受け取り、少なくとも部分的には前記コンピュータプログラムを実行しているコンピュータシステムにユーザ入力を送信するための入力デバイスを提供する。この入力デバイスは、前記コンピュータプログラムのインタラクティブなコンポーネントに関連づけられた１以上のギアリング比の適用を可能にするために使われる。別のオペレーションにおいて、この方法は、前記入力デバイスから、特定のタイプのユーザ入力であるギアリングトリガを受信する。さらに別のオペレーションにおいて、この方法は、前記ギアリングトリガに関連づけられたギアリングパラメータを調べる。このギアリングパラメータは、前記コンピュータシステムに関連づけられた第１メモリに格納され、ユーザ入力と、前記コンピュータプログラムの実行中に前記インタラクティブなコンポーネントが反応するレートとの間のスケーリング率を定義する。この方法の別のオペレーションは、前記ギアリングパラメータを第１メモリから、適用されるギアリングパラメータを格納するための第２メモリへコピーすることである。さらに別のオペレーションにおいて、この方法は、前記第２メモリから取得された前記適用されるギアリングパラメータを用いて前記コンピュータプログラムを実行する。その結果、前記ユーザ入力と前記コンピュータプログラムの実行中に前記インタラクティブなコンポーネントが反応するレートとの間のスケーリング率にしたがって次のユーザ入力が反応する。
【０００８】
さらに別の実施の形態において、コンピュータゲームプログラムのインタラクティブなコンポーネントの反応を変えるためのコンピュータ実装された方法を開示する。この豊富は、ユーザ入力を受け取り、少なくとも部分的には前記コンピュータプログラムを実行しているコンピュータシステムにユーザ入力を送信するための入力デバイスを提供する。この入力デバイスは、３つの直交軸における並進および回転運動を検出する機能を有する。この方法はまた、ユーザ入力をマッピングして前記コンピュータゲームプログラムのインタラクティブなコンポーネントを制御するオペレーションを含む。別のオペレーションにおいて、この方法は、ユーザ入力を検出し、ギアリングパラメータを特定のインタラクティブなコンポーネントに適用する。さらに別のオペレーションにおいて、この方法は、前記ユーザ入力に関連づけられたギアリングパラメータを調べる。このギアリングパラメータは、前記コンピュータシステムに関連づけられた第１メモリに格納され、ユーザ入力と、前記コンピュータプログラムの実行中に前記インタラクティブなコンポーネントが反応するレートとの間のスケーリング率を定義する。この方法はまた、前記ギアリングパラメータを格納メモリから、適用されるギアリングパラメータを保持するアクティブメモリへコピーするオペレーションを含む。さらに別のオペレーションにおいて、この方法は、次のユーザ入力に対して前記適用されるギアリングパラメータを用いて前記コンピュータプログラムを実行する。
【０００９】
本発明の利点は、例示のために本発明の原理を示す添付の図面と併せて、以下の詳細な説明を読めば明らかとなるであろう。
【図面の簡単な説明】
【００１０】
本発明は添付の図面と併せて以下の詳細な説明を読めば容易に理解できるであろう。図面においては、同じ構造要素には同じ参照符号を付した。
【００１１】
【図１】本発明のある実施の形態に係るインタラクティブゲームの配置を説明する図である。
【００１２】
【図２】本発明のある実施の形態に係る画像取得および処理システムを用いた例示的コンピュータインタラクションを説明する図である。
【００１３】
【図３】本発明の実施の形態を実装するために使うことができるグラフィカルディスプレイ上のオブジェクトとインタラクションするための例示的なユーザ入力システムのブロック図である。
【００１４】
【図４】ここに説明する発明の実施の形態を実装するように構成されたコンピュータ処理システムの簡略化したブロック図である。
【００１５】
【図５】本発明のある実施の形態に係る、代替的な入力デバイスとして動作する操作オブジェクトとともに利用するために適したビデオゲームコンソールの構成要素の構成のブロック図である。
【００１６】
【図６】本発明のある実施の形態に係る、ユーザによる操作中に、ユーザ入力デバイスに対応するピクセル群をトラッキングして判別するための機能ブロックを示すブロック図である。
【００１７】
【図７】本発明のある実施の形態に係る、画像取得装置によって観察される空間におけるオブジェクトの動きをマッピングするための例示的な画像処理システムの概略ブロック図である。
【００１８】
【図８】本発明のある実施の形態に係る、図７の画像処理システムのための例示的なアプリケーションを説明する図である。
【００１９】
【図９】本発明のある実施の形態に係る、ギアリング比をインタラクティブに変更するために使われる例示的なコントローラを示す図である。
【図１０】本発明のある実施の形態に係る、ギアリング比をインタラクティブに変更するために使われる例示的なコントローラを示す図である。
【００２０】
【図１１】本発明のある実施の形態に係る、図９および図１０のコントローラに対する例示的アプリケーションを示す図である。
【００２１】
【図１２】図１１に示したアプリケーションの例示的なソフトウェア制御されたギアリング量を示す図である。
【００２２】
【図１３】本発明のある実施の形態に係る、専用のギアリングボタンを押すことによって選択される時間の関数としてギアリングの変化を説明する別の例示的なグラフを示す図である。
【００２３】
【図１４】本発明のある実施の形態に係る、ユーザインタラクションに反応する画像処理システムの別の例示的アプリケーションを示す図である。
【００２４】
【図１５】本発明のある実施の形態に係る、スイングの長さに沿った、異なる時間ｔ１〜ｔ５における例示的なギアリング量を表すグラフを示す図である。
【００２５】
【図１６】本発明のある実施の形態に係る、ユーザインタラクションに反応する画像処理システムの別の例示的アプリケーションを示す図である。
【００２６】
【図１７】本発明のある実施の形態に係る、フットボールを“放した”ときのギアリング量の例示的変化を説明するグラフを示す図である。
【００２７】
【図１８】本発明のある実施の形態に係る、ギアリングを含むビデオゲームのオペレーションを説明する例示的フローチャートを示す図である。
【００２８】
【図１９Ａ】本発明のある実施の形態に係る、ギアリングプロセスの起動に関わるさらなる詳細を説明する例示的フローチャートを示す図である。
【００２９】
【図１９Ｂ】本発明のある実施の形態に係る、ギアリング比の変更に関わるさらなる詳細を説明する例示的フローチャートを示す図である。
【００３０】
【図２０Ａ】本発明のある実施の形態に係る、いろいろなユーザ入力にもとづいたギアリング比の変化を説明する図である。
【００３１】
【図２０Ｂ】本発明のある実施の形態に係る、動きを感知できるコントローラへのユーザ入力にもとづいて異なるギアリング比がキャラクタの反応に与える影響を説明する図である。
【００３２】
【図２１】本発明のある実施の形態に係る、ギアリング設定を開始する手続きを説明するフロー図である。
【００３３】
【図２２】本発明のある実施の形態に係る、ビデオゲームのギアリング比を設定するための手続きを説明するフローチャートである。
【発明を実施するための形態】
【００３４】
。以下の説明では、本発明を完全に理解できるように、具体的な詳細を数多く記載する。しかし、これらの詳細な内容の一部または全てを用いなくとも本発明を実施し得ることは当業者にとって自明である。場合によっては、本発明を不必要にわかりにくくしないように、公知のプロセス操作については詳しく記載しない。
【００３５】
本明細書に記載する技術は、コンピュータプログラムとのインタラクションを行うために、アクティブにギアリング（gearing）がかけられた入力を与えるように使用することができる。ギアリングをかえることは、一般に広い意味では、大きさおよび／あるいは時間において程度を様々に異なるものとすることができる入力であるとして定義できる。ギアリングの程度がコンピューティングシステムに伝達される。ギアリングの程度がコンピューティングシステムにより実施されるプロセスにかけられる。例えるならば、プロセスは、入出力を備えた流体のバケツとイメージすることができる。この流体のバケツは、システム上で実行中のプロセスである。よって、ギアリングは、コンピューティングシステムによって実行される処理の形態を制御する。一例では、ギアリングは、バケツに入っていく流体の滴と考えられる入力量に対して、流体のバケツから出ていく速度を制御することができる。したがって、充てんならびに排水速度は動的であり、この排水速度はギアリングによる影響を受ける。よって、ゲームプログラムなどのプログラムに流れている変化値を調整するように、ギアリングを調整または時間設定することができる。さらに、ギアリングは、移動データカウンタなどのカウンタに影響を及ぼし、プロセッサによるアクション、つまりは、ゲーム素子、オブジェクト、プレーヤ、キャラクタなどが行うアクションを制御する。
【００３６】
この例をより具体的な計算例にしてみると、流体が出ていく速度は、コンピュータプログラムのフィーチャによって、いくらかの入力とギアリングに応じて制御がなされる速度、または制御が行われる速度である。このコンピュータプログラムのフィーチャは、オブジェクト、プロセス、変数、あるいは所定の／カスタムアルゴリズム、キャラクタ、ゲームプレーヤ、マウス（二次元もしくは三次元）などであってもよい。ギアリングによって変更され得た処理結果は、任意の数の方法でオブザーバに伝達することができる。このような方法としては、ディスプレイ画面上で視覚的に伝達する方法、音声を介して可聴的に伝達する方法、手触りによる振動音響によって伝達する方法、これらの組合せによって伝達する方法、または、単にゲームやプログラムのインタラクティブエレメントに対する処理の反応を修正することで伝達する方法が挙げられる。
【００３７】
入力は、（１）画像分析（２）慣性分析（３）音響分析あるいは、（１）（２）（３）のハイブリッドミックス分析を介して実行される追跡により取得することができる。画像分析ならびに適用されるギアリングに関しては様々な例が挙げられているが、追跡はビデオによる方法に限らず、様々な方法によって、具体的には、慣性分析、音響分析、これらをミックスしたものにより、および適切なアナライザによって行うことができることを理解されたい。
【００３８】
各種実施形態においては、ビデオカメラ（例えば、画像分析）を有するコンピュータあるいはゲームシステムは、画像データを処理し、焦点ゾーンあるいは所定の場所（ビデオカメラの前であってもよい）で行われている様々なアクションを識別する。一般的に、そのようなアクションとして、三次元空間でのオブジェクトの移動や回転、または、ボタン、ダイアル、ジョイスティックなどの様々なコントロールのアクチュエーションを挙げることができる。これらの技術に加えて、本発明の技術はさらに、本明細書ではギアリングと呼ばれるスケーリング因子を調整するさらなる機能を与え、ディスプレイ画面の１つ以上の対応するアクションやプログラムのフィーチャに対する入力に対して感度を調整するようにする。例えば、ディスプレイ画面のアクションは、ビデオゲームの焦点となり得るオブジェクトであってもよい。さらに、オブジェクトは、変数、乗数、または計算などのプログラムのフィーチャとすることもでき、音声、振動、ディスプレイ画面の画像、またはこれらとの組合せで表現され、さらに、ギアリングがかけられた出力の他の表現と組合せて表現される。
【００３９】
別の実施形態では、コンピュータプログラムのフィーチャにギアリングをかけることができ、入力デバイスの検出は慣性アナライザによる処理に基づくものであってもよい。慣性アナライザは、慣性アクティビティに対する入力デバイスを追跡し、その情報をプログラムに伝達する。次に、プログラムは、慣性アナライザからの出力を扱い、出力にギアリング量をかけることができるようにする。ギアリング量は、プログラムがオペレーションを計算する際の程度または比率を決定する。オペレーションは任意の数の形態をとることができ、オペレーションの一例としては、ノイズ、可変ノイズ、オブジェクトの移動、または変数の生成、視覚および／あるいは可聴結果を出力するプログラムによる計算、を挙げることができる。出力が変数であれば、この変数を使用してプロセスを完了するようにしてもよい。これにより、プロセスはギアリング量を考慮するようになる。ギアリング量は、ユーザが事前に設定しても動的に設定してもよく、または要求に応じて調整することができる。
【００４０】
様々なタイプの慣性センサを使用して、６つの自由度（例えば、Ｘ、ＹおよびＺ軸方向の変換（例えば、加速度）およびＸ、ＹおよびＺ軸を中心とした回転）についての情報を提供することができる。６自由度についての情報を提供する適切な慣性センサーの例としては、加速度計、１つ以上の１軸加速度計、機械的ジャイロスコープ、リングレーザジャイロスコープ、あるいはこれらの２つ以上の組合せを挙げることができる。
【００４１】
センサーからの信号が分析されて、発明の方法に従うビデオゲームのプレイ中に、コントローラの動きおよび／あるいは方向が決定される。そのような方法は、プロセッサ読み取り可能媒体に記憶され、デジタルプロセッサ上で実行されるプログラムコード命令を実行可能な一連のプロセッサとして実装されてもよい。例えば、ビデオゲームシステムは１つ以上のプロセッサを備えることができる。各プロセッサは、例えばビデオゲームコンソールやカスタム設計のマルチプロセッサコアに通常使用されるマイクロプロセッサのような、デジタルプロセッサ装置であってもよい。一実施形態では、プロセッサは、プロセッサ読み取り可能命令の実行を通じて、慣性アナライザを実装してもよい。命令の一部はメモリに記憶されてもよい。他の形態では、慣性アナライザは、例えば特定用途向け集積回路（ＡＳＩＣ）として、またはデジタルシグナルプロセッサ（ＤＳＰ）としてハードウェアに実装されてもよい。そのようなアナライザハードウェアは、コントローラまたはコンソール上に設けられるか、または遠隔の場所に設けられてもよい。ハードウェアでの実装では、アナライザは、例えばプロセッサからの外部信号、または、例えばＵＳＢケーブル、イーサネット(登録商標)により、ネットワーク、インターネット、短距離無線接続、広帯域無線、ブルートゥース、またはローカルネットワークを介して接続される他の遠隔にあるソースからの外部信号に応じて、プログラム可能であってもよい。
【００４２】
慣性アナライザは、慣性センサにより生成される信号を分析する命令を備えるか実装し、コントローラの位置および／または方向に関する情報を利用してもよい。慣性センサ信号が分析されて、コントローラの位置および／または方向に関する情報を決定してもよい。この位置および／あるいは方向情報は、ビデオゲームのプレイ中にシステムとともに利用されてもよい。
【００４３】
一実施形態では、ゲームコントローラは、慣性信号を介して位置情報および／または方向情報をプロセッサに提供できる１つ以上の慣性センサを備えてもよい。方向情報には、コントローラの傾き、ロールあるいはヨーなどの角度情報が含まれてもよい。上述のように、また、一例として、慣性センサには、任意の数の加速度計、ジャイロスコープまたは傾斜センサ、またはこれらの任意の組合せが含まれていてもよい。一実施形態では、慣性センサには、傾斜およびロール軸に対するジョイスティックコントローラの方向を検知するように構成された傾斜センサと、ヨー軸沿いの加速度を検知するように構成された第１の加速度計、およびヨー軸に対する角加速度を検知するように構成された第２の加速度計を備える。加速度計は、例えば、１つ以上のばねで取り付けられた質量と１つ以上の方向に対する質量の変位を検知するセンサとを備えるＭＥＭＳ装置として実装されてもよい。質量の変位に依存するセンサからの信号は、ジョイスティックコントローラの加速度決定に用いられてもよい。そのような技術は、メモリに記憶されプロセッサによって実行されるゲームプログラムや一般のプログラムからの命令によって実現される。
【００４４】
一例では、慣性センサーとして適切な加速度計は、例えばばねなどでフレームに３〜４点で伸縮自在に接続された単一の質量であってもよい。ピッチ軸とロール軸は、ジョイスティックコントローラに設けられたフレームと交差する面に存在する。フレーム（およびジョイスティックコントローラ）がピッチ軸、ロール軸の回りを回転するにつれて、質量が重力の影響下で変位し、ばねがピッチ角および／あるいはロール角に依存した態様で伸縮する。質量の変位が検知され、ピッチ量および／あるいはロール量に依存した信号に変換される。ヨー軸回りの角加速度またはヨー軸沿いの線形加速度は、ばねの伸縮または質量の動きの特徴的なパターンを生成し、それらのパターンは検知されて角加速度量または線形加速度の量に応じた信号に変換される。このような加速度装置は、質量の動きおよびばねの伸縮力を追跡することによって傾斜、ヨー軸回りのロール角加速度とおよびヨー軸沿いの線形加速度を計測できる。質量の位置および／あるいはそれに働く力を追跡する方法には多くの違った方法があり、それらには、抵抗ひずみゲージ材料、光センサ、磁気センサ、ホール効果素子、圧電素子、容量センサなどが含まれる。
【００４５】
さらに、光源は、例えば、パルスコード、振幅変調または周波数変調フォーマットでテレメトリ信号をプロセッサに提供してもよい。そのようなテレメトリ信号は、いずれのジョイスティックボタンが押されているか、および／またはどれ位強くボタンが押されているかを表してもよい。テレメトリ信号は、例えばパルス符号化、パルス幅変調、周波数変調または光強度（振幅）変調などによって、光信号に符号化されてもよい。プロセッサは、光信号からテレメトリ信号を復号化し、復号化されたテレメトリ信号に応じてゲームコマンドを実行してもよい。テレメトリ信号は、画像キャプチャ装置で得られたジョイスティックの画像の分析から復号化されてもよい。他の形態では、装置は、光源からのテレメトリ信号受信専用の、独立した光学センサを備えることができる。
【００４６】
プロセッサは、画像キャプチャ装置で検出された光源からの光信号、および／あるいは、マイクロホン配列によって検出された音響信号からの音源場所と音源特性情報とともに、慣性センサからの慣性信号を用いて、コントローラおよび／あるいはそのユーザの場所および／あるいは方向に関する情報を推測してもよい。例えば、「音響レーダ」の音源場所およびその特性は、マイクロフォン配列と共に用いられて、ジョイスティックコントローラの動きが（慣性センサおよび／または光源を通じて）独立に追跡されている間、移動音源を追跡する。音響レーダでは、較正済み聴取領域が実行時間において選択され、較正済み聴取領域以外の音源から生じる音声が除去される。較正済み聴取領域は、画像キャプチャ装置の焦点または視野にある音量に対応した聴取領域を含んでいてもよい。
【００４７】
一実施形態では、音響アナライザによって追跡を行ってもよい。音響アナライザは入力デバイスからの音響信号を受信するように構成され、実行されるコマンドやインタラクションにかけられるギアリング量を伝達することができる。音響アナライザは、コンピュータプログラムセグメントの形態であってもよく、または、音響信号情報を処理するように設計された回路上に特別に形成されたものであってもよい。したがって、音響信号情報は、プログラムによって動的に設定されるか、要求に応じて、（コントローラ上のボタン、音声コマンドなどを選択することによって）入力デバイスを介してユーザにより設定されるギアリングデータを含むことができる。例えば、音声アナライザは、その開示内容が参照により本明細書に援用される、２００６年５月４日に出願された米国特許出願"SELECTIVE SOUND SOURCE LISTENING IN CONJUNCTION WITH COMPUTER INTERACTIVE PROCESSING"(発明者：Xiadong Mao, Richard L. Marks and Gary, M. Zalewski、代理人整理番号：SCEA04005JUMBOUS)に記載されている。
【００４８】
これらアナライザはマッピングチェーンを用いて構成することができる。マッピングチェーンは、アナライザやミキサに対する設定ができるように、ゲームプレイ中にゲームによって交換することができる。
【００４９】
一実施形態では、入力デバイスの追跡は画像アナライザによるものであってもよい。以下に説明しているように、画像アナライザは、ユーザならびに入力デバイスが位置する空間の画像をキャプチャするカメラを備え得る。この例では、画像アナライザは、処理プログラムのフィーチャにそれぞれのアクションを行わせるように、コントローラの位置を決定している。プログラムはゲームであり、フィーチャは入力デバイスによって制御されているオブジェクトであってもよい。さらに、画像アナライザは、位置データを入力ギアリング値とミックスするように構成される。ギアリング値は、ユーザにより、実行中に動的に与えられてもよく、または、実行セッションのアクティビティに応じてプログラムにより設定されてもよい。ギアリング入力は、ユーザによる入力ジェスチャやアクションに基づいて、コンピュータプログラムによる幾分かの処理に相対的インパクトを設定する。一実施形態では、ギアリングは、ユーザやユーザ入力デバイスからのコマンドやアクションをプログラムのフィーチャに変換する。プログラムのフィーチャは可視オブジェクトでなくてもよいが、音声、振動または画像の移動のいずれかのパラメータ、予測、あるいは変換を幾分か計算するように使用される変数の調整を含むことができる。したがって、ギアリングは、プログラムとプログラムのフィーチャ間に与えられるインタラクティビティを制御するための更なる意味を付加することになる。
【００５０】
さらに別の実施形態では、ミキサアナライザが提供される。このミキサアナライザはゲームのフィーチャにハイブリッド効果をもたらすように設計される。例えば、ミキサアナライザは、画像アナライザ、音響アナライザ、慣性アナライザなどの組合せからの入力を扱う。したがって、一実施形態では、このミキサアナライザは、いくつかのギアリング変数を受信する。次に、これらの変数は混合ならびに合成されて、プログラムのフィーチャとのハイブリッドな結果、コマンド、あるいはインタラクションをもたらす。同様に、プログラムのフィーチャは視覚オブジェクトならびに非視覚オブジェクト、オペレーションの処理に使用する変数、可聴反応に対する調節などを含むものと広く理解されるべきである。
【００５１】
図１は、本発明の一実施形態によるインタラクティブ（対話型）ゲーム構成１００を示す。インタラクティブゲーム構成１００は、コンピュータ１０２（本明細書では「コンソール」とも呼ぶ）を有し、これは、ディスプレイ画面１１０と接続されうる。ディスプレイ画面１１０の上には画像キャプチャ装置１０５が置かれ、コンピュータ１０２と接続されうる。コンピュータ１０２は、一実施形態では、ユーザが、コントローラ１０８によってゲームをプレイしたり、ビデオゲームとインタフェースすることができるゲームシステムのコンソールであってもよい。コンピュータ１０２は、インタラクティブなオンラインゲームをすることができるように、インターネットにも接続されうる。画像キャプチャ装置１０５は、ディスプレイ画面１１０の上に置かれて示されているが、画像キャプチャ装置１０５が、ディスプレイ画面１１０のほぼ前方にある画像をキャプチャできれば、ほかの近くの位置に置かれていてもよいことが理解されよう。これらの移動およびインタラクションをキャプチャするための技術は変更し得るが、例示的な技術は、それぞれ２００３年２月２１日に出願された英国特許出願公開第０３０４０２４．３号明細書（国際公開第ＧＢ２００４／０００６９３号パンフレット）および英国特許出願公開第０３０４０２２．７明細書（国際公開第ＧＢ２００４／０００７０３号パンフレット）号に記載されており、これらの各々は参照によりここに援用される。
【００５２】
一実施形態では、画像キャプチャ装置１０５は、標準的なウェブカムのように単純なものであっても、あるいは高度な技術を備えたものであってもよい。画像キャプチャ装置１０５は、画像をキャプチャし、この画像をデジタル化して、画像データをコンピュータ１０２に送信することができる。一部の実施形態では、デジタル化を実行するための論理回路が、画像キャプチャ装置の内部に組み込まれていてもよく、別の実施形態では、画像キャプチャ装置１０５が、デジタル化のために、アナログビデオ信号をコンピュータ１０２に送信してもよい。いずれの場合も、画像キャプチャ装置１０５は、画像キャプチャ装置１０５の前方にある任意のオブジェクトの、カラー画像または白黒画像をキャプチャすることができる。
【００５３】
図２は、画像キャプチャおよび処理システムを使用した例示的なコンピュータインタラクション処理を示している。コンピュータ１０２は、視野２０２から画像を生成する画像キャプチャ装置１０５から画像データを受信する。視野２０２には、おもちゃの飛行機のオブジェクト２１５を操作するユーザ２１０が含まれる。オブジェクト２１５は、画像キャプチャ装置１０５から視覚的に認識可能な複数のＬＥＤ２１２を含む。ＬＥＤ２１２は、オブジェクト２１５の位置情報および姿勢情報を提供する。さらに、オブジェクト２１５は、コンピュータの入力を生成するために、ボタン、トリガ、ダイアルなどの１つ以上の操作素子を含む。さらに、音声コマンドが使用されうる。一実施形態では、オブジェクト２１５は、画像キャプチャ装置１０５を介してデータをコンピュータ１０２に送信するために、ＬＥＤ２１２を変調する論理を含む回路２２０を含む。データは、操作手段の変調に応えて生成される符号化されたコマンドを含む。オブジェクト２１５が画像キャプチャ装置１０５により、視覚的に認識可能な３次元空間で移動ならびに回転されると、画像データ中に表されるＬＥＤの位置は、以下の図３〜６に関して説明しているように、３次元空間内の座標に変換される。この座標は、α、β、およびγ値に関する姿勢情報に加えて、ｘ、ｙ、およびｚ座標に関する位置情報を説明したものである。この座標はコンピュータのアプリケーションに送信される。このアプリケーションは、おもちゃの飛行機がディスプレイ１１０に、現実の、あるいは動画の飛行機２１５’として表示される飛行機ゲームであってもよく、飛行機２１５’はおもちゃの飛行機２１５の変調に応えて様々なスタントを行うことができる。他の形態では、ユーザ２１０は、おもちゃの飛行機２１５ではなくコントローラ１０８（図１に示す）を扱うこともでき、コントローラ１０８の移動は追跡可能であり、ディスプレイ画面でオブジェクトを移動させるようにコマンドがキャプチャされる。
【００５４】
一実施形態では、ユーザ２１０はさらに、動画の飛行機２１５’とのインタラクティビティの程度を変更あるいは修正するように選択することができる。インタラクティビティの程度は、ユーザ２１５が「ギアリング」構成要素を調整できるようにすることで変更することができる。このギアリング構成要素は、ユーザのコントローラ１０８（あるいは、おもちゃの飛行機２１５）による移動が動画の飛行機２１５’による移動に対応づけられる量を調整するものである。ゲームに対して動的に設定もしくは事前に設定され、あるいは、ユーザ２１０によるゲームのプレイ中に調整されるギアリングに応じて、動画の飛行機２１５’（例えば、ビデオゲームオブジェクト）に対応づけられる反応が変化し、別のレベルのユーザインタラクティビティと強化した体験とを与えることができる。ギアリングに関する詳細は、以下に図７〜２０に関連して説明する。
【００５５】
図３は、本発明の実施形態を実装するために使用できる、グラフィックディスプレイ上のオブジェクトとのインタラクト処理を行うための例示的なユーザ入力システムのブロック図である。図３に示すように、ユーザ入力システムは、ビデオキャプチャ装置３００、入力画像プロセッサ３０２、出力画像プロセッサ３０４、およびビデオ表示装置３０６から構成される。ビデオキャプチャ装置３００は、ビデオ画像のシーケンスをキャプチャすることができる装置であればどのようなものでもよく、一実施形態では、デジタルビデオカメラ（ウェブカメラなど）や同様の画像キャプチャ装置などである。
【００５６】
ビデオキャプチャ装置３００は、深度画像を提供するように構成されうる。本明細書では、「深度カメラ」および「三次元カメラ」との文言は、二次元のピクセル情報のほか、距離情報すなわち深度情報を取得することができる任意のカメラを指す。例えば、深度カメラは、制御された赤外線照明を利用して、距離情報を取得することができる。他の例示的な深度カメラに、立体カメラ対があり、これは２台の基準カメラを使用して距離情報を三角測量によって求める。同様に、「深度検知装置」との文言は、二次元のピクセル情報のほかに、距離情報を取得することができる任意のタイプの装置を指す。
【００５７】
このため、カメラ３００は、通常の二次元のビデオ像に加えて、３番目の次元をキャプチャおよびマップする能力を提供することができる。通常のカメラと同様に、深度カメラは、ビデオ画像を構成している複数のピクセルの二次元のデータをキャプチャする。これらの値は、ピクセルの色の値であり、通常は、各ピクセルの赤、緑、青（ＲＧＢ）の値である。このようにして、カメラによってキャプチャされたオブジェクトが、モニタに二次元オブジェクトとして表示される。しかし、従来のカメラとは異なり、深度カメラは、シーンの深度値を表すシーンのｚ成分もキャプチャする。通常、深度値はｚ軸に割り当てられるため、深度値は、「ｚ値」と呼ばれることも多い。
【００５８】
オペレーションにおいては、シーンの各ピクセルについてｚ値がキャプチャされる。各ｚ値は、カメラから、シーン内の関連するピクセルに対応するオブジェクトまでの距離を表している。また、最大検出範囲が、深度値が検出されなくなる境界を定義しうる。本発明の各種実施形態では、この最大範囲の面を使用して、ユーザ定義のオブジェクトのトラッキングを提供することができる。このため、深度カメラを使用することで、それぞれのオブジェクトを三次元でトラッキングすることができる。この結果、本発明の実施形態のコンピュータシステムは、二次元のピクセルデータと合わせてｚ値を利用して、強化された三次元のインタラクティブ環境をユーザのために作成することができる。深度分析の詳細については、２００３年５月２９日出願の米国特許出願第１０／４４８,６１４号明細書「リアルタイムの三次元インタラクティブ環境を提供するためのシステムおよび方法（System and Method for Providing a Real-time three dimensional interactive environment）」を参照されたい。同文献を参照によりここに援用する。
【００５９】
深度カメラは、一実施形態に従って使用され得るが、三次元空間におけるオブジェクトの位置ならびに座標の場所を識別するために必要とされるものと解釈されてはならない。例えば、図２に描いたシナリオでは、オブジェクト２１５とカメラ１０５間の距離は、最左ＬＥＤ２１２と最右ＬＥＤ２１２の距離を測定することにより、推測することができる。画像キャプチャ装置１０５によって生成される画像において、ＬＥＤ２１２それぞれの距離が近いほど、オブジェクト２１５はカメラ１０５から離れている。したがって、一般のデジタルカメラによって生成される二次元画像から、ｚ軸座標をかなり正確に推測することができる。
【００６０】
図３に戻ると、入力画像プロセッサ３０２は、キャプチャされた制御オブジェクトのビデオ画像（深度画像など）を信号に変換し、この信号が出力画像プロセッサに送られる。一実施形態では、入力画像プロセッサ３０２は、キャプチャされたビデオ画像の背景から、深度情報によって制御オブジェクトを分離し、制御オブジェクトの位置および／または移動に応じた出力信号を発生させるようにプログラムされる。出力画像プロセッサ３０４は、入力画像プロセッサ３０２から受け取った信号に応じて、ビデオ表示装置３０６に表示したオブジェクトの並進移動および／または回転移動を変更するようにプログラムされうる。
【００６１】
本発明のこれらの態様やその他の態様は、ソフトウェア命令を実行する１つ以上のプロセッサによって実装され得る。本発明の一実施形態によれば、１つのプロセッサが入力画像処理と出力画像処理の両方を実行する。しかし、図に示すように、説明を容易にするために、オペレーション処理が、入力画像プロセッサ３０２と出力画像プロセッサ３０４に分けられるものとして説明する。本発明が、特定のプロセッサの構成（複数プロセッサなど）に限定されると解釈すべきではないことを留意すべきである。図３の複数の処理ブロックは、説明の便宜上、示したに過ぎない。
【００６２】
図４は、ソニー（登録商標）のプレイステーション３（登録商標）娯楽装置の全体的なシステムアーキテクチャを概略的に示す図である。システムユニット４００には、そのシステムユニットに接続可能な様々な周辺デバイスが提供されている。システムユニット４００は、セルプロセッサ４２８と、ラムバス（登録商標）ダイナミックランダムアクセスメモリ（ＸＤＲＡＭ）ユニット４２６と、専用ビデオランダムアクセスメモリ（ＶＲＡＭ）ユニット４３２を備えたリアリティシンセサイザグラフィックスユニット４３０と、Ｉ／Ｏブリッジ４３４とを有している。システムユニット４００はまた、ディスク４４０ａを読み取るためのブルーレイ（登録商標）ディスクＢＤ−ＲＯＭ（登録商標）光ディスク読取り装置４４０と、取外し可能スロットインハードディスクドライブ（ＨＤＤ）４３６とを有しており、それらにはＩ／Ｏブリッジ４３４を介してアクセスすることができる。オプションとして、システムユニット４００はまた、コンパクトフラッシュ(登録商標)メモリカード、メモリスティック（登録商標）メモリカードなどを読み取るためのメモリカード読取装置４３８を有しており、同様にＩ／Ｏブリッジ４３４を介してアクセスすることができる。
【００６３】
Ｉ／Ｏブリッジ４３４はまた、６個のユニバーサルシリアルバス（ＵＳＢ）２．０ポート４２４と、ギガビットイーサネット(登録商標)ポート４２２と、ＩＥＥＥ８０２．１１ｂ／ｇワイヤレスネットワーク（Ｗｉ−Ｆｉ）ポート４２０と、７つのブルートゥース接続をサポートできるブルートゥース（登録商標）ワイヤレスリンクポート４１８とに接続されている。
【００６４】
動作の際に、Ｉ／Ｏブリッジ４３４はすべてのワイヤレス、ＵＳＢそしてイーサネット（登録商標）のデータを扱うが、それには１つ以上のゲームコントローラ４０２からのデータが含まれる。例えば、ユーザがゲームをプレイしている場合、Ｉ／Ｏブリッジ４３４はブルートゥースリンクを介してゲームコントローラ４０２からデータを受信し、そのデータをセルプロセッサ４２８へと向け、セルプロセッサ４２８はそれに従ってゲームの現在状態を更新する。
【００６５】
ワイヤレスポート、ＵＳＢポート、そしてイーサネット（登録商標）ポートによって、ゲームコントローラ４０２のほかに他の周辺デバイスが接続できるが、そのような周辺デバイスとして、リモコン４０４、キーボード４０６、マウス４０８、ソニープレイステーションポータブル（登録商標）娯楽装置などのポータブル娯楽装置４１０、アイトイ（登録商標）ビデオカメラなどのビデオカメラ４１２、マイクヘッドセット４１４などがある。ある実施の形態では、イーサネット（登録商標）ポートによってプレイステーション３（登録商標）はコンピュータネットワークに接続できるようになる。コンピュータネットワークの一部として、プレイステーション３（登録商標）は、当該プレイステーション３（登録商標）が他のプレイステーション３（登録商標）装置または互換性のあるソフトウェアを実行する他のハードウェアとインタラクションすることを可能にするソフトウェアを実行することができる。ある実施の形態では、ネットワーク化したプレイステーション３（登録商標）デバイスは、複数のプレイステーション３（登録商標）サーバおよび／またはクライアントにわたって分散されたソフトウェアをまとめて処理することができる。これは、２００２年７月３１日に出願された米国特許出願第１０／２１１，０７５号"CONFIGURATION SWITCHING DYNAMICALLY CHANGING BETWEEN NETWORK COMMUNICATION ARCHITECTURES"(代理人整理番号SONYP055)に記載されている。
【００６６】
従って、そのような周辺デバイスは、原理的には、システムユニット４００に無線で接続できる。例えば、ポータブル娯楽装置４１０はＷｉ−Ｆｉアドホック接続により通信することができ、マイクヘッドセット４１４はブルートゥースリンクによって通信することができる。
【００６７】
これらのインタフェースが設けられていることは、プレイステーション３（登録商標）装置が、ディジタルビデオレコーダ（ＤＶＲ）、セットトップボックス、ディジタルカメラ、ポータブルメディアプレイヤー、ボイスオーバーＩＰ電話、携帯電話、プリンタ、スキャナなどの他の周辺デバイスにも対応できる可能性があることを意味する。それに加えて、ＵＳＢポート４２４を介してレガシーメモリカード読取装置４１６をシステムユニットに接続し得るので、プレイステーション（登録商標）あるいはプレイステーション２（登録商標）装置によって使用される種類のメモリカード４４８の読み取りが可能になる。
【００６８】
本実施形態では、ゲームコントローラ４０２は、ブルートゥースリンクによってシステムユニット４００と無線通信を行なうことができる。しかし、その代わりとして、ゲームコントローラ４０２をＵＳＢポートに接続してもよく、それによればゲームコントローラ４０２のバッテリを充電する電源を供給できる。１個以上のアナログジョイスティックや従来のコントロールボタンに加えて、ゲームコントローラは、各軸での平行移動および回転に対応する６自由度の動きを感知できる。その結果、従来のボタンあるいはジョイスティックによるコマンドに加えあるいは替えて、ゲームコントローラのユーザによるジェスチャーおよび動作をゲームに対する入力に変換することができる。オプションとして、プレイステーションポータブル装置などワイヤレスで使用可能な他の周辺デバイスをコントローラとして使用することができる。プレイステーション（登録商標）ポータブル装置の場合、付加的なゲーム情報あるいは制御情報（例えば、制御命令あるいはゲームオーバーまでリトライできる数）を装置の画面上に提供することができる。他の代替的あるいは補助的なコントロール装置を用いることもでき、例えば、ダンスマット（図示されていない）、ライトガン（図示されていない）、ステアリングホイールとペダル（図示されていない）、あるいは迅速応答クイズゲーム用の１個あるいは数個の大きなボタンなどのオーダーメイドのコントローラなどを用いることもできる。
【００６９】
リモコン４０４もブルートゥースリンクによってシステムユニット４００との無線通信を行なうことができる。リモコン４０４は、ブルーレイディスクＢＤ−ＲＯＭ読取り装置４４０の操作およびディスクコンテンツの操作に適切なコントロールを有している。
【００７０】
ブルーレイディスクＢＤ−ＲＯＭ読取り装置４４０は、従来の記録済みのあるいは追記型のＣＤならびにいわゆるスーパーオーディオＣＤに加えて、プレイステーションおよびプレイステーション２装置に適合したＣＤ−ＲＯＭの読み取りを行なうことができる。読取り装置４４０はまた、従来の記録済みのあるいは追記型のＤＶＤに加えて、プレイステーション２およびプレイステーション３装置に適合したＤＶＤ−ＲＯＭの読み取りを行なうこともできる。更に、読取り装置４４０は、従来の記録済みのあるいは追記型のブルーレイディスクに加えて、プレイステーション３に適合したＢＤ−ＲＯＭの読み取りを行なうことができる。
【００７１】
システムユニット４００は、表示画面４４４および１以上のスピーカ４４６を有するモニタやテレビなどのディスプレイ／サウンド出力デバイス４４２にオーディオコネクタおよびビデオコネクタを介してオーディオおよびビデオを提供することができる。それらのオーディオおよびビデオは、プレイステーション３装置がリアリティシンセサイザグラフィックスユニット４３０によって生成あるいは復号したものである。オーディオコネクタ４５０は従来のアナログならびにディジタル出力を含むことができ、他方、ビデオコネクタ４５２はコンポーネントビデオ、Ｓ−ビデオ、複合ビデオ、１以上の高精細度マルチメディアインタフェース（ＨＤＭＩ）出力を様々に含むことができる。その結果、ビデオ出力は、ＰＡＬ方式あるいはＮＴＳＣ方式、あるいは７２０ｐ、１０８０ｉ、１０８０ｐでの高精細度のフォーマットとすることができる。
【００７２】
オーディオ処理（生成、復号など）はセルプロセッサ４２８によって実行される。プレイステーション３装置のオペレーティングシステムはドルビー（登録商標）５．１サラウンドサウンド、ドルビー（登録商標）シアターサラウンド（ＤＴＳ）、およびブルーレイ（登録商標）ディスクからの７．１サラウンドサウンドの復号をサポートしている。
【００７３】
本実施形態では、ビデオカメラ４１２は１個の電荷結合素子（ＣＣＤ）と、ＬＥＤインジケータと、ハードウェアベースのリアルタイムデータ圧縮符号化装置とを有しているので、圧縮されたビデオデータを、画像内ベースのＭＰＥＧ（ｍｏｔｉｏｎ  ｐｉｃｔｕｒｅ  ｅｘｐｅｒｔ  ｇｒｏｕｐ）規格など、システムユニット４００による復号に適したフォーマットで送信することができる。カメラのＬＥＤインジケータはシステムユニット４００からの適切な制御データに応じて光を照らすようにされており、例えば、照明条件が悪いことなどを知らせる。ビデオカメラ４１２の実施形態は、ＵＳＢ、ブルートゥース、あるいはＷｉ−Ｆｉ通信ポートを介してなど、様々な仕方でシステムユニット４００に接続できる。ビデオカメラの実施形態は、関連したマイクを含むことができ、オーディオデータを送信することもできる。ビデオカメラの実施形態では、ＣＣＤの解像度は高精細ビデオキャプチャに適したものとすることができる。使用時に、ビデオカメラによりキャプチャされた画像をゲーム内に組み込んだり、ゲームを制御する入力として解釈したりすることができる。
【００７４】
一般に、システムユニット４００の通信ポートの１つを介してビデオカメラやリモコンなどの周辺デバイスとのデータ通信が成功裏に実現されるためには、デバイスドライバなどの適切なソフトウェアが提供されなければならない。デバイスドライバ技術は良く知られているので、ここでは詳細に説明しないが、上記本実施形態においてデバイスドライバあるいは同様のソフトウェアインタフェースが必要であることは当業者には既知であろう。
【００７５】
次に図５を参照すると、セルプロセッサ４２８のアーキテクチャは、４つの基本構成要素、すなわち、メモリコントローラ５６０およびデュアルバスインタフェースコントローラ５７０Ａ，５７０Ｂを有する外部入出力構造と、パワープロセシングエレメント（ＰＰＥ）５５０として言及されるメインプロセッサと、シナジスティックプロセシングエレメント（ＳＰＥ）５１０Ａ−５１０Ｈとして言及される８個のコプロセッサと、エレメントインターコネクトバス５８０として言及され、前記構成要素を接続する循環データバスとを有している。セルプロセッサの全体としての浮動小数点演算性能は２１８ＧＦＬＯＰＳであり、これに比較してプレイステーション２装置のエモーションエンジンは６．２ＧＦＬＯＰＳである。
【００７６】
パワープロセシングエレメント（ＰＰＥ）５５０は、３．２ＧＨｚの内部クロックで動作する両方向同時マルチスレッディングパワー１４７０対応パワーＰＣコア（ＰＰＵ）５５５をベースにしたものである。ＰＰＥ５５０は、５１２ｋＢの二次（Ｌ２）キャッシュと３２ｋＢの一次（Ｌ１）キャッシュとを有している。ＰＰＥ５５０は、クロックサイクル毎に単精度演算を８回実行でき、言い換えれば、３．２ＧＨｚでは２５．６ＧＦＬＯＰＳとなる。ＰＰＥ５５０の主な役割はシナジスティックプロセシングエレメント５１０Ａ−５１０Ｈに対するコントローラとして機能することであり、シナジスティックプロセシングエレメント５１０Ａ−５１０Ｈが計算の作業負荷の大部分を扱う。動作の際に、ＰＰＥ５５０はジョブ待ち行列を保持し、シナジスティックプロセシングエレメント５１０Ａ−５１０Ｈのためのジョブをスケジュールし、その進展をモニタする。その結果、シナジスティックプロセシングエレメント５１０Ａ−５１０Ｈの各々はカーネルを実行するが、カーネルの役割はジョブをフェッチし、実行し、ＰＰＥ５５０と同期することである。
【００７７】
各シナジスティックプロセシングエレメント（ＳＰＥ）５１０Ａ−５１０Ｈは、それぞれのシナジスティックプロセシングユニット（ＳＰＵ）５２０Ａ−５２０Ｈと、それぞれのメモリフローコントローラ（ＭＦＣ）５４０Ａ−５４０Ｈとを有しており、各メモリフローコントローラＭＦＣの方は、それぞれのダイナミックメモリアクセスコントローラ（ＤＭＡＣ）５４２Ａ−５４２Ｈと、それぞれのメモリマネジメントユニット（ＭＭＵ）５４４Ａ−５４４Ｈと、バスインタフェース（図示されていない）とを有している。各ＳＰＵ’５２０Ａ−５２０Ｈは、３．２ＧＨｚのクロックで駆動されるＲＩＳＣプロセッサであり、２５６ｋＢのローカルＲＡＭ５３０Ａ−５３０Ｈを有しているが、そのローカルＲＡＭは原理的には４ＧＢまで拡張可能である。各ＳＰＥは、理論的に２５．６ＧＦＬＯＰＳの単精度演算性能を実現できる。ＳＰＵは、単一クロックサイクルで、４つの単精度浮動小数点数、あるいは４つの３２ビット数、あるいは８つの１６ビット整数の演算ができる。同じクロックサイクルで、ＳＰＵはメモリオペレーションも実行できる。ＳＰＵ５２０Ａ−５２０ＨはシステムメモリＸＤＲＡＭ１５００に直接アクセスすることはない。ＳＰＵ５２０Ａ−５２０Ｈにより作成された６４ビットアドレスはＭＦＣ５４０Ａ−５４０Ｈに引き渡され、ＭＦＣ５４０Ａ−５４０ＨがそのＤＭＡコントローラ５４２Ａ−５４２Ｈに対してエレメントインターコネクトバス５８０ならびにメモリコントローラ５６０を介してメモリにアクセスするように命令する。
【００７８】
エレメントインターコネクトバス（ＥＩＢ）５８０はセルプロセッサ４２８内の論理的に循環する通信バスであり、前述のプロセッサエレメント、即ち、ＰＰＥ５５０と、メモリコントローラ５６０と、デュアルバスインタフェース５７０Ａ，５７０Ｂと、８個のＳＰＥ５１０Ａ−５１０Ｈとを、すなわち全部で１２の関与エレメントを、接続している。関与エレメントは毎クロックサイクル８バイトの速度でバスに対して同時に読み書きすることができる。各ＳＰＥ５１０Ａ−５１０Ｈは、長い読み出しあるいは書き込みシーケンスをスケジュールするために、先に述べたようにＤＭＡＣ５４２Ａ−５４２Ｈを有している。ＥＩＢは４つのチャネルを有しており、２つずつ時計回りと反時計回りの方向である。従って、１２の関与エレメントに関して、任意の２つの関与エレメント間の最長のステップワイズデータフローは適切な方向に６ステップである。従って、１２スロットに対する理論的にピークの瞬時ＥＩＢ帯域幅は毎クロック９６Ｂ（バイト）であり、それは関与エレメント間のアービトレーションによってフルに利用した場合である。これは、３．２ＧＨｚのクロック速度の場合の理論的ピーク帯域幅３０７．２ＧＢ／ｓ（ギガバイト／秒）に等しい。
【００７９】
メモリコントローラ５６０は、ラムバス社（Ｒａｍｂｕｓ  Ｉｎｃｏｒｐｏｒａｔｅｄ）により開発されたＸＤＲＡＭインタフェース５６２を有している。メモリコントローラは、ラムバスＸＤＲＡＭ４２６に対して理論的ピーク帯域幅２５．６ＧＢ／ｓでインタフェース接続する。
【００８０】
デュアルバスインタフェース５７０Ａ，Ｂは、ラムバスＦｌｅｘＩＯ（登録商標）システムインタフェース５７２Ａ，Ｂを有している。インタフェースは１２チャネルに組織され、各チャネル８ビット幅であり、５つの経路はインバウンドで、７つの経路はアウトバウンドである。これによって、コントローラ１７０Ａを介してセルプロセッサとＩ／Ｏブリッジ７００との間に、またコントローラ１７０Ｂを介してリアリティシミュレータグラフィックスユニット２００との間に、６２．４ＧＢ／ｓ（アウトバウンド３６．４ＧＢ／ｓ、インバウンド２６ＧＢ／ｓ）の理論的ピーク帯域幅が提供される。
【００８１】
セルプロセッサ４２８によりリアリティシミュレータグラフィックスユニット４３０に送信されるデータは、通常、ディスプレイリストから成っており、ディスプレイリストは頂点を描画するコマンド、テクスチャをポリゴンに適用するコマンド、照明条件を指定するコマンドなどのシーケンスである。
【００８２】
実施の形態は、現実世界のユーザをよりよく特定し、アバタまたはシーンのアクティビティを指示するために深さデータを取得することを含む。オブジェクトは、人がもっている何かであってもよく、人の手であってもよい。この説明書において、「深さカメラ」および「３次元カメラ」という用語は、２次元ピクセル情報とともに距離または深さ情報を取得することができるカメラをいう。たとえば、深さカメラは、制御された赤外線光を利用して距離情報を取得してもよい。別の例示的な深さカメラは、二つの標準的なカメラを用いて距離情報を三角測量するステレオカメラペアである。同様に、「深さ検出デバイス」という用語は、２次元ピクセル情報とともに距離情報を取得することができる任意のデバイスをいう。
【００８３】
３次元イメージの最近の進歩によって扉が開かれ、リアルタイムのインタラクティブコンピュータアニメーションにおける可能性が増大した。特に新しい「深さカメラ」は、通常の２次元ビデオイメージに付け加えて３次元ビデオイメージを取得しマッピングする能力を提供する。新しい深さカメラを用いることで、本発明の実施の形態によって、他のオブジェクトの背後を含めてビデオシーンの中にいろいろな位置に、コンピュータ生成されたオブジェクトをリアルタイムで配置することが可能になる。
【００８４】
さらに、本発明の実施の形態は、ユーザに対してリアルタイムのインタラクティブなゲーム体験を提供する。たとえば、ユーザはリアルタイムでいろいろなコンピュータ生成されたオブジェクトと相互作用することができる。さらに、ビデオシーンをリアルタイムで変更して、ユーザのゲーム体験を強化することができる。たとえば、コンピュータ生成されたコスチュームをユーザの服に挿入したり、コンピュータ生成された光源を用いてビデオシーン内に仮想的な影を投影することができる。このように、本発明の実施の形態と深さカメラを用いて、ユーザは自分のリビングルーム内でインタラクティブなゲーム環境を体験することができる。通常のカメラと同様、深さカメラは、ビデオ画像を構成する複数のピクセルに対する２次元データを取得する。これらの値はピクセルに対するカラー値であり、一般的には各ピクセルのＲＧＢ値である。この方法では、カメラによって取得されたオブジェクトはモニター上に２次元オブジェクトとして現れる。
【００８５】
本発明の実施の形態はまた、分散された画像処理構成を想定する。たとえば、本発明は、ＣＰＵまたはＣＰＵと他のエレメントのような、１または２の位置で実行される取得画像およびディスプレイ画像の処理に限定されない。たとえば、入力画像の処理は、処理を実行できる関連するＣＰＵ、プロセッサまたはデバイスにおいて容易に実行できる。特に画像処理のすべては相互接続されたシステムを通じて分散させることができる。このように、本発明は、特定の画像処理ハードウェア回路および／またはソフトウェアに限定されない。ここに述べる実施の形態はまた、一般的なハードウェア回路および／またはソフトウェアの特定の組み合わせに限定されるものではなく、また、処理コンポーネントによって実行される命令群の特定の情報源に限定されるものでもない。
【００８６】
上記の実施形態を考慮に入れて、本発明が、コンピュータシステムに記憶されたデータを使用する各種のコンピュータ実装されたオペレーションを使用してもよい点を理解すべきである。これらのオペレーションは、物理量の物理的操作を必要とするオペレーションを含む。この物理量は通常、記憶、転送、結合、比較などの操作が可能な電気信号または磁気信号の形を取るが、必ずしもこれらに限定されない。更に、実行される操作は、生成、特定、決定または比較などと呼ばれることが多い。
【００８７】
上述の発明は、携帯式デバイス、マイクロプロセッサシステム、マイクロプロセッサベースまたはプログラマブル家庭用電気製品、ミニコンピュータ、メインフレームコンピュータなど、他のコンピュータシステムの構成によって実施されてもよい。本発明は、分散コンピューティング環境で実施されてもよく、このような環境では、ネットワークを介してリンクされる遠隔処理デバイスによってタスクが実行される。
【００８８】
図６は、本発明の一実施形態による、ユーザによるユーザ入力デバイスの操作中に、ユーザ入力デバイスに対応するピクセル群をトラッキングして判別するための機能ブロックを示すブロック図である。ブロックが表している諸機能は、図４のシステムユニット４００のセルプロセッサ４２８によって実行されるソフトウェアによって実装される点を理解されたい。更に、図６のブロックが表している機能の全てが、各実施形態で使用されるとは限らない。
【００８９】
最初に、カメラから入力されたピクセルデータが、無線、ＵＳＢまたはイーサネット（登録商標）インタフェースを介してシステムユニット４００に送られ、これにより、以下に記載するプロセスがそこで実行される。まず、画像の各ピクセルが、例えばラスタベースでサンプリングされると、色分離処理ステップＳ２０１が実行される。これにより、各ピクセルの色が決定されて、画像が、色の異なるさまざまな二次元部分に分割される。次に、実施形態によっては、色遷移定位ステップＳ２０３が実行される。これにより、色の異なる部分が隣接している領域がより詳細に決定されて、はっきりした色の遷移が発生する画像の位置が特定される。次に、幾何学処理Ｓ２０５のステップが実行される。このステップでは、実施形態に応じて、エッジ検出プロセスまたは面積の統計値（area statistics：ＡＳ）の計算の実行が行われて、対象のオブジェクトのエッジに相当する線、曲線および／または多角形が代数的または幾何学的に定義される。
【００９０】
ステップＳ２０７で、アルゴリズムを用いてオブジェクトの三次元の位置および姿勢が計算される。このアルゴリズムについては、本発明の好ましい実施形態に関して後述する。質の向上のため、三次元の位置および姿勢のデータに対して、カルマンフィルタリング処理ステップＳ２０９が実行される。この処理を実行するのは、所定の時点においてオブジェクトが存在する位置を概算することで、発生することがあり得ないであろうことから正しいデータ群から外れていると考えられる、誤った測定値を除去するためである。カルマンフィルタリングを実行するもう１つの理由は、カメラ１０５は画像を３０Ｈｚで生成するが、一般的なディスプレイは６０Ｈｚで動作するため、カルマンフィルタリングによって、ゲームプログラムの動作の制御に使用するデータの不足分を埋めるためである。カルマンフィルタリングによる離散データのスムージングは、コンピュータビジョンの分野では公知であり、ここで詳述しない。
【００９１】
図７は、オブジェクト７０５の移動を画像キャプチャ装置１０５によってとらえられる空間体積７０２に対応づける例示的画像処理システム７００の概略的ブロック図を示す。この例では、オブジェクト７０５が三次元空間７０２で、ｘ１の距離を移動すると、画像処理システム７００は、オブジェクト７０５のキャプチャしたビデオ画像を解釈し、オブジェクト７０５の移動を識別し、その後、対応するアクションをディスプレイ画面１１０に生成する。
【００９２】
具体的には、画像キャプチャ装置１０５は、当技術分野では周知のように、レンズを通過した後にセンサに入射する、画像を形成した光を表す画像データを生成するデジタル画像センサを含む。さらに、画像キャプチャ装置１０５は、光によって形成される画像を表すアナログ信号を生成するアナログビデオカメラを備えるようにしてもよい。後者の場合、アナログ信号は、画像をデジタル表現に変換し、その後、認識装置７１０による処理が行われる。三次元空間７０２の連続する二次元画像を表す画像データは、認識装置７１０に送られる。一実施形態では、認識装置７１０は、図６に関連して上述したように、オブジェクト７０５の識別のために様々な処理ステップを実行する。オブジェクト７０５の位置は、マッパ７１２に送られる。例えば、三次元空間７０２でのオブジェクト７０５の絶対座標が計算され、マッパ７１２に送信される。ｘ軸方向の座標及びｙ軸方向の座標は、各画像に表示されたオブジェクトの位置から決定することができる。オブジェクトのｚ軸方向の座標は、オブジェクトの寸法から推測できる。つまり、オブジェクト７０５が画像キャプチャ装置１０５に近いほど、オブジェクトが画像に大きく表示される。したがって、オブジェクトが画像に表示されると、オブジェクトの直径などの寸法は、画像キャプチャ装置１０５からの距離、即ちｚ軸座標、を求めるように使用される。
【００９３】
位置情報に加えて、認識装置７１０は、オブジェクト７０５から受信したコマンドを識別する。コマンドは、オブジェクト７０５の伝送／変形、音声ならびに発光などから解釈される。これは、たとえば、２００２年７月２７日に出願された米国特許出願第１０／２０７，６７７号"MAN-MACHINE INTERFACE USING A DEFORMABLE DEVICE"、２００３年８月２７日に出願された米国特許出願第１０／６５０，４０９号"AUDIO INPUT SYSTEM"、および２００４年１月１６日に出願された米国特許出願第１０／７５９，７８２号"METHOD AND APPARATUS FOR LIGHT INPUT DEVICE"に記載されており、上記の特許出願の全体を参照によりここに援用する。オブジェクト７０５から受信したコマンドは、認識装置によって解釈され、受信したコマンドに対応するデータは、アプリケーション７１４に伝達される。アプリケーション７１４はゲームアプリケーションあるいはリクエストされたその他のコンピュータアプリケーションであってもよい。あるいは、そうでなければ、画像キャプチャ装置１０５からユーザの入力を受け入れることができるものである。一実施形態では、マッパ７１２は、認識装置７１０から絶対座標を入力し、これらの座標をギアリング量によってスケーリングされている出力座標に対応づける。別の実施形態では、マッパ７１２は連続する座標情報を認識装置７１０から受信し、座標情報の変更をオブジェクト７０５のベクトル移動に変換する。例えば、オブジェクト７０５が、時間ｔ１から時間ｔ２の間にｘ１の距離を移動した場合、ベクトルｘ１,０,０が生成され、アプリケーション７１４に送信される。時間ｔ１からｔ２は、画像キャプチャ装置１０５により生成されるビデオの連続フレーム間の時間間隔であってもよい。マッパ７１２は、スケーリングアルゴリズムに従い、例えば、ベクトルにギアリング量を乗算することでベクトルをスケーリングしてもよい。別の実施形態では、各座標には、Ｇｘ、ＧｙならびにＧｚなどの対応するギアリング因子(gearing factor)を乗算する。したがって、ディスプレイ１１０に表示されるように、仮想オブジェクト７０５’の対応する移動は距離ｘ２であり、ｘ１ではない。
【００９４】
アプリケーション７１４は、認識装置７１０から受信したコマンド７１３に従ってギアリング量を変更するか、マッパ７１２にギアリングデータを送信し、ギアリング量を変更させるソフトウェアの通常のオペレーションに従ってギアリング量を変更する。ギアリングデータは、ユーザコマンド、各種イベント、またはアプリケーション７１４のオペレーションモードに応じてマッパ７１２に送信される。したがって、ギアリング量は、ユーザコマンドに応じてリアルタイムで変更されるか、ソフトウェアによって制御されてもよい。これにより、マッパ７１２は、オブジェクト７０５の動きの出力ベクトルをアプリケーション７１４に送信する。この出力は、空間７０２中のオブジェクト７０５の位置の変化ならびにギアリング量に対して変更される。一実施形態では、アプリケーション７１４はビデオゲームであり、出力ベクトルを対応するアクションに変換し、変換されたアクションがディスプレイ１１０に表示される。
【００９５】
図８は図７の画像処理システム７００の例示的アプリケーションを示す。コンピュータシステム１０２は、シーン８１０をとらえる画像キャプチャ装置１０５を備える。シーン８１０は、認識装置（図７）によって認識されるオブジェクト８０４を把持したユーザ８０２を含む。このアプリケーションプログラムは、この例ではチェッカーゲームであり、オブジェクト８０４からのコマンドを認識し、チェッカーボード８０１にチェッカー８０８を拾い上げるか落す。ユーザがオブジェクト８０５を画像キャプチャ装置１０５の前に移動させると、コンピュータ１０２はオブジェクト８０４の移動を識別するように画像を処理し、その移動をディスプレイ１１０の仮想オブジェクト８０５’の移動に変換する。仮想オブジェクト８０５’が現実のオブジェクト８０５に対して移動する距離は、ギアリング量８０６によって決まる。この例では、ギアリング量はディスプレイ１１０に「３」と表示される。一実施形態では、ギアリング量ユーザにより選択可能である。ギアリング量が大きければ、チェッカー８０５’がディスプレイ１１０で特定の距離を移動する、現実のオブジェクト８０５の移動は小さくてもよい。
【００９６】
図９および図１０は、本発明のある実施の形態に係る、ギアリング比をインタラクティブに変更するために使われる例示的なコントローラ９００を示す図である。コントローラ９００は、ギアリング比をインタラクティブに変更するために使うことのできる専用ボタン９０３を含む。現在のギアリング比に関して視覚的なフィードバックを与えるべく、ＬＥＤ９０４の集合をギアリング比に関連づけることができる。ある実施の形態では、専用ボタン９０３を最初に押すと、第１ギアリング比がアクティブにされ、一つのＬＥＤが点灯する。専用ボタン９０３を続けて押すとギアリング比が徐々に変化し、適当な数または適当な組み合わせのＬＥＤが点灯する。図９は３つのＬＥＤを示すが、これは異なるギアリング比の数を制限するように解釈すべきではない。また、専用ボタン９０３を押すことが、ギアリング比をインタラクティブに変更できるユーザ入力の唯一の形態であると解釈すべきではない。
【００９７】
他の実施の形態では、ギアリング比をインタラクティブに変更するために、専用ボタン９０３の代わりに代替入力を用いることができる。たとえば、コントローラ９００は、コントローラ９００の相対的な並進および回転運動を検出することのできる内部慣性センサを含んでもよい。別の実施の形態では、コントローラ９００は、ギアリング比をインタラクティブに変更するように構成可能ないろいろなボタンとジョイスティックを含む複数のインタフェースデバイスを有するインタフェース９０２を含む。ここに記載するコントローラは、ＷｉＦｉ、ブルートゥース（登録商標）、赤外線、音、光などの有線または無線技術を用いて、ゲーム機のようなコンピュータにユーザ入力を転送することができる。ある実施の形態では、コントローラ９００は、画像キャプチャ装置１０５（図１）と相互作用可能なＬＥＤ配列９０５をもつ。ＬＥＤ配列をいろいろなレイアウトで構成してもよい。たとえば、各ＬＥＤが仮想的な矩形または正方形のバインディングボックスの頂点に位置するような２×２のスタックで構成してもよい。画像キャプチャ装置が生成する画像平面にバインディングボックスが投影されたときにバインディングボックスの位置と変形を追跡することにより、変換と変形をビデオアナライザで解析し、コントローラの位置と姿勢の情報を読み解くことができる。
【００９８】
これらＬＥＤ９０５が矩形に構成されていることから、３つの軸上でのコントローラ９００の移動と、各軸を中心とした回転とが検出可能になる。図示しているのは４つのＬＥＤだけであるが、これは例示のみを目的としており、いずれの構成においてもＬＥＤは任意の個数とすることが可能である。コントローラ９００が前後にピッチ運動すると、上下のＬＥＤの距離が近づくが、左右のＬＥＤ間の距離は変わらない。同様に、コントローラが左右にヨー運動すると、左右のＬＥＤが接近して見えるが、上下のＬＥＤ間の距離は変わらない。コントローラのロール運動は、画像平面におけるＬＥＤの向きを特定することによって検出することができる。コントローラが、画像キャプチャ装置１０５の見通線に沿って画像キャプチャ装置１０５に近づくと、全てのＬＥＤが接近して見える。最後に、画像平面に沿ったコントローラの移動は、画像平面上のＬＥＤの位置を特定することによってトラッキングすることができ、これにより、ｘ軸およびｙ軸のそれぞれに沿った移動が特定できる。
【００９９】
さらに、コントローラ９００は、可聴音または超音波を発生させるスピーカ９１５を含む。スピーカ９１５は、インタラクティビティを強化する音響効果を生成するか、インターフェース９０２からのコマンドを、マイクロフォンあるいは伝達を受け入れる他の素子を有するコンピュータシステムに伝達する。
【０１００】
図１１は、図９、１０のコントローラ９００の例示的アプリケーションを示す。このアプリケーションでは、ドライビングシミュレーションはコントローラ９００の回転を仮想自動車のハンドルの回転と解釈する。ユーザ（図示せず）が矢印１１０５に示すようにコントローラ９００を回転させると、仮想ハンドル９００’はディスプレイ１１０で矢印１１０５’に示すように回転する。一実施形態では、ギアリング量は、コントローラ９００の回転のそれぞれの程度に対してハンドル９００’の回転量を決定する。別の実施形態では、ギアリング量は、図１２の例示的グラフ１２００に示すように、ソフトウェアにより制御される。
【０１０１】
図１２に示すように、ギアリング量はコントローラ９００の中心部、つまり、垂直方向からの距離に対して変更される。これにより、コントローラ９００を９０度回転させるだけで、仮想ハンドル９００’を最大５４０度回転させることができる。０度（中心部）に近い位置でギアリング量を低くしておくことで、通常は著しいハンドル回転を必要としない高速ドライビングに対して、高い制御性を保つことができる。コントローラ９００が中心部から離れて回転されると、グラフ１２００に示しているようにギアリング量は増加し、通常、低速時に求められる急カーブに対応できるようになる。別の実施の形態では、ユーザは専用ギアリングボタン９０３を押すことによってギアリング比を選択的に変更することができる。
【０１０２】
図１３は、本発明のある実施の形態に係る、専用のギアリングボタン９０３を押すことによって選択される時間の関数としてギアリングの変化を説明する別の例示的なグラフを示す図である。ドライビングシミュレーションに適用した場合、時間ｔ０でユーザは第１ギアリング比を選択する。ｔ１とｔ２の間、ユーザは、ゲームプレイが感度の上げ下げを要求するのに合わせて、選択的にギアリング比を上げ下げできる。同様にｔ２とｔ４の間、ユーザは異なるギアリング比を選択できる。ｔ４とｔ５の間、ユーザはスピンしてコントロールを失い、道路の反対方向に向いてしまい、車を回転させるために大きいギアリング比を必要とする。先の例はドライビングシミュレーションに特有のものであったが、これは限定的に解釈すべきではなく、ユーザが選択したギアリングはユーザ入力が要求される任意のユーザインタフェースに適用することができる。
【０１０３】
図１４は、ユーザインタラクションに応える画像処理システムの別の例示的アプリケーションを示す。この例では、ユーザ１４０２は、画像処理システムが入力オブジェクトと認識し得るおもちゃの野球バット１４０５をスイングすることにより、野球のシミュレーションとインタラクトする。このおもちゃの野球バットがスイングされると、ユーザおよび／またはソフトウェアはギアリング量を制御し、仮想野球バット１４０５’の速度や距離を操作する。一実施形態では、バットは、ゲームのプレイ中に押すことのできる多数のボタンを備えており、このボタンを押すことでギアリングを変更することができる。別の実施形態では、ユーザは、ギアリングレベルと組み合わせて事前に設定できるか、プログラムでき、バットのスイング時に適用されるようにする。
【０１０４】
図１５はそれぞれ別の時間ｔ１〜ｔ５において、スイングの長さに沿った例示的なギアリング量を描いたグラフ１５００を示す。このギアリング量は、バットをスイングする前にユーザにより設定されたものであるか、カメラ１０５がとらえたバットの位置に応じて、ゲームによって動的に設定されたものである。同様に、図１７には、ギアリングが所定の期間においてどのように変化し、特定の時間間隔において一定に保たれ、または漸進的に増加される様子が示されている。グラフ１７００においては、ギアリングは時間ｔ１〜ｔ３間にて高く設定されている。よって、バットのスイングは、ボールと接触したときによりパワフルなものになる。さらに、バットがボールと接触した後の時間ｔ３〜ｔ４においては、ギアリングは緩和される。一実施形態では、それぞれの時間は、ユーザによって予測されるか、コンピュータによって決定される。
【０１０５】
一例では、ユーザは何度かスイングをし、コンピュータがユーザの実際のスイング能力に対応するいくつものタイムスロット例を定める。次に、ユーザは、どの程度ゲームインタラクティビティに影響を及ぼしたいかに応じて、それぞれの時間間隔に対して特定のギアリングを独自に割当てることができる。ギアリングが設定されると、ユーザによるバット１６０５の移動がバット１６０５’（例えば、ゲームオブジェクト）の移動に対応付けられる。同様に、ギアリングは、別のアクション中にゲームによって事前に設定され、ユーザによってゲーム中に設定され、さらに、ゲームのプレイ中にリアルタイムで調整される。
【０１０６】
図１６は、ユーザインタラクションに反応する画像処理システムの別の例示的なアプリケーションを示す。この例では、ユーザ（図示せず）は、おもちゃのフットボール用ボールを使って投球動作をし、作動装置（アクチュエータ）を押してボールを放すようにすることで、フットボールのシミュレーションとインタラクトする。当然、おもちゃのフットボール用ボールではなくて、コントローラを使用してもよい。仮想プレーヤー１６０２は、ユーザインタラクションに反応して仮想のフットボール用ボールを操作する。一実施形態では、作動装置は、フットボールシミュレーションアプリケーションに送信されるコマンドとして、ＬＥＤに、画像処理システムによって認識される色を明るくするか変化させるようにする。ユーザは、ボールを放した後に、選択した受信側の動作などの、フィールド上でのある特定のアクションを制御することができる。一実施形態では、ボールを放すことで、アプリケーションがマッパ（図７）にギアリングデータを送り、ギアリング量を変更して、例えば、入力オブジェクトのより細かな移動や動作を区別することができる。
【０１０７】
図１７は、ボールの“放した”後のギアリング量の変化を示した例示的グラフ１７００を示す。グラフ１７００は単純なグラフとして図示されているが、ギアリングはゲームのオブジェクトに応じてどのようなプロファイルにもなり得ることを理解されたい。
【０１０８】
図１８は、本発明のある実施の形態に係る、ギアリングを含むビデオゲームのオペレーションを説明する例示的フローチャートを示す図である。フローチャートはオペレーション１８００で始まり、オペレーション１８０２に続き、ユーザ入力コントロールを受け取ることのできるゲームプログラムが特定される。オペレーション１８０４は、ゲーム開始時にユーザが入力コントロールパラメータを設定したいかどうかを決定する。オペレーション１８０６は、ユーザがゲームの入力コントロールパラメータを設定することを選んだ場合、設定可能なパラメータをもつ表示インタフェースを生成する。オペレーション１８０６の後、オペレーション１８０８はユーザ入力コントロールに変化があるかどうかを判定する。オペレーション１８０８においてユーザ入力コントロールに変化があった場合、オペレーション１８１０は入力ギアリングに変化があったかどうかを判定する。入力ギアリングへの変化を検出した後、オペレーション１８１４はギアリングをアクティブにし、手続きはオペレーション１８１２に続き、ゲームプログラムのインタラクティブなプレイが可能になる。オペレーション１８１２は、オペレーション１８０８またはオペレーション１８１０においてユーザ入力コントロールへの変化がなかった場合にも実行される。オペレーション１８１２を実行している間、オペレーション１８１６はユーザ入力の変化を調べる。適当なユーザ入力を受け取った後、オペレーション１８１６は手続きをオペレーション１８１４に進める。ある実施の形態において、オペレーション１８１６を開始するためのユーザ入力は、コントローラ上のボタンプッシュまたはボタンプッシュの組み合わせであってもよい。別の実施の形態では、ボタンプッシュのシーケンスまたはコントローラの特定方向への動きによって、オペレーション１８１６を開始することができる。
【０１０９】
図１９Ａは、本発明のある実施の形態に係る、ギアリングプロセスの起動に関わるさらなる詳細を説明する例示的フローチャートを示す図である。図１９Ａに示すオペレーションは図１８のオペレーション１８１４の一部として実行されることに留意する。図１８で議論し、説明したように、オペレーション１８１０またはオペレーション１８１６は、本発明のある実施の形態におけるオペレーション１８１４を開始することができる。オペレーション１９００はギアリングがアクティブにされたかどうかを判断する。ギアリングがアクティブにされなかった場合、手続きは図１８に示すようにオペレーション１８１２に進む。オペレーション１９００においてギアリングがアクティブにされる場合、手続きはギアリング比を適用するオペレーション１９０２に続く。手続きはオペレーション１９０４に進み、ギアリング比を変更する入力の受け取りを待つ。ギアリング比の変更を示す入力がないなら、手続きはオペレーション１９０６に進み、以前に適用されたギアリング比を使い続ける。オペレーション１９０４でギア比を変更する入力を受け取った場合、手続きはオペレーション１９０８に続き、ギアリング比が変更される。別のオペレーション１９１０において、ギアリング比を変更する入力を受け取ってもよい。オペレーション１９１０でギアリング比を変更する入力を受け取ると、手続きはオペレーション１９０２に戻ることができる。さもなければ、手続きはオペレーション１９０６に戻り、以前に適用されたギアリング比を使い続ける。
【０１１０】
図１９Ｂは、本発明のある実施の形態に係る、ギアリング比の変更に関わるさらなる詳細を説明する例示的フローチャートを示す図である。図１９Ｂに示すオペレーションは図１９Ａのオペレーション１９０８の一部として実行されることに留意する。オペレーション１９１０は、ギアリング比の変更を開始したユーザ入力に関連づけられたギアリング比を調べる。ある実施の形態では、ユーザはいろいろなギアリング比を設定して、ストレージメモリに格納することができる。ストレージメモリは、ゲーム機によってアクセスできる固定および／または取り外し可能な不揮発性コンピュータ読み取り可能媒体であってもよい。ユーザは、異なる入力がギアリング比の不連続変化を設定するようにマッピングすることができるため、オペレーション１９１０は、ストレージメモリにおいてユーザ入力に関連づけられたギアリング比を調べる。オペレーション１９１２において、ストレージメモリにおいて調べたギアリング比をアクティブなメモリにコピーする。アクティブメモリは一般的には、ゲームプログラムの実行中にアクティブに利用されるメモリと考えることができる。ある実施の形態では、アクティブなメモリロケーションは、ＣＰＵに関連づけられたメモリキャッシュであってもよい。他の実施の形態では、アクティブメモリはシステムメモリであってもよい。オペレーション１９１４において、アクティブメモリに格納されたギアリング比がゲームプログラム入力に適用され、オペレーション１９１６はそのギアリング比でゲームプログラムを実行する。
【０１１１】
図２０Ａは、本発明のある実施の形態に係る、いろいろなユーザ入力にもとづいたギアリング比の変化を説明する図である。垂直軸２０００はいろいろなギアリング比をもつ。水平軸２００２は、ギアリング比を変えるために必要な漸進的な入力をリストする。図２０に示す入力とギアリング比は限定する趣旨ではないことに留意する。ゲームコントローラはユーザ入力を受け付ける複数の方法をもち、ゲームコントローラ上に現在実装された方法を用いて入力を受け付けることだけに限定しない。図２０に示すように、ユーザが最初にＲ１を押し下げると、１対１のギアリング比を開始することができる。Ｒ１ボタンを２度目にアクティブにすると、ギアリングを１対２に変更することができる。同様に、Ｒ１を続けて３度目、４度目にアクティブにすると、それぞれ１対３、１対４のギアリング比を開始することができる。ゲーム機コントローラが専用のギアリングボタンをもつ別の実施の形態では、ギアリングボタンを漸進的にクリックすると、ギアリング比を変えることができる。他の実施の形態では、異なるボタン、ボタンの組み合わせ、コントローラの動きを用いて同じギアリング変化を達成することができる。たとえば、ゲームコントローラがコントローラの動きを検出することができる実施の形態では、コントローラを特定の方向に傾けることにより、ギアリング比の変化をもたらすことができる。別の実施の形態では、特定の方向にコントローラを振ることを用いてギアリング比を変更することもできる。
【０１１２】
図２０Ｂは、本発明のある実施の形態に係る、動きを感知できるコントローラへのユーザ入力にもとづいて異なるギアリング比がキャラクタの反応に与える影響を説明する図である。グループ２００４〜２０１０はそれぞれ、コントローラの動き、選択されたギアリング比、およびキャラクタの反応を図示する。グループ２００４では、ギアリング比２００４''が適用されたコントローラの動き２００４'の結果、特定の速度でキャラクタは自分の頭２００４'''を回転させる。グループ２００６では、同じコントローラの動き２００４'がコントローラに適用されるが、ギアリング比２００６''が適用される。例示されるように、適用されたギアリング比２００６''は適用されたギアリング比２００４''よりも大きく、キャラクタは自分の頭２００６'''をより速い速度で回転させる結果となる。グループ２００８および２０１０は、キャラクタの頭の傾斜に影響を与えるコントローラの回転について同様の概念を説明する。グループ２００８および２０１０の両方において、コントローラの動き２００８'は同じであるが、ギアリング比２００８''が低いためにキャラクタの反応２００８'''はキャラクタの反応２０１０'''よりも遅い。
【０１１３】
ゲームプレイヤが、いろいろなギアリング比を経ていくのではなく、ギアリング比をデフォルトの設定に変更することを望むときは、特定のボタンまたはボタンの組み合わせを用いてデフォルトレベルにギアリング比を戻すことが可能である。図２０に示すように、Ｒ１とＬ１を同時に押すことにより、ギアリング比を１対１に戻すことができる。同様に、異なるボタンの組み合わせや異なるボタンを用いて、ギアリング比を所定のレベルに設定することができる。たとえば、図２０に示すように、Ｒ１とＲ２ボタンを同時に押すことにより、ギアリング比を１対３に設定することができる。ギア比を次第にあるいは徐々に変えることができることにより、ユーザはいろいろなギアリング比をサンプルすることができる。ボタンの組み合わせまたはコントローラの特定の動きを用いてギアリング比をあらかじめ設定された値に急に変更できることにより、ユーザはゲームイベントにもとづいてギアリング比を急に切り替えることができる。
【０１１４】
ギアリング比を急に切り替えることが望ましい例は、ファーストパーソン（一人称）シューティングゲームに見られる。多くのファーストパーソンシューティングゲームに見られる一つの特徴は、長距離でターゲットを狙撃するために望遠鏡をもった武器を用いることである。望遠ライフル銃の使用を正確にシミュレートする努力において、ユーザが入力した小さな動きはゲーム内では大きな動きに増幅される。したがって、プレイヤは、１対１よりも小さい比率でユーザ入力にギアを入れるギアリング比を開始することが有利であるとわかることがある。１対１よりも小さい比率を用いることで、通常は大きな動きに変換される入力をより小さな動きに変換することができる。しかしながら、１対１よりも小さい比率は、ゲーム内のユーザのキャラクタがライフルの望遠鏡を通して見ていないときは、好ましいものではない。したがって、望遠付き武器の使用のためにギアリング比を１対１または１対１よりも大きい比から１対１よりも低い比に急に変えることができることにより、ゲームプレイの可能性とユーザのゲーム体験を大きく改善することができる。
【０１１５】
図２１は、本発明のある実施の形態に係る、ギアリング設定（コンフィグレーション）を開始する手続きを説明するフロー図である。この設定手続きはオペレーション２１００で開始する。オペレーション２１０２が次であり、ゲームのギアリングパラメータを特定するために使われる。手続きはオペレーション２１０４に進み、ゲームのギアリングパラメータが設定可能かどうかを決定する。手続きは、ゲームのギアリングパラメータが設定可能でないなら、オペレーション２１１０で終了する。さもなければ、オペレーション２１０６は、ギアリング設定トリガのアクティベーション（活性化）を待つ。オペレーション２１０８はギアリング設定トリガがアクティブにされたかどうかを決定する。ギアリング設定トリガがアクティブにされていない場合、手続きはオペレーション２１０６に戻る。ギアリング設定トリガがアクティブにされる場合、手続きはオペレーション２１１０に進み、ギアリング設定画面が表示される。ある実施の形態では、ギアリング設定画面は、ゲームコントローラを介して制御されるグラフィカルユーザインタフェースを用いて操作可能である。別の実施の形態では、ボイスコマンドを用いてギアリング設定を操作することができる。さらに別の実施の形態では、ボイスコマンドとグラフィカルユーザインタフェースを介したユーザ入力の組み合わせを用いることができる。ギアリング設定画面を表示した後、ギアリング設定のための手続きはオペレーション２１１２で終了する。
【０１１６】
図２２は、本発明のある実施の形態に係る、ビデオゲームのギアリング比を設定するための手続きを説明するフローチャートである。図２２に説明するように、この手続きは、図２１のオペレーション２１１０の完了によって開始される。オペレーション２２０２は、特定のゲーム用のギアリング設定ＧＵＩを表示する。オペレーション２２０４でユーザは設定すべきギアリングオプションを選択する。手続きはオペレーション２２０６に進み、設定すべきギアリングオプションがサブメニューの表示を要求するかどうかを決定する。表示すべきサブメニューがない場合、手続きはオペレーション２２１０に進み、ギアリングオプションが設定される。選択されたギアリングオプションを設定するためにサブメニューが要求される場合、オペレーション２２０８はサブメニューを表示する。もう一つのオペレーション２２１０において、サブメニュー内でギアリングオプションが設定される。ギアリングオプションの設定後、手続きはオペレーション２２１２に進み、ユーザがギアリングオプションの設定を終了したかどうかを決定する。オペレーション２２１４が実行され、ユーザはゲームプレイを続けるか、ゲームの別の面を設定することができる画面に戻る。ユーザがさらにギアリングオプションを設定したいなら、手続きはオペレーション２２０４に戻る。
【０１１７】
各種の実施形態では、強度値、コントローラのプレーヤー番号、コントローラを含む１つ以上の入力オブジェクトの姿勢および／または位置を決定するための上記の画像処理機能は、コンピュータシステムで実行中のプロセスで実行されてもよい。コンピューティングシステムは、本明細書では、アプリケーションプログラムと呼ばれ、ゲームアプリケーションであり得るメインプロセスを実行していてもよく、画像または音声処理から得られるデータを要求するか、このデータを受け取る。このようなデータには、コントローラのプレーヤ番号、コントローラを含む１つ以上の入力オブジェクトの姿勢および／または位置、コントローラの操作などが含まれる。各種実施形態では、画像および／または音声処理機能を実行しているプロセスは、ビデオカメラまたはビデオ／音声監視装置のドライバであってもよく、このドライバは、一般に知られているように実装に特有であり、当業界で知られ、理解されているように、任意のタイプのプロセス間通信を介して、メインプロセスにデータを提供する。画像または音声処理を実行するプロセスは、ゲームソフトウェアや他のアプリケーションプログラムを実行しているものと同じプロセッサで実行されても、別のプロセッサで実行されてもよい。さらに、画像または音声処理とゲーム機能に対して、例えば、プロシージャコールを使用して、同じプロセス内で共通のプロセスとしてもよい。このため、本明細書において、入力ベクトルやほかの情報が「『プログラムに』提供される」と言及することがあるが、本発明には、１つのプロセスが、画像処理機能とゲーム機能の両方を実行することができるように、プロシージャコールやその他のソフトウェア機能を使用して、このようなデータをプロセスのルーチンに提供することも含まれていることを理解すべきである。また、これら機能を異なるプロセスに分割して、共通のプロセッサコアまたは複数のプロセッサコアで実行される１つ以上のプロセスが、本明細書に記載したような画像および／または音声処理を実行して、別のプロセスがゲーム機能を実行してもよい。
【０１１８】
本発明は、ここに記載したように使用されても、ほかのユーザ入力機構、音の角度方向をトラッキングする他の機構、および／またはオブジェクトの位置を能動的または受動的にトラッキングする機構、機械的視野を使用する機構、これらの組み合わせと共に使用されてもよい。トラッキングされるオブジェクトは、システムへのフィードバックを操作する補助的制御部またはボタンを備えていてもよい。このようなフィードバックには、光源からの発光、音歪み手段または他の適切な送信器および変調器のほかに、ボタン、圧力パッドなどがあるが、これらに限定されない。これらは、その伝達または変調、符号化状態および／またはトラッキング対象の装置との間でやり取りされるコマンドに影響しうる。
【０１１９】
本発明は、ゲームコンソール、ゲームコンピュータまたはコンピューティング装置、携帯式デバイス、マイクロプロセッサシステム、マイクロプロセッサベースのプログラム可能な家庭用電気製品、ミニコンピュータ、メインフレームコンピュータなど、他のコンピュータシステムの構成によって実施されてもよい。また、本発明は、分散コンピューティング環境で実施されてもよく、このような環境では、ネットワークを介してリンクされる遠隔処理デバイスによってタスクが実行される。例えば、オンラインのゲームシステムおよびソフトウェアが使用されてもよい。
【０１２０】
上記の実施形態を考慮に入れて、本発明が、コンピュータシステムに記憶されたデータを使用する、各種のコンピュータ実装操作を使用してもよい点を理解すべきである。これらの操作は、物理量の物理的操作を必要とする。この物理量は通常、記憶、転送、結合、比較などの操作が可能な電気信号または磁気信号の形を取るが、必ずしもこれらに限定されない。更に、実行される操作は、生成、特定、決定または比較などと呼ばれることが多い。
【０１２１】
本発明の一部を構成している、本明細書に記載した操作はいずれも、有用な機械的操作である。本発明は、これらの操作を実行するデバイスまたは装置にも関する。この装置は、上記に記載したキャリアネットワークなどの所望の目的のために特別に作製されたものであっても、あるいは汎用コンピュータであり、そのコンピュータに記憶されているコンピュータプログラムによって選択的に作動もしくは構成されてもよい。特に、各種の汎用の機械を、本明細書の教示に従って記述したコンピュータプログラムと併用してもよく、あるいは所望の操作を実行するために特化した機械を作製するほうが利便性が高いこともある。
【０１２２】
本発明は、また、コンピュータ可読媒体上のコンピュータ可読コードとして実施されてもよい。コンピュータ可読媒体は、コンピュータシステムによって後から読取ることができるデータを記憶できるデータ記憶装置であれば、どのようなものであってもよい。コンピュータ可読媒体の例には、ハードディスク、ネットワーク接続記憶装置（ＮＡＳ）、リードオンリーメモリ、ランダムアクセスメモリ、ＦＬＡＳＨベースメモリ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ、磁気テープおよび他の光学式データ記憶装置および非光学式データ記憶装置などがある。また、コンピュータ可読媒体は、コンピュータ可読コードが分散式に記憶されて、実行されるように、ネットワークに結合されたコンピュータシステムを介して分散されてもよい。
【０１２３】
さらに、ビデオゲームに関連してギアリングについて述べてきたが、コンピュータによって制御された環境であればどのような環境にもギアリングをかけることができることを理解すべきである。一例では、ギアリングは、情報のインタラクション、選択あるいは入力を可能にするコンピュータの入力デバイスに関連づけられる。様々な入力操作やインタラクティブ操作において、様々に異なるギアリングをかけることで、設定済みの制御設定を有する環境では通常みられない操作のさらなる程度が可能となる。したがって、本明細書に定義しているように、ギアリングの実施形態には広範囲にわたっての用途が与えられるべきである。
【０１２４】
ギアリングが決定されると、このギアリングをジェスチャにかけることができ、これがコンピュータプログラムに伝達される。上述のように、ジェスチャや入力デバイスのトラッキングは、画像分析、慣性分析あるいは可聴音分析によって実現することができる。ジェスチャの例としては、ボールなどのオブジェクトを投げる、バットやゴルフクラブなどを振る、手押しポンプを押す、ドアまたは窓を開閉する、ハンドルまたは他の車両コントロールを回す、格闘家がパンチなどを出す、研磨動作、ワックス掛けとワックスふき取り、家のペンキ塗り、振動、おしゃべり、ロール、フットボール投げ、野球の投球、ノブを回す動き、３Ｄ／２Ｄマウスの動き、スクロール、周知のプロファイルを持った動き、記録可能なあらゆる動き、あらゆるベクトルに沿った前後の動き、すなわち、空間内の任意の方向に沿ったタイヤの空気入れ、経路に沿った移動、正確な停止時間と開始時間を持った動き、ノイズフロア内やスプライン内などで記録、追跡および繰返し可能なユーザ操作に基づく任意の時刻、などがあるがこれらに限定されない。これらのジェスチャはそれぞれ、経路データから事前に記録し、時間基準のモデルとして記憶できる。このため、ギアリングは、ユーザまたはプログラムにより設定されたギアリングの程度に応じて、これらのジェスチャのうちのいずれか１つにかけることができる。上記に、本発明を明確に理解できるように多少詳細に記載したが、添付の特許請求の範囲内で変更例または変形例を実施できることは明らかである。
【０１２５】
したがって、本実施形態は例示的なものであり、制限するものではなく、本発明は本明細書に記載されている詳細な事項に限定されず、添付の特許請求の範囲およびその均等物の範囲内で変更されてもよい。
【図１】
0005439367.tif 000002
【図２】
0005439367.tif 000003
【図３】
0005439367.tif 000004
【図４】
0005439367.tif 000005
【図５】
0005439367.tif 000006
【図６】
0005439367.tif 000007
【図７】
0005439367.tif 000008
【図８】
0005439367.tif 000009
【図９】
0005439367.tif 000010
【図１０】
0005439367.tif 000011
【図１１】
0005439367.tif 000012
【図１２】
0005439367.tif 000013
【図１３】
0005439367.tif 000014
【図１４】
0005439367.tif 000015
【図１５】
0005439367.tif 000016
【図１６】
0005439367.tif 000017
【図１７】
0005439367.tif 000018
【図１８】
0005439367.tif 000019
【図１９Ａ】
0005439367.tif 000020
【図１９Ｂ】
0005439367.tif 000021
【図２０Ａ】
0005439367.tif 000022
【図２０Ｂ】
0005439367.tif 000023
【図２１】
0005439367.tif 000024
【図２２】
0005439367.tif 000025