(57)【特許請求の範囲】
【請求項１】
ゲームプログラムを格納するメモリと、
前記メモリのゲームプログラムにアクセスし、前記ゲームプログラムを実行して、ユーザとの相互作用にしたがってユーザによるゲームのプレイを可能にするように構成されたプロセッサと、を備えるゲーム装置の操作に用いる方法であって、
前記プロセッサが、ゲーム装置の制御に用いられる複数の予め定められたオブジェクトの活動を判定するために使用可能である情報として、前記オブジェクト上の慣性センサから得られる慣性追跡情報、前記オブジェクト上の光源を前記プロセッサに接続された画像取得装置で検出することから得られる画像追跡情報、および前記オブジェクトから発せられる音声を前記プロセッサに接続されたマイクで検出することから得られる音響追跡情報のうち少なくとも二つを取得するステップと、
前記プロセッサが、前記慣性追跡情報、画像追跡情報、および音響追跡情報を処理して、ゲームの進行中に前記複数の予め定められたオブジェクトのうちの一つが活動しているか否かを判定するステップと、
前記プロセッサが、前記複数の予め定められたオブジェクトのうちの一つが活動していないと判定した後の、現在は活動しているという判定に応答して、進行中のゲームに新たなプレーヤを追加するステップと、
を含む方法。
【請求項２】
前記プロセッサが慣性追跡情報、画像追跡情報および音響追跡情報のうち少なくとも二つを混合して混合追跡情報を生成するステップをさらに含み、
前記プロセッサが、前記情報を処理するステップにおいて、前記混合追跡情報を処理して前記複数の予め定められたオブジェクトのうちの一つが現在活動していないかを判定することを含む、請求項１に記載の方法。
【請求項３】
前記情報を処理してゲームの進行中に前記複数の予め定められたオブジェクトのうちの一つが活動していないかを判定するステップが、
前記プロセッサが、前記混合追跡情報を処理し、
前記複数の予め定められたオブジェクトのうちの一つの活動がしきい値を超えない限り、前記プロセッサが、前記複数の予め定められたオブジェクトのうちの一つが現在活動していないと判定し、
前記プロセッサが、ゲームの進行中に前記しきい値を修正する
ことを含む、請求項２に記載の方法。
【請求項４】
前記プロセッサが、前記情報を取得するステップにおいて、前記複数の予め定められたオブジェクトの個々の動きを検出することを含む、請求項１ないし３のいずれかに記載の方法。
【請求項５】
前記プロセッサが、前記予め定められたオブジェクトにそれぞれ取り付けられた一つ以上の光学検出可能な（ＰＤ）要素の画像の取得に基づき、動きを検出することを特徴とする請求項４に記載の方法。
【請求項６】
前記プロセッサが、音響データに基づき動きを検出することを特徴とする請求項４または５に記載の方法。
【請求項７】
前記プロセッサが、前記予め定められたオブジェクトのそれぞれに組み込まれた慣性センサから受け取るデータに基づき、動きを検出することを特徴とする請求項３ないし６のいずれかに記載の方法。
【請求項８】
前記複数の予め定められたオブジェクトのうちの一つが活動しているか否かを判定するステップが、
前記プロセッサが、ピッチ、ヨー、ロールのうち少なくとも一つに関する方向データを含む、前記複数の予め定められたオブジェクトの個々の方向を判定し、
前記プロセッサが、前記方向データを予め定められた方向データと比較して、前記複数の予め定められたオブジェクトのうちの一つが活動していないかを判定する
ことをさらに含む、請求項１ないし７のいずれかに記載の方法。
【請求項９】
前記複数の予め定められたオブジェクトが複数のゲームコントローラを含むことを特徴とする請求項１ないし８のいずれかに記載の方法。
【請求項１０】
ゲーム装置の操作に用いられるシステムであって、
ゲーム装置の制御に用いられる複数の予め定められたオブジェクトの活動を判定するために使用可能である情報として、前記オブジェクト上の慣性センサから得られる慣性追跡情報、前記オブジェクト上の光源を前記システムに接続された画像取得装置で検出することから得られる画像追跡情報、および前記オブジェクトから発せられる音声を前記システムに接続されたマイクで検出することから得られる音響追跡情報のうち少なくとも二つを取得する手段と、
前記慣性追跡情報、画像追跡情報、および音響追跡情報を処理して、ゲームの進行中に前記複数の予め定められたオブジェクトのうちの一つが活動していないかを判定する手段と、
前記複数の予め定められたオブジェクトのうちの一つが活動していないと判定した後の、現在は活動しているという判定に応答して、進行中のゲームに新たなプレーヤを追加する手段と、
を備えるシステム。
【請求項１１】
慣性追跡情報、画像追跡情報および音響追跡情報のうち少なくとも二つを混合して混合追跡情報を生成する手段をさらに備え、
前記情報を処理する手段が、前記混合追跡情報を処理して前記複数の予め定められたオブジェクトのうちの一つが現在活動していないかを判定することを特徴とする、請求項１０に記載のシステム。
【請求項１２】
前記情報を取得する手段が、前記複数の予め定められたオブジェクトの個々の動きを検出する手段を備え、
前記予め定められたオブジェクトにそれぞれ取り付けられた一つ以上の光学検出可能な（ＰＤ）要素の画像の取得に基づき、動きが検出されることを特徴とする請求項１１に記載のシステム。
【請求項１３】
前記情報を処理してゲームの進行中に前記複数の予め定められたオブジェクトのうちの一つが活動していないかを判定する手段が、
前記混合追跡情報を処理し、前記複数の予め定められたオブジェクトのうちの一つの活動がしきい値を超えない限り、前記複数の予め定められたオブジェクトのうちの一つが現在活動していないと判定する手段を備えることを特徴とする、請求項１１または１２に記載のシステム。
【請求項１４】
前記処理する手段が、ゲームの進行中に前記しきい値を修正する手段をさらに備えることを特徴とする請求項１３に記載のシステム。
【請求項１５】
音響データに基づき動きが検出されることを特徴とする請求項１３または１４に記載のシステム。
【請求項１６】
前記情報を取得する手段が、前記複数の予め定められたオブジェクトの個々の方向を取得する手段を備えることを特徴とする、請求項１０ないし１５のいずれかに記載のシステム。
【請求項１７】
前記処理する手段が、ピッチ、ヨー、ロールのうち少なくとも一つに関する方向データを含む、前記複数の予め定められたオブジェクトの個々の方向を判定し、前記方向データを予め定められた方向データと比較して、前記複数の予め定められたオブジェクトのうちの一つが活動していないかを判定する手段をさらに備えることを特徴とする、請求項１０ないし１６のいずれかに記載のシステム。
【請求項１８】
前記予め定められた複数のオブジェクトが複数のゲームコントローラを含むことを特徴とする請求項１０ないし１７のいずれかに記載のシステム。
【請求項１９】
ゲームの進行の制御に使用する装置であって、
ゲームプログラムを格納するメモリと、
前記メモリのゲームプログラムにアクセスし、前記ゲームプログラムを実行して、ユーザとの相互作用にしたがってユーザによるゲームのプレイを可能にするように構成されたプロセッサと、を備え、
前記プロセッサが、
ゲーム装置の制御に用いられる複数の予め定められたオブジェクトの活動を判定するために使用可能である情報として、前記オブジェクト上の慣性センサから得られる慣性追跡情報、前記オブジェクト上の光源を前記プロセッサに接続された画像取得装置で検出することから得られる画像追跡情報、および前記オブジェクトから発せられる音声を前記プロセッサに接続されたマイクで検出することから得られる音響追跡情報のうち少なくとも二つを取得し、
前記慣性追跡情報、画像追跡情報、および音響追跡情報を処理して、ゲームの進行中に前記複数の予め定められたオブジェクトのうちの一つが活動していないかを判定し、
前記複数の予め定められたオブジェクトのうちの一つが活動していないと判定した後の、現在は活動しているという判定に応答して、進行中のゲームに新たなプレーヤを追加する
ように構成されることを特徴とする装置。
【請求項２０】
前記プロセッサが、慣性追跡情報、画像追跡情報および音響追跡情報のうち少なくとも二つを混合して混合追跡情報を生成するようにさらに構成され、
前記情報の処理が、前記混合追跡情報を処理して前記複数の予め定められたオブジェクトのうちの一つが現在活動していないかを判定することを含む、請求項１９に記載の装置。
【請求項２１】
前記プロセッサが、
前記混合追跡情報を処理し、前記複数の予め定められたオブジェクトのうちの一つの活動がしきい値を超えない限り、前記複数の予め定められたオブジェクトのうちの一つが現在活動していないと判定し、
前記ゲームの進行中に前記しきい値を修正する
ようにさらに構成されることを特徴とする請求項２０に記載の装置。
【請求項２２】
前記プロセッサが、音響データに基づき動きを検出することを特徴とする請求項２０または２１に記載の装置。
【請求項２３】
前記複数の予め定められたオブジェクトが、前記プロセッサと通信可能に接続されたゲームコントローラを含み、
前記ゲームコントローラが、本体と、該本体に組み付けられた少なくとも一つの光学検出可能な（ＰＤ）要素と、を備え、
前記ＰＤ要素は、輝度、色、テクスチャ、模様、反射率または照度のうち少なくとも一つによって前記本体と区別可能であり、
前記プロセッサは、画像取得装置で取得された画像内の少なくとも一つのＰＤ要素の位置を表す情報を取得することを特徴とする、請求項２０ないし２２のいずれかに記載の装置。
【請求項２４】
前記プロセッサと接続された画像取得装置をさらに備え、
前記情報の取得が、前記画像取得装置によって記録された画像を受け取ることを含み、
前記情報の処理が、前記画像内の前記ＰＤ要素の位置を求め、異なる時点における前記画像内の前記ＰＤ要素の位置を定めて前記ゲームコントローラに関連するユーザが現在活動していないかを判定することを含む、請求項２３に記載の装置。
【請求項２５】
前記ゲームコントローラの本体が、
前記プロセッサにより制御されるゲームの進行がスクリーン上に表示されるとき、該スクリーンの方向を向く前部と、
前記本体に組み付けられ、ユーザにより操作されユーザからの入力を行う少なくとも一つの入力デバイスと、
をさらに備えることを特徴とする請求項２３または２４に記載の装置。
【請求項２６】
前記プロセッサに接続された画像取得装置をさらに備え、
前記ゲームコントローラが、前記本体に組み付けられた少なくとも一つの光学検出可能な（ＰＤ）要素をさらに備え、
前部がほぼスクリーンの方向を向いているときに、前記画像内の前記ＰＤ要素の位置を前記画像取得装置によって記録可能であり、
異なる時点における前記ＰＤ要素の位置が空間内の前記本体の動きを数値化することを特徴とする請求項２３ないし２５のいずれかに記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に人とコンピュータの間のインタフェースに関し、具体的には一つ以上のコントローラのユーザ操作を追跡するための多チャンネル入力の処理に関する。
【背景技術】
【０００２】
コンピュータ・エンターテイメント・システムは、一般的に手持ち型コントローラ、ゲーム・コントローラまたは他のコントローラを含む。ユーザまたはプレーヤは、プレイ中のテレビゲームまたは他のシミュレーションを制御するために、コントローラを使用してエンターテイメント・システムに対してコマンドまたは他の指示を送る。例えば、コントローラはユーザにより操作されるマニピュレータ（例えばジョイスティック）を備えていてもよい。ジョイスティックの操作された可変量はアナログ値からデジタル値に変換され、ゲーム機のメインフレームに送られる。コントローラは、ユーザによって操作可能であるボタンを備えていてもよい。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
これらの情報および他の背景情報に関して、本発明は考案された。
【課題を解決するための手段】
【０００４】
一実施形態は、ゲーム装置の作動時に使用される、ゲーム装置に関するユーザ動作の欠如を判定する方法を提供する。この方法は、予め定められたオブジェクトに関するユーザ動作を判定するために使用できる情報を取得するステップと、この情報を処理して、前記予め定められたオブジェクトに関してユーザが現在活動していないかを判定するステップと、処理ステップにおいてユーザが現在活動していないと判定されたとき、ゲーム装置の作動の制御に用いるためにゲーム装置に第１の信号を提供するステップと、を含む。
【０００５】
別の実施形態は、ゲーム装置の作動時に使用される、ゲーム装置に関するユーザ動作の欠如を判定する方法を提供する。この方法は、ゲーム装置のユーザの活動レベルを判定するために使用できる情報を取得するステップと、この情報を処理してユーザが現在活動していないかを判定するステップと、処理ステップにおいてユーザが現在活動していないと判定されたとき、ゲーム装置の作動の制御に用いるためにゲーム装置に第１の信号を提供するステップと、を含む。
【０００６】
別の実施形態は、ゲーム装置の作動に用いる方法を提供する。この方法は、ゲーム装置の制御に用いられる複数の予め定められたオブジェクトの活動を判定するために使用できる情報を取得するステップと、この情報を処理して、ゲームの進行中に複数の予め定められたオブジェクトのうちの一つが活動していないかを判定するステップと、複数の予め定められたオブジェクトのうちの一つが活動していないと判定した後の現在活動しているという判定に応答して、進行中のゲームに新たなプレーヤを追加するステップと、を含む。
【０００７】
別の実施形態は、ゲーム装置の作動に用いられるシステムを提供する。このシステムは、ゲーム装置の制御に用いられる複数の予め定められたオブジェクトの活動を判定するために使用できる情報を取得する手段と、この情報を処理して、ゲームの進行中に複数の予め定められたオブジェクトのうちの一つが活動していないかを判定する手段と、複数の予め定められたオブジェクトのうちの一つが活動していないと判定した後の現在活動しているという判定に応答して、進行中のゲームに新たなプレーヤを追加する手段と、を備える。
【０００８】
本発明の教示は、添付の図面とともに以下の詳細な説明を考慮することによって容易に理解することができる。
【図面の簡単な説明】
【０００９】
【図１】本発明の一実施形態にしたがって作動するテレビゲーム・システムを示す模式図である。
【図２】本発明の一実施形態にしたがって作製されるコントローラの斜視図である。
【図３】本発明の一実施形態によるコントローラで使用可能な加速度計を示す三次元の概略図である。
【図４】本発明の一実施形態にしたがう様々な制御入力を混合するためのシステムのブロック図である。
【図５Ａ】本発明の一実施形態によるシステムのブロック図である。
【図５Ｂ】本発明の一実施形態による方法のフロー図である。
【図５Ｃ】本発明の一実施形態による方法のフロー図である。
【図６】本発明の一実施形態にしたがって本明細書に記載された方法および技術を実施、実装および／または実行するために使用可能なシステムを示すブロック図である。
【図７】本発明の一実施形態にしたがって本明細書に記載された方法および技術を実施、実装および／または実行するために使用可能なプロセッサを示すブロック図である。
【図８Ａ】本発明の一実施形態にしたがう方法を示すフロー図である。
【図８Ｂ】本発明の一実施形態にしたがう方法を示すフロー図である。
【発明を実施するための形態】
【００１０】
以下の詳細な説明では、説明のために多くの特定の詳細事項を含むが、当業者であれば、以下の詳細事項に対する多くの変形および変更が本発明の範囲内にあることを認めるであろう。したがって、以下に記す本発明の典型的な実施形態は、特許請求の範囲に記載の発明の一般性を損なうことなく、また限定を課することなく記載されている。
【００１１】
本明細書に記載の方法、装置、方式およびシステムの様々な実施形態は、ユーザによるコントローラ本体全体の移動、動きおよび／または操作の検知、捕捉、追跡を提供する。検出されたユーザによるコントローラ本体全体の移動、動きおよび／または操作を追加のコマンドとして使用して、プレイ中のゲームまたは他のシミュレーションの様々な状況を制御することができる。
【００１２】
ゲーム・コントローラ本体のユーザ操作の検出、追跡は様々な方法で実施することができる。例えば、加速度計またはジャイロスコープなどの慣性センサ、デジタルカメラなどの画像取得装置をコンピュータ・エンターテイメント・システムとともに使用して、手持ち型のコントローラ本体の動きを検出してそれをゲーム内のアクションに変換することができる。慣性センサを用いたコントローラの追跡の例は、例えば米国特許出願第11/382,033号の「SYSTEM、METHOD、AND APPARATUS FOR THREE-DIMENSIONAL INPUT CONTROL」（代理人整理番号SCEA06INRT1）に記載されており、参照により本明細書に援用される。画像捕捉を用いたコントローラの追跡の例は、例えば米国特許出願第11/382,034号の「SCHEME FOR DETECTING AND TRACKING USER MANIPULATION OF A GAME CONTROLLER BODY」（代理人整理番号SCEA05082US00）に記載されており、参照により本明細書に援用される。さらに、マイク配列と適切な信号処理とを用いてコントローラおよび／またはユーザを音響的に追跡することもできる。このような音響追跡の例は、米国特許出願第11/381 ,721号に記載されており、参照により本明細書に援用される。
【００１３】
音響検出、慣性検出および画像捕捉を個々にまたは任意に組み合わせて使用して、コントローラの多くの異なる種類の動きを検出することができる。例えば、上下の動き、ひねる動き、横方向の動き、急な動き、杖のような動き、落ち込む動きなどである。このような動きは、ゲーム内のアクションに変換される様々なコマンドに対応していてもよい。ゲームコントローラ本体のユーザによる操作の検出および追跡を使用して、多くの異なる種類のゲームやシミュレーション等を実施することができる。これによってユーザは、例えば、剣またはライトセーバーで戦い、杖を用いてアイテムの形状をなぞり、多くの異なる種類のスポーツ競技に参加し、スクリーン上の戦いまたは他の遭遇等に関わることができるコントローラの動きを追跡し、追跡された動きから予め記録された特定のジェスチャを認識するように、ゲームプログラムを構成することができる。これらの一つ以上のジェスチャの認識により、ゲーム状態の変化を引き起こすことができる。
【００１４】
本発明の実施形態では、ジェスチャ認識を解析する前に、これらの異なるソースから得られたコントローラの経路情報を混合することができる。異なるソース（例えば、音響、慣性、および画像捕捉）からの追跡データを、ジェスチャ認識の可能性を改善するように混合することができる。
【００１５】
図１Ａを参照すると、本発明の一実施形態により作動するシステム１００が示されている。図示するように、コンピュータ・エンターテイメント・コンソール１０２は、テレビゲームまたは他のシミュレーションの画像を表示するためにテレビまたは他のビデオディスプレイ１０４に接続することができる。ゲームまたは他のシミュレーションは、ＤＶＤ、ＣＤ、フラッシュメモリ、ＵＳＢメモリ、またはコンソール１０２に挿入される他のメモリ媒体１０６に保存されてもよい。ユーザまたはプレーヤ１０８は、ゲームコントローラ１１０を操作してテレビゲームまたは他のシミュレーションを制御する。図２に示すように、ゲームコントローラ１１０は、コントローラ１１０の位置、動き、方向または方向の変化に応じた信号を生成する慣性センサ１１２を備える。慣性センサに加えて、ゲームコントローラ１１０は、従来の制御入力装置、例えばジョイスティック１１１、ボタン１１３、Ｒｌ、Ｌｌ等を備えてもよい。
【００１６】
作動中、ユーザ１０８はコントローラ１１０を物理的に動かす。例えば、コントローラ１１０をユーザ１０８により任意の方向、つまり上下、左右、ねじり、回転、揺さぶり、急な動き、落ち込みのように動かすことができる。コントローラ１１０自体のこれらの動きは、以下に記す方法で慣性センサ１１２からの信号解析による追跡によってカメラ１１２により検知および取得することができる。
【００１７】
再び図１を参照して、システム１００はカメラまたは他の画像取得装置１１４を選択的に備えてもよい。これらは、コントローラ１１０がカメラの視野１１６の範囲内に存在するように配置することができる。画像取得装置１１４からの画像の解析を、慣性センサ１１２からのデータの解析とともに用いることができる。図２に示すように、コントローラ１１０は、ビデオ解析による追跡を容易にするために、発光ダイオード（ＬＥＤ）２０２、２０４、２０６、２０８などの光源を選択的に備えてもよい。これらは、コントローラ１１０の本体に取り付けられてもよい。本明細書において、「本体」という用語は、人が手で保持する（または、ウェアラブル・ゲームコントローラである場合は着用する）ゲームコントローラ１１０の一部を意味している。
【００１８】
コントローラ１１０を追跡するためのビデオ画像の追跡は、米国特許出願第11/382,034号、2006年5月6日出願の「SCHEME FOR DETECTING AND TRACKING USER MANIPULATION OF A GAME CONTROLLER BODY」（代理人整理番号86321 SCEA05082US00）に記載されており、参照により本明細書に援用される。コンソール１１０は、マイク配列１１８等の音響変換器を備えてもよい。コントローラ１１０は、マイク配列１１８と適切な音響信号処理を用いてコントローラ１１０の音響追跡を容易にするための音源を提供する音響信号生成器２１０（例えばスピーカ）を備えてもよい。これは、米国特許出願第１１／３８１，７２４号に記載されており、参照により本明細書に援用される。
【００１９】
一般に、慣性センサ１１２からの信号を使用して、コントローラ１１０の位置データと方向データを生成する。このようなデータは、コントローラ１１０の動きの多くの物理的状況を計算することができる。例えば、任意の軸に沿ったコントローラの加速度および速度、その傾き、ピッチ、ヨー、ロール、およびコントローラ１１０の任意の遠隔測定点などである。本明細書では、遠隔測定とは一般にシステムまたはシステムの設計者、オペレータに関心のある情報を遠隔で測定し報告することを指す。
【００２０】
コントローラ１１０の動きを検出し追跡する能力により、コントローラ１１０の任意の予め定義された動きが実行されるか否かを判定することが可能になる。すなわち、コントローラ１１０の特定の動きパターンまたはジェスチャを、ゲームまたは他のシミュレーションのための入力コマンドとして予め定義し用いることができる。例えば、コントローラ１１０を落下させるジェスチャを一つのコマンドとして定義することができ、コントローラ１１０をひねるジェスチャを別のコマンドとして定義することができ、コントローラ１１０を揺さぶるジェスチャを別のコマンドとして定義することができるなどである。このように、ユーザ１０８がコントローラ１１０を物理的に動かす態様を、ゲームを制御するためのもう一つの入力として使用する。これにより、より刺激的で面白い体験をユーザに提供する。
【００２１】
一例として、慣性センサ１１２は加速度計でもよいが、これに限定されない。図３は、例えばバネ３０６、３０８、３１０、３１２によりフレーム３０４に弾性結合された単一の質量３０２の形態をもつ加速度計３００の例を示す。ピッチ軸とロール軸（それぞれＸ、Ｙで示す）はフレームを横切る平面内にある。ヨー軸Ｚは、ピッチ軸Ｘとロール軸Ｙを含む平面と垂直の方向を向く。フレーム３０４は、任意の適した形態でコントローラ１１０に取り付けることができる。フレーム３０４（およびジョイスティック・コントローラ１１０）が加速および／または回転すると、フレーム３０４に対して質量３０２が変位し、並進加速および／または回転加速の量および方向、および／またはピッチ、ロールおよび／またはヨーの角度に応じてバネ３０６、３０８、３１０、３１２が伸縮する。質量３０２の変位および／またはバネ３０６、３０８、３１０、３１２の伸縮が例えば適切なセンサ３１４、３１６、３１８、３２０を用いて感知され、ピッチおよび／またはロールの量、加速度に応じて既知の方法または決定可能な方法で信号に変換される。
【００２２】
質量の位置および／または質量にかかる力を追跡する多くの異なる方法があり、これには、抵抗歪みゲージ材料、フォトニック・センサ、磁気センサ、ホール効果デバイス、圧電デバイス、容量センサなどが含まれる。本発明の実施形態は、任意の数および種類のセンサ、または複数種類のセンサの組み合わせを含むことができる。一例として、センサ３１４、３１６、３１８、３２０は、質量３０２の上方に配置されたギャップの閉じた電極であってもよいが、これに限定されない。各電極に対する質量の位置が変化すると、質量と各電極の間の静電容量が変化する。各電極は、電極に対する質量３０２の静電容量（つまり、近接度）に関連する信号を生成する回路に接続される。さらに、バネ３０６、３０８、３１０、３１２は、バネの伸縮に関する信号を生成する抵抗歪みゲージセンサを備えてもよい。
【００２３】
一部の実施形態では、ピッチ、ロールおよび／またはヨー軸に対して加速度計３００が固定の方向を維持するように、フレーム３０４はコントローラ１１０に取り付けられるジンバルであってもよい。この方法によると、実空間の座標軸に対するコントローラ軸の傾きを考慮する必要なしに、コントローラのＸ、Ｙ、Ｚ軸を実空間内の対応する軸に直接マッピングすることができる。
【００２４】
上述したように、慣性ソース、画像捕捉ソース、音響ソースからのデータを解析して、コントローラ１１０の位置および／または方向を追跡する経路を生成することができる。図４のブロック図で示すように、本発明の一実施形態によるシステム４００は、慣性解析器４０２、画像解析器４０４、および音響解析器４０６を備えてもよい。これらの解析器はそれぞれ、検知される環境４０１から信号を受け取る。解析器４０２、４０６、４０８は、ハードウェア、ソフトウェア（またはファームウェア）、またはこれらのうちの二つ以上の組合せで実装することができる。各解析器は、対象オブジェクトの位置および／または方向に関する追跡情報を生成する。一例として、対象オブジェクトは上述のコントローラ１１０であってもよい。画像解析器４０４は、以下のフィールドとともに動作しフィールドを形成し、米国特許出願第11/382,034号（代理人整理番号86321 SCEA05082US00）に記載の方法に関連する。慣性解析器４０２は、以下のフィールドとともに動作しフィールドを形成し、米国特許出願第11/382,033号の「SYSTEM、METHOD、AND APPARATUS FOR THREE-DIMENSIONAL INPUT CONTROL」（代理人整理番号SCEA06INRT1）に記載の方法に関連する。音響解析器４０６は、以下のフィールドとともに動作しフィールドを形成し、米国特許出願第11/381,724号に記載の方法に関連する。
【００２５】
解析器４０２、４０４、４０６を、位置情報および／または方向情報の異なる入力チャネルに関連しているとみなしてもよい。ミキサ４０８は複数の入力チャネルを受け入れることができる。このチャネルは、典型的にチャネルの視野からの検知された環境４０１を特徴付けるサンプルデータを含む。慣性解析器４０２、画像解析器４０４および音響解析器４０６によって生成される位置情報および／または方向情報を、ミキサ４０８の入力に結合することができる。ミキサ４０８と解析器４０２、４０４、４０６は、ゲームソフトウェア４１０によって問い合わせされ、イベントに応じてゲームソフトウェアを中断するように構成されていてもよい。イベントには、ジェスチャ認識イベント、ギアリング（gearing）変更、設定変更、設定ノイズレベル、設定サンプリングレート、マッピングチェーンの変更等が含まれる。これらの例については後述する。ミキサ４０８は、以下のフィールドとともに動作しフィールドを形成し、本明細書に記載の方法に関連する。
【００２６】
上述のように、例えば慣性センサ、ビデオ画像および／または音響センサなどの異なる入力チャネルからの信号が、それぞれ慣性解析器４０２、画像解析器４０４、音響解析器４０６によって解析され、本発明の方法によるテレビゲームのプレイ中にコントローラ１１０の動きおよび／または方向を決定することができる。このような方法は、プロセッサ可読の媒体に保存されデジタルプロセッサで実行される一連のプロセッサ実行可能なプログラムコード命令として実装することができる。例えば、図５Ａに示すように、テレビゲームシステム１００は、それぞれハードウェアまたはソフトウェアで実装される慣性解析器４０２、画像解析器４０４、音響解析器４０６を備えるコンソール１０２を含んでもよい。一例として、解析器４０２、４０４、４０６は、適切なプロセッサユニット５０２上で動くソフトウェア命令として実装することができる。一例として、プロセッサユニット５０２は、例えば、テレビゲーム機で一般に使用される種類のマイクロプロセッサなどのデジタルプロセッサであってもよい。命令の一部がメモリ５０６に保存されてもよい。代わりに、慣性解析器４０２、画像解析器４０４、および音響解析器４０６は、例えば特定用途向け集積回路（ＡＳＩＣ）としてハードウェアで実装されてもよい。このような解析器ハードウェアは、コントローラ１１０またはコンソール１０２上に配置されてもよいし、別の場所に離れて配置されてもよい。ハードウェア実装では、解析器４０２、４０４、４０６は、例えばプロセッサ５０２から、またはＵＳＢケーブルや無線接続、ネットワークなどの他の離れて配置されたソースからの外部信号に応じてプログラム可能であってもよい。
【００２７】
慣性解析器４０２は、慣性センサ１１２により生成された信号を解析し、コントローラ１１０の位置および／または方向に関する情報を利用する命令を含むかそのような命令を実装してもよい。同様に、画像解析器４０４は、画像取得装置１１４によってとらえられた画像を解析する命令を実装してもよい。さらに、音響解析器は、マイク配列１１８によってとらえられた画像を解析する命令を実装してもよい。図５Ｂのフロー図５１０に示すように、これらの信号および／または画像は、ブロック５１２に示すように解析器４０２、４０４、４０６により受け取られてもよい。ブロック５１４で示すように、信号および／または画像は解析器４０２、４０４、４０６で解析されて、コントローラ１１０の位置および／または方向に関する慣性追跡情報４０３、画像追跡情報４０５および音響追跡情報４０７を求めてもよい。追跡情報４０３、４０５、４０７は一つ以上の自由度に関連していてもよい。コントローラ１１０または他の追跡されるオブジェクトの操作を特徴付けるために、６自由度が追跡されることが好ましい。この自由度は、ｘ軸、ｙ軸、ｚ軸に沿ったコントローラの傾き、ヨー、ロールおよび位置、速度または加速度に関していてもよい。
【００２８】
ブロック５１６で示すように、ミキサ４０８は慣性情報４０３、画像情報４０５および音響情報４０７を混合して、改善された位置および／または方向情報４０９を生成する。一例として、ミキサ４０８は、ゲーム状況または環境状況に基づき慣性情報４０３、画像情報４０５および音響情報４０７に異なる重み付けを適用して加重平均をとってもよい。さらに、ミキサ４０８は、組み合わされた位置および／または方向情報を解析する自身のミキサ解析器４１２を備え、他の解析器により生成された情報の組み合わせを含む求められた自身の「ミキサ」情報を生成してもよい。
【００２９】
本発明の実施形態では、ミキサ４０８は解析器４０２、４０４、４０６からの追跡情報４０３、４０５、４０７に分布値を割り当ててもよい。上記のように、入力制御データの特定セットを平均化してもよい。しかしながら、本実施形態では、平均化の前に入力制御データに値を割り当て、これにより、一部の解析器からの入力制御データの分析の重要性を他の解析器からのものより高めてもよい。
【００３０】
ミキサ４０８は、他の処理および解析の観察、訂正、安定化、微分、組合せ、ルーティング、混合、報告、バッファ、中断の文脈でいくつかの機能を引き受けてもよい。これは、解析器４０２、４０４、４０６の一つ以上から受け取る追跡情報４０３、４０５、４０７に対して実行されてもよい。解析器４０２、４０４、４０６がそれぞれ特定の追跡情報を受け取るか取り出す一方、ミキサ４０８は受け取った追跡情報４０３、４０５、４０７の使用を最適化し、改善された追跡情報４０９を生成するように実装されていてもよい。
【００３１】
解析器４０２、４０４、４０６とミキサ４０８は、同様の出力フォーマットで追跡情報を提供するように構成されることが好ましい。任意の解析器要素４０２、４０４、４０６からの追跡情報パラメータを、解析器内の単一のパラメータにマッピングすることができる。代わりに、ミキサ４０８は、一つ以上の解析器４０２、４０４、４０６からの一つ以上の追跡情報パラメータを処理することによって、解析器４０２、４０４、４０６のいずれのためにも追跡情報を作り出すことができる。ミキサは、解析器４０２、４０４、４０６から得られる同一のパラメータタイプの追跡情報の二つ以上の要素を組み合わせ、解析器により生成された複数の追跡情報パラメータにわたる機能を実行して、複数の入力チャネルから生成される利点を有する出力の合成セットを作成することができる。
【００３２】
ブロック５１８で示すように、システム１００でのテレビゲームのプレイ中に、改善された追跡情報４０９を利用することができる。特定の実施形態では、ゲームプレイ中にユーザ１０８によりなされたジェスチャに関連して位置情報および／または方向情報を用いることができる。一部の実施形態では、ミキサ４０８は、ジェスチャ認識装置５０５とともに作動して、ゲーム環境内の少なくとも一つの動作と、ユーザからの一つ以上のユーザ動作（例えば、空間内でのコントローラの操作）とを結びつけることができる。
【００３３】
図５Ｃのフロー図５２０において、ブロック５２２で示すように、位置情報および／または方向情報を用いてコントローラ１１０の経路を追跡することができる。一例として、経路は、いくつかの座標系に対するコントローラの質量中心の位置を表す一組の点を含んでもよいが、これに限定されない。各位置点は、デカルト座標系のＸ、Ｙ、Ｚ座標などの一つ以上の座標で表すことができる。経路の形状と、経路に沿ったコントローラの進行の両方を監視できるように、経路上の各点に時間を関連させてもよい。さらに、上記組の中の各点を、コントローラの方向（例えば、コントローラの質量中心周りの一つ以上の回転角）を表すデータと関連づけておいてもよい。さらに、経路上の各点を、コントローラの質量中心の速度および加速度、角回転率、および質量中心周りのコントローラの角加速度の値と関連づけておいてもよい。
【００３４】
ブロック５２４で示すように、追跡された経路を、プレイ中のテレビゲームの文脈に関連する既知のおよび／または予め記録されたジェスチャ５０８に対応する一つ以上の保存された経路と比較してもよい。認識装置５０５は、ユーザを認識するかまたは音声認証されたジェスチャ等を処理するように構成されてもよい。例えば、認識装置５０５はジェスチャによりユーザを識別することができる。ジェスチャは、ユーザ特有のものであってもよい。このような特有のジェスチャは、メモリ５０６に保存される予め記録されたジェスチャ５０８の中に記録され含められる。記録処理は、ジェスチャの認識中に生じる音声を選択的に保存してもよい。検知された環境は多重チャネル解析器でサンプリングされ処理される。プロセッサはジェスチャモデルを参照して、音声または音響パターンに基づき高精度かつ高性能にユーザまたはオブジェクトを決定、認証および／または識別することができる。
【００３５】
図５Ａで示すように、ジェスチャを表すデータ５０８がメモリ５０６に保存されてもよい。ジェスチャの例には、ボールのような物を投げる、バットまたはゴルフクラブのような物を振る、ハンドポンプを動かす、扉または窓を開閉する、ハンドルまたは他の車両制御装置を回す、パンチのような格闘技の動き、紙やすりで磨く動き、ワックスをかける、家を塗る、振る、音をたてる、回す、フットボールを投げる、ノブを回す、３Ｄマウスの動き、スクロールする動き、プロフィールによる動き、任意の記録可能な動き、タイヤに空気を入れるような空間内の任意の方向で任意のベクトルに沿った前後の動き、経路に沿った動き、正確な停止と開始がある動き、ノイズフロア内で記録、追跡、繰り返し可能な任意の時間ベースのユーザ操作、スプライン等を含むが、これらに限定されない。これらのジェスチャはそれぞれ、経路データから予め記録され、時間ベースのモデルとして記録することができる。
【００３６】
経路と保存されたジェスチャとの比較は、経路が定常状態から外れる場合、削除処理によってその経路を保存されたジェスチャと比較することができるという定常状態の仮定で開始することができる。ブロック５２６で一致しない場合、ブロック５２２で解析器５０４はコントローラ１１０の経路を追跡し続けることができる。経路（またはその部分）と保存されたジェスチャとが十分に一致する場合、５２８で示すようにゲームの状態を変更することができる。ゲーム状態の変更には、中断、制御信号の送信、変数の変更等が含まれるが、これらに限られない。
【００３７】
この一例を示す。コントローラ１１０が定常状態を残したと判定されると、解析器４０２、４０４、４０６または４１２はコントローラ１１０の動きを追う。コントローラ１１０の経路が、保存されたジェスチャモデル５０８で定められる経路に従う限り、これらのジェスチャは起こりうる「ヒット」である。コントローラ１１０の経路が任意のジェスチャモデル５０８から外れる（ノイズ許容度設定の範囲内で）場合、そのジェスチャモデルはヒットリストから除かれる。各ジェスチャ参照モデルは、ジェスチャが記録される時間ベースを含む。解析器４０２、４０４、４０６または４１２は、適切な時間インデックスでコントローラ経路データを保存されたジェスチャ５０８と比較する。定常状態の条件が発生すると、クロックがリセットされる。定常状態から外れると（すなわち、ノイズ閾値の外側で動きが追跡されると）、全ての潜在ジェスチャモデルでヒットリストが占められる。クロックが開始され、コントローラの動きがヒットリストに対して比較される。比較は時間を通しての道のり（ｗａｌｋ）である。ヒットリスト内の任意のジェスチャがジェスチャの終端に到達すると、それがヒットである。
【００３８】
特定の実施形態では、特定のイベントが起こると、ミキサ４０８および／または個々の解析器４０２、４０４、４０６、４１２はゲームプログラムに通知する。そのようなイベントの例には以下が含まれる。
【００３９】
「到達したゼロ加速度点の中断（Ｘ、Ｙおよび／またはＺ軸）」
特定のゲーム状況では、コントローラの加速度が変曲点で変化すると、解析器５０４はゲームプログラム内のルーチンに通知するか、ルーチンを中断する。例えば、ユーザ１０８は、フットボール・シミュレーションゲームにおいてクォーターバックを表すゲームアバタを制御するために、コントローラ１１０を用いてもよい。解析器５０４は、慣性センサ１１２から得られる信号から発生する経路を通して、コントローラ（フットボールを表す）を追跡してもよい。コントローラ１１０の加速度の特定の変化が、フットボールのリリースの信号を出してもよい。この点において、解析器はプログラム内の別のルーチン（例えば、物理シミュレーションパッケージ）を起動して、リリース点におけるコントローラの位置、速度および／または方向に基づきフットボールの軌跡をシミュレーションしてもよい。
【００４０】
「認識された新たなジェスチャの中断」
【００４１】
さらに、解析器５０２は一つ以上の入力により構成されてもよい。このような入力の例には以下が含まれるが、これらに限られない。
【００４２】
「設定ノイズレベル（Ｘ、ＹまたはＺ軸）」
ノイズレベルは、ゲームにおけるユーザの手のいらだち（ジッタ）を解析するときに用いられる参照許容度であってもよい。
【００４３】
「設定サンプリングレート」
本明細書において、サンプリングレートとは、解析器５０２が慣性センサからの信号をサンプリングする頻度のことを指す。サンプリングレートは信号のオーバーサンプリングまたは平均に設定されてもよい。
【００４４】
「設定ギアリング」
本明細書において、ギアリングとは、一般にゲーム内で起こる動きに対するコントローラの動きの比率のことを指す。テレビゲーム制御の文脈におけるこのような「ギアリング」の例は、米国特許出願第11/382,036号、第11/382,041号、第11/382,038号および第11/382,040号に見つけることができ、全てが参照により本明細書に援用される。
【００４５】
「設定マッピングチェーン」
本明細書において、マッピングチェーンとはジェスチャモデルのマップのことを指す。ジェスチャモデルマップは、特定の入力チャネル（例えば、慣性センサ信号のみから発生する経路データ）のために、またはミキサユニットで形成されるハイブリッドチャネルのために作成することができる。三つの入力チャネルを、慣性解析器５０４と同様の二つ以上の異なる解析器により供給してもよい。具体的には、これらは以下を含んでもよい：本明細書に記載の慣性解析器５０４、例えば米国特許出願第11/382,034号の「SCHEME FOR DETECTING AND TRACKING USER MANIPULATION OF A GAME CONTROLLER BODY」（代理人整理番号SCEA05082US00）（参照により本明細書に援用される）に記載のビデオ解析器、および例えば米国特許出願第11/381,721号に記載の音響解析器（参照により本明細書に援用される）。解析器をマッピングチェーンで構成することができる。マッピングチェーンは、解析器およびミキサへの設定としてゲームプレイ中にゲームにより交換することができる。
【００４６】
図５Ａのブロック５０２を再び参照すると、当業者は、慣性センサ１１２からの信号を生成する多数の方法があることを認めるだろう。そのうちのいくつかの例については、図３Ａ〜図３Ｅに関して上述した。ブロック５０４を参照すると、ブロック５０２で生じるセンサ信号を解析してコントローラ１１０の位置および／または方向に関する情報を取得する多数の方法がある。一例として、追跡情報には、以下のパラメータの個々または任意の組み合わせに関する情報が含まれるが、これに限定されない：
【００４７】
「コントローラ方向」
コントローラ１１０の方向は、一部の参照方向に対するピッチ、ロールまたはヨー角度（例えばラジアン）で表現されてもよい。コントローラ方向の変化率（例えば、角速度または角加速度）が位置情報および／または方向情報に含められてもよい。慣性センサ１１２がジャイロスコープセンサである場合、ピッチ、ロールまたはヨー角度に比例する一つ以上の出力値の形で直接にコントローラ方向情報が求められてもよい。
【００４８】
「コントローラ位置」（例えば、一部の基準系内でのコントローラ１１０のデカルト座標Ｘ、Ｙ、Ｚ）
「コントローラＸ軸速度」
「コントローラＹ軸速度」
「コントローラＺ軸速度」
「コントローラＸ軸加速度」
「コントローラＹ軸加速度」
「コントローラＺ軸加速度」
【００４９】
位置、速度および加速度に関して、位置情報および／または方向情報がデカルト座標系以外の座標系で表現されてもよい。例えば、位置、速度および加速度について円筒座標または球面座標を用いてもよい。Ｘ軸、Ｙ軸、Ｚ軸に関する加速度情報を、図３Ａ〜図３Ｅに関して上述したように、加速度計タイプのセンサから直接求めてもよい。Ｘ、Ｙ、Ｚ加速度をいくつかの初期時点からの時間に関して積分して、Ｘ、Ｙ、Ｚ速度の変化を求めてもよい。初期時点におけるＸ、Ｙ、Ｚ速度の既知の値に速度変化を加えることによって、これらの速度を計算してもよい。Ｘ、Ｙ、Ｚ速度を時間に関して積分して、コントローラのＸ、Ｙ、Ｚ変位を求めてもよい。初期時点における既知のＸ、Ｙ、Ｚ位置に変位を加えることによって、Ｘ、Ｙ、Ｚ位置を求めてもよい。
【００５０】
「定常状態  Ｙ／Ｎ」
この特定情報は、コントローラが定常状態にあるか否かを示す。定常状態は任意の位置として定義することができ、変化の影響を受ける。好ましい実施形態では、定常状態位置は、ユーザの腰とほぼ同じ高さで大体水平方向にコントローラが保持されていることであってもよい。
【００５１】
「最後の定常状態からの時間」は、一般に、（上述の）定常状態が最後に検出されてから経過した期間の長さに関するデータのことを指す。上述のように、時間の決定はリアルタイムで、プロセッササイクルで、またはサンプリング期間で計算されてもよい。「最後の定常状態からの時間」のデータ時間は、初期点に対してコントローラの追跡をリセットし、ゲーム環境におけるキャラクタまたはオブジェクトのマッピング精度を保証することに関して重要である。このデータも、ゲーム環境で続けて実行可能である利用可能な行動／ジェスチャ（排他的と包括的の両方）を決定することに関して重要である。
【００５２】
「認識された最後のジェスチャ」は、一般に、ハードウェアまたはソフトウェアで実装可能なジェスチャ認識装置５０５により認識される最後のジェスチャのことを指す。認識された最後のジェスチャの識別は、続けて認識可能な可能性のあるジェスチャ、またはゲーム環境内で起こるいくつかの他のアクションと以前のジェスチャが関連しているという事実に関して重要である。
【００５３】
「認識された最後のジェスチャの時間」
上記の出力は、ゲームプログラムまたはソフトウェアによって任意の時間にサンプリングすることができる。
【００５４】
本発明の実施形態では、ミキサ４０８は解析器４０２、４０４、４０６からの追跡情報４０３、４０５、４０７に分布値を割り当ててもよい。上述のように、入力制御データの特定セットを平均化してもよい。しかしながら、本実施形態では、平均化の前に入力制御値に値を割り当て、これにより一部の解析器からの入力制御データを他の解析器からのものより解析の重要度を高めてもよい。
【００５５】
例えば、ミキサ４０８は加速度と定常状態に関連した追跡情報を必要としてもよい。ミキサ４０８は、上述のように追跡情報４０３、４０５、４０７を受け取る。例えば、上述のように、追跡情報は加速度と定常状態に関するパラメータを含んでもよい。この情報を表すデータを平均化する前に、ミキサ４０８は分布値を追跡情報データセット４０３、４０５、４０７に割り当ててもよい。例えば、慣性解析器４０２からのｘ、ｙ加速度パラメータに９０％の重み付けをしてもよい。しかしながら、画像解析器４０４からのｘ、ｙ加速度データに１０％のみの重み付けをしてもよい。加速度パラメータに関して、音響解析器の追跡情報４０７に０％の重み付け、すなわちデータが値を持たないようにしてもよい。
【００５６】
同様に、慣性解析器４０２からのＺ軸追跡情報パラメータに１０％の重み付けをし、画像解析器のＺ軸追跡情報に９０％の重み付けをしてもよい。音響解析器の追跡情報４０７に０％の重み付けをし、音響解析器４０６からの定常状態追跡情報に１００％の重み付けをし、残りの解析器の追跡情報に０％の重み付けをしてもよい。
【００５７】
適当な分布重みが割り当てられた後、重みとともに入力制御データを平均化して加重平均入力制御データセットを求め、このデータセットを続けてジェスチャ認識装置５０５で解析して特定のゲーム環境内の特定のアクションに関連付けしてもよい。関連する値は、ミキサ４０８または特定のゲームタイトルにより予め定義されていてもよい。この値は、様々な解析器から来るデータの特定の質を識別するミキサ４０８の結果であってもよく、これにより後述するように動的な調整がなされる。この調整は、特定のデータが特定の環境における特定の値になるとき、および／または所与のゲームタイトルの特殊性に応じて、歴史的な知識ベースの構築の結果であってもよい。
【００５８】
ミキサ４０８は、ゲームプレイの間、動的に作動するように構成されてもよい。例えば、ミキサ４０８が様々な入力制御データを受け取ると、特定のデータが一貫して許容可能なデータ範囲またはデータ品質の外部にあることを認識するか、または関連する入力装置におけるエラーの処理を示す不正データを反映することができる。
【００５９】
加えて、現実世界環境における特定の状況が変化してもよい。例えば、ユーザの家のゲーム環境における自然光が午前から午後になると増加して、画像データの捕捉に問題を生じることがある。さらに、日中になると近所または家庭がよりうるさくなって、音声データの捕捉に問題を生じる。同様に、ユーザが数時間プレイを続けると、ユーザの反射の素早さが低下して慣性データの解釈に問題が生じることがある。
【００６０】
これらの例や、または入力制御データの特定の形態の品質が問題になる場合、ミキサ４０８は、上述したように特定の入力制御データにより高いかより低い重要度を与えるように、特定の装置から来るデータの特定セットに対して重みを動的に再割り当てすることができる。同様に、ゲームの経過につれてゲーム環境が変化してもよい。特定のゲームの必要性が変化し、したがって特定の入力制御データの値または必要性の再割り当てが必要になる。
【００６１】
同様に、ミキサ４０８は、ジェスチャ認識装置５０５に渡されている特定のデータが誤ってまたはゆっくりと処理されているか、または処理中のエラーあるいはジェスチャ認識装置５０５により生成されるフィードバックデータに基づき処理されていないことを認識することができる。このフィードバックに応じて、または、これらの処理中の問題（例えば、画像解析データが許容できる範囲内にある場合、ジェスチャ認識装置５０５により関連づけされるときにエラーが生じる）の認識時に、ミキサ４０８は、どのような入力制御データがどの解析器からどの時点で求められるかを調整することができる。ミキサ４０８は、入力制御データがミキサ４０８に渡される前に、適切な解析器による入力制御データの特定の解析および処理を必要としてもよい。ミキサは、ジェスチャ認識装置５０５に渡されたデータの効率的かつ適切な処理がさらに保証されるように、データを再処理する。
【００６２】
一部の実施形態では、ミキサ４０８は、特定のデータが信頼できず、無効であり、または特定の変数の外部にあることを認識し、特定の入力制御データまたはそのデータに関連する変数を呼び出して不正なデータを置き換えるか、または必要な変数に関する特定のデータを適切に解析して計算することができる。
【００６３】
一般に、上述の定常状態条件に関して、何も起こらないとき、ゲームは入力を単に待機し続けない能力を選択的に備えてもよい。その代わりに、ユーザが現在活動しておらず、ゲーム装置の作動を制御する信号を生成するとゲームが積極的に判断してもよい。例えば、ユーザが現在活動していないと判定したとき、ゲーム装置の作動を一時停止することができる。例えば、ゲーム装置は、ゲームの実行を一時停止するための第１の信号に反応してもよい。活動がある場合は、そのことを積極的に判定してゲームに信号を送ってもよい。活動は、積極的な行動であってもある程度の行動であってもよい。例えば、活動は腕を振る動作であってもよいし、または腕を振る前に腕を後ろに引く程度であってもよい。しかしながら、これは一つの例に過ぎない。
【００６４】
一部の実施形態では、システムは定常状態条件を判定するか、および／または定常状態条件からの退出を検出する能力を備えてもよい。例えば、一実施形態は、ゲーム装置に対するユーザ活動の欠如を判定するためにゲーム装置の作動に用いられる方法を含む。図８Ａを参照すると、本発明の一実施形態による方法８００が示されている。方法８００は、例えばエンターテイメント・システムおよびコンソール、コンピュータ、家電装置その他の多くの異なる種類のシステムおよび装置で実行または実施可能である。方法８００を実行するために用いられるシステムの一例が以下で説明される。
【００６５】
方法８００は、予め定められたオブジェクトに関するユーザの活動を判定するために使用可能な情報を含むサンプルの時系列を取得することを含む。ステップ８０４で、時系列が処理されて、予め定められたオブジェクトに関してユーザが現在活動していないかが判定される。そして、ステップ８０６で、時系列を処理するステップでユーザが現在活動していないと判定されると、ゲーム装置の作動を制御するために使用される第１の信号がゲーム装置に与えられる。一部の実施形態では、予め定められたオブジェクトは、ゲームコントローラまたは同様の装置などのコントローラ、リモコン、杖状の装置、マウスまたはポインティングデバイス、任意の他の装置であってもよい。こうして、コントローラのような特定のユーザ操作可能なオブジェクトが定常状態にあることを判定できる。
【００６６】
一部の実施形態では、複数のオブジェクトの中から特定のユーザ操作可能なオブジェクトが定常状態にあることを判定できる。例えば、複数の予め定められたオブジェクトのうちの個別オブジェクトに慣例する複数ユーザのうち個別ユーザの活動に対して時系列の処理ステップを実行して、複数ユーザのなかから現在活動していない一人以上の個別ユーザを識別することができる。さらに、第１の信号を与えるステップが、複数ユーザのなかから現在活動していない特定のユーザを識別することを含んでいてもよい。
【００６７】
一部の実施形態は、定常状態からの復帰について述べる。例えば、これは特定のユーザ操作可能なオブジェクトに関して活動があることを判定することで説明される。例えば、このシナリオにおいて進行中のゲームに新たなプレーヤが参加するとき、時系列の処理ステップは、予め定められたオブジェクトに関連してユーザが現在活動しているか否かを判定することができる。時系列の処理ステップが、ユーザが活動しないないと判定した直後にそのユーザが現在活動していると判定すると、ゲーム装置の作動の制御に用いるために第２の信号がゲーム装置に提供されてもよい。時系列を処理するステップを、複数の予め定められたオブジェクトのうちの個別オブジェクトに関連する複数ユーザのうち個別ユーザの活動に対して実行して、複数ユーザのうち現在活動している一人以上の個別ユーザを識別することができる。さらに、第２の信号を提供するステップが、複数ユーザのうち現在活動している特定のユーザを識別することを含んでもよい。新たなプレーヤが特定のユーザと識別されると、新たなプレーヤのプロフィールを識別してロードしてもよい。
【００６８】
一部の実施形態では、時系列を処理するステップは、ユーザの活動が閾値を越えない限り、そのユーザが現在活動していないと判定してもよい。ゲーム装置の動作中および時系列の処理中に閾値を修正して、ユーザの活動が修正された閾値を越えるか否かを判定してもよい。ゲーム装置は、第１の信号に反応してゲームの実行を一時停止してもよい。
【００６９】
一部の実施形態では、複数の予め定められたオブジェクトのうちの個別オブジェクトに関連する複数ユーザのうち個別ユーザの活動に対して時系列を処理するステップを実行して、複数ユーザのうち現在活動していない一人以上の個別ユーザを識別してもよい。第１の信号を提供するステップは、複数ユーザのうち現在活動していない特定ユーザを識別することを含んでもよい。
【００７０】
一部の実施形態では、処理ステップにおいて複数ユーザのうち予め定められた組の全員が現在活動していないと判定されたとき、第２の信号を提供するステップを含めてもよい。時系列には、予め定められたオブジェクトの動き、位置、姿勢、および予め定められたオブジェクト近傍の音響レベルに関する情報を含んでもよい。時系列を取得するステップは、ゲーム装置によりゲームの進行を表示可能なスクリーン近傍の画像取得装置から情報を取得することを含んでもよい。
【００７１】
一部の実施形態では、予め定められたオブジェクトは、本体と、本体に組み付けられる少なくとも一つの光学検出可能な（ＰＤ）要素とを備えてもよい。ＰＤ要素は、輝度、色、テクスチャ、模様、反射率または照度のうち少なくとも一つによって本体と区別可能であってもよい。時系列の取得ステップが、画像取得装置で取得された画像内の少なくとも一つのＰＤ要素の位置を表す情報を取得することを含んでもよい。少なくとも一つのＰＤ要素が光源であってもよい。少なくとも一つのＰＤ要素が発光ダイオード（ＬＥＤ）であってもよい。
【００７２】
一部の実施形態では、予め定められたオブジェクトが本体を備えたゲームコントローラであり、本体はゲームの進行がスクリーンに表示されるときにスクリーンの方向を向く前部を有していてもよい。ゲームコントローラは本体に組み付けられる少なくとも一つの入力装置を備えており、入力装置はユーザからの入力を登録するためユーザにより操作可能であってもよい。サンプルの時系列を取得するステップは、ゲームコントローラの前部の少なくとも一部がスクリーンの方向を向いているとき、画像取得装置が取得した画像内のＰＤ要素の位置を捕捉することを含んでもよい。時系列の処理ステップは、所定の期間にわたり画像内でのＰＤ要素の位置の動きが閾値を越えないとき、ユーザが現在活動していないと判定することを含んでもよい。
【００７３】
一部の実施形態では、ゲームコントローラが少なくとも二つのＰＤ要素を備え、時系列を取得するステップが、画像平面のｘ軸およびｙ軸に対するゲームコントローラの方向を捕捉することを含んでもよい。ゲームコントローラが三角形を構成する三つのＰＤ要素を備えてもよい。時系列を取得するステップが、画像平面と垂直のｚ軸に対するゲームコントローラの方向をさらに捕捉することを含んでもよい。
【００７４】
一部の実施形態では、ゲームコントローラが四角形を構成する少なくとも四つのＰＤ要素を備えてもよい。時系列を取得するステップが、画像平面と垂直のｚ軸に対するゲームコントローラの方向をさらに捕捉することを含んでもよい。
【００７５】
一部の実施形態では、処理ステップが、ピッチ、ヨー、ロールのうち少なくとも一つに関する方向データを含むゲームコントローラの方向を判定し、この方向データを予め定められた方向データと比較してユーザが現在活動しているか否かを判定することを含んでもよい。方向データがゲームコントローラのピッチ、ヨーおよびロールに関していてもよい。
【００７６】
一部の実施形態では、時系列を取得するステップが、予め定められたオブジェクトに組み込まれた慣性センサにより取得される情報をサンプリングすることを含み、時系列を処理するステップが、時系列を処理して予め定められたオブジェクトの動きが所定の期間内に閾値を越えないことを判定することを含んでもよい。慣性センサは、加速度計、ジャイロスコープまたはレーザジャイロスコープのうちの少なくとも一つであってよい。時系列を取得するステップが、予め定められたオブジェクトの加速度を求めるために使用可能な情報を取得することを含み、時系列を処理するステップが、予め定められたオブジェクトの加速度を求めることを含んでもよい。時系列を処理するステップが、ある期間にわたり時系列から得られる加速度値を積分することで、予め定められたオブジェクトの速度を求めることを含んでもよい。時系列を処理するステップが、ある期間にわたり時系列から得られる加速度値を最初に積分し、その結果を前記期間にわたり積分することによって、予め定められたオブジェクトの変位を求めることを含んでもよい。
【００７７】
一部の実施形態では、予め定められたオブジェクトは、本体を有するゲームコントローラ、本体に取り付けられた慣性センサ、および本体と組み付けられた少なくとも一つのユーザ入力装置を備えるゲームコントローラであってもよい。ユーザ入力装置は、ユーザからの入力を登録するためにユーザにより操作可能であってもよい。
【００７８】
一部の実施形態では、時系列を取得するステップが、ユーザの操作するオブジェクトの近傍で音響変換器により取得される情報をサンプリングすることを含み、時系列を処理するステップが、音響変換器により取得される情報が所定の基準を満足しないとき、ユーザが現在活動していないと判定することを含んでもよい。
【００７９】
一部の実施形態では、ゲームの進行をスクリーンに表示するステップにおいて、スクリーン近傍に配置された音響変換器により音響情報を取得してもよい。
【００８０】
一部の実施形態では、時系列を取得するステップが、ユーザの操作するオブジェクトの近傍で音響変換器により取得される音響情報をサンプリングすることを含み、時系列を処理するステップが、音響変換器により取得された情報が特定のユーザに固有の所定の基準を満足しないとき、複数ユーザのうち特定のユーザが現在活動していないと判定することを含んでもよい。
【００８１】
一部の実施形態では、所定の基準には、ピッチ、音声パルス周波数、音声パルス形状、音声パルスデューティサイクル、脈動周波数、特徴的な音のスペクトルコンテンツ特性を含むスペクトルシグネチャ、特定ユーザの音声を特徴付けるスペクトルシグネチャ（spectral signature）、互いに連結し音声認識により認識可能な一連の一つ以上の音素を特徴付ける時間変化するシグネチャからなるグループから選択される少なくとも一つの基準を含んでもよい。
【００８２】
一部の実施形態では、時系列を処理するステップが、予め定められたオブジェクトに関してユーザが現在活動しているか否かを判定し、時系列を処理するステップでユーザが活動していないと判定した直後に該ユーザが現在活動していると判定されたとき、本方法は、ゲーム装置の作動を制御するために用いられる第２の信号をゲーム装置に提供することをさらに含んでもよい。
【００８３】
一部の実施形態では、時系列を処理するステップが、ユーザの活動が閾値を越えるときに該ユーザが現在活動していると判定してもよい。ゲーム装置の作動中に閾値を修正し、時系列を処理してユーザの活動が修正された閾値を越えるか否かを判定してもよい。
【００８４】
一部の実施形態では、ゲーム装置が第２の信号に応じてゲームの実行を再開してもよい。
【００８５】
一部の実施形態では、時系列を処理するステップが、複数の予め定められたオブジェクトのうちの個別オブジェクトに関する複数ユーザのうちの個別ユーザの活動に対して実行され、複数ユーザのうち現在活動している一人以上の個別ユーザを識別してもよく、第２の信号を提供するステップが、複数ユーザのうち現在活動している特定のユーザを識別することを含む。
【００８６】
一部の実施形態では、時系列を処理するステップの前、かつ第２の信号に応答して各ユーザに対応するプロフィールを保存し、第２の信号により識別される特定ユーザに対応する保存された一つ以上のプロフィールにアクセスし、アクセスされたプロフィールから得られたプロフィール情報を利用してゲーム装置の実行を制御してもよい。
【００８７】
一部の実施形態では、時系列を処理するステップの前かつ第２の信号に応答して各ユーザに対応するプロフィールを保存してもよい。第２の信号により識別される特定ユーザに対応するプロフィールのうち以前に保存された一つにアクセスし、アクセスしたプロフィールから得られるプロフィール情報を利用してゲーム装置の実行を制御してもよい。
【００８８】
一部の実施形態では、時系列の処理ステップを実行して、複数の予め定められたオブジェクトのうちの個別オブジェクトに対する活動を判定してもよい。第２の信号を提供するステップが、特定の予め定められたオブジェクトのユーザが現在活動している複数のオブジェクトのうち特定の一つを識別することを含んでもよい。
【００８９】
一部の実施形態では、時系列を処理するステップの前に特定のユーザに対応するプロフィールを保存し、特定の予め定められたオブジェクトの特定ユーザを識別し、特定の識別されたユーザに対応するプロフィールのうち以前に保存された一つにアクセスし、アクセスしたプロフィールから得られるプロフィール情報を利用してゲーム装置の実行を制御してもよい。
【００９０】
一部の実施形態では、特定ユーザを識別するステップが、時系列を処理してユーザにより実行された一連の動きを含むジェスチャに関するジェスチャ情報を取得し、該ジェスチャ情報を特定ユーザに対応する複数の保存されたジェスチャマップと比較し、ジェスチャマップが前記ジェスチャ情報と一致する特定ユーザを識別することを含んでもよい。
【００９１】
一部の実施形態では、保存されたジェスチャマップのうち少なくとも一部が特定のユーザに固有のものであってもよい。保存されたジェスチャマップのうち少なくとも一部が、ユーザにより実行されたジェスチャの時系列を処理することで得られるジェスチャ情報から保存されてもよい。保存されたジェスチャマップのうち少なくとも一部が、特定のユーザにより実行されたジェスチャの時系列を処理することなく、特定のユーザによって選択可能であってもよい。
【００９２】
一部の実施形態では、時系列は、予め定められたオブジェクトの動き、位置、姿勢、または予め定められたオブジェクト近傍の音響レベルのうちの少なくとも一つに関する情報を含んでもよい。予め定められたオブジェクトが本体を備えたゲームコントローラであり、本体はゲームの進行がスクリーンに表示されるときにスクリーンの方向を向く前部を有しており、ゲームコントローラは本体に組み付けられる少なくとも一つの入力装置を備えており、入力装置はユーザからの入力を登録するためユーザにより操作可能であってもよい。サンプルの時系列を取得するステップは、ゲームコントローラ前部の少なくとも一部がスクリーンの方向を向いているとき、画像取得装置が取得した画像内のＰＤ要素の位置を捕捉することを含んでもよい。前記時系列を処理するステップは、所定の期間にわたり画像内でのＰＤ要素の位置の動きが閾値を越えないとき、ユーザが現在活動していると判定することを含んでもよい。
【００９３】
一部の実施形態では、時系列を取得するステップが、予め定められたオブジェクトに組み込まれた慣性センサにより取得される情報をサンプリングすることを含み、時系列を処理するステップが、時系列を処理して予め定められたオブジェクトの動きが所定の期間内に閾値を越えることを判定することを含んでもよい。
【００９４】
一部の実施形態では、時系列を取得するステップが、ユーザの操作するオブジェクトの近傍で音響変換器により取得される情報をサンプリングすることを含み、時系列を処理するステップが、音響変換器により取得される情報が所定の基準を満足するとき、ユーザが現在活動していると判定することを含んでもよい。
【００９５】
一部の実施形態では、時系列の取得ステップより前に音響情報を保存してもよい。特定ユーザを識別するステップが、処理ステップで特定の予め定められたオブジェクトに対して現在活動していると判定されたときに保存された音響情報に関して音響変換器により取得される音響情報を処理することを含んでもよい。保存された音響情報が、発話の音響的な特徴または発話の意味のうち少なくとも一つに関するものであり、前記音響変換器により取得される音響情報が発話の変換により取得される情報であってもよい。
【００９６】
図８Ｂを参照すると、本発明の一実施形態で用いられる方法８２０が示されている。この実施形態は、ゲーム装置に関するユーザの活動の欠如を判定するためにゲーム装置の作動時に用いられる方法を提供する。方法は、ゲーム装置のユーザの活動レベルを判定するために使用できる情報を含むサンプルの時系列を取得するステップ８２２を含む。ステップ８２４は、時系列を処理してユーザが現在活動していないかを判定することを含む。そして、ステップ８２６において、時系列の処理ステップにおいてユーザが現在活動していないと判定されたとき、ゲーム装置の作動の制御に用いるためにゲーム装置に第１の信号を提供する。ユーザの活動レベルの決定は、多くの異なる方法で実行することができる。例えば、部屋の中に歩いていくユーザを検知する、ユーザの存在を検知する、拍手を検知する、他の方法で活動レベルを検知するなどで決定することができる。こうして、これを決定することによって、ユーザの十分な動作基準または変化基準がないことがセンサにより記録される。センサは、ユーザの身につける物体に組み込まれ、定常状態が決定されてもよい。
【００９７】
一部の実施形態では、システムが定常状態から抜け出すと、ユーザプロフィールまたはユーザにカスタマイズされたジェスチャを見つけ出すことができる。プロフィールに基づき、ゲームに新たなプレーヤを追加することができる。システムは、多くの異なる方法で定常状態を検出することができる。システムは、聴覚パターン、映像パターンまたは慣性パターンに基づき、またはユーザのプロフィールかジェスチャを検出することにより、ユーザの活動を検出することができる。
【００９８】
一部の実施形態では、時系列を処理するステップは、ユーザの活動が閾値を上回らない限り、ユーザが現在活動していないと判定してもよい。時系列を処理するステップの間、閾値を修正してもよい。ゲーム装置が前記第１の信号に応答してゲームの実行を一時停止してもよい。
【００９９】
一部の実施形態では、時系列を処理するステップが複数のユーザのうちの個別ユーザの活動に対して実行され、複数のユーザのうち現在活動していない一人以上の個別ユーザを識別し、第１の信号を提供するステップが、複数のユーザのうち現在活動していない特定ユーザを識別することを含んでもよい。
【０１００】
一部の実施形態では、処理ステップにおいて、予め定められた組の複数ユーザの全員が現在活動していないと判定されたとき、ゲーム装置に第２の信号を提供するステップを含んでもよい。
【０１０１】
一部の実施形態では、サンプルの時系列は、ユーザの体の少なくとも一部の移動、ユーザの体の位置、ユーザの体の少なくとも一部の姿勢、またはゲームの進行をゲーム装置により表示可能なスクリーン近傍での音響レベルのうち少なくとも一つに関する情報を含んでもよい。
【０１０２】
一部の実施形態では、時系列を取得するステップが、ゲームの進行をゲーム装置により表示可能であるスクリーンの近傍で画像取得装置から情報を得ることを含んでもよい。時系列を取得するステップが、画像取得装置により取得される画像内の少なくとも一つの光学検出可能な（ＰＤ）要素の位置を表す情報を取得することを含んでもよい。ＰＤ要素はユーザの身につける物体に含まれてもよい。ＰＤ要素は、輝度、色、テクスチャ、模様、反射率または照度のうち少なくとも一つによって区別可能であってもよい。処理ステップは、ある期間にわたり少なくとも一つのＰＤ要素の位置における変化が所定の閾値を越えないとき、ユーザが現在活動していないと判定してもよい。
【０１０３】
一部の実施形態では、少なくとも一つのＰＤ要素が光源であってもよい。少なくとも一つのＰＤ要素が発光ダイオード（ＬＥＤ）であってもよい。物体は少なくとも二つのＰＤ要素を備えてもよい。時系列を取得するステップは、画像平面のｘ軸およびｙ軸に対する物体の方向を捕捉することを含んでもよい。
【０１０４】
一部の実施形態では、物体は三角形を構成する三つのＰＤ要素を備えてもよい。時系列を取得するステップは、画像平面と垂直のｚ軸に対する物体の方向を捕捉することを含んでもよい。
【０１０５】
一部の実施形態では、物体は四角形を構成する少なくとも四つのＰＤ要素を備えてもよい。時系列を取得するステップは、画像平面と垂直のｚ軸に対する物体の方向を捕捉することを含んでもよい。
【０１０６】
一部の実施形態では、処理ステップが、ピッチ、ヨー、ロールのうち少なくとも一つに関する方向データを含む物体の方向を判定し、該方向データを予め定められた方向データと比較してユーザが現在活動しているか否かを判定することをさらに含んでもよい。方向データが物体のピッチ、ヨーおよびロールに関していてもよい。
【０１０７】
一部の実施形態では、時系列を取得するステップが、ユーザの身につけた物体に組み込まれた慣性センサにより取得される情報をサンプリングすることを含み、時系列を処理するステップが、時系列を処理して予め定められたオブジェクトの動きが所定の期間内に閾値を越えないことを判定することを含んでもよい。慣性センサは、加速度計、ジャイロスコープまたはレーザジャイロスコープのうちの少なくとも一つであってよい。
一部の実施形態では、時系列を取得するステップが、物体の加速度を求めるために使用可能な情報を取得することを含み、時系列を処理するステップが物体の加速度を求めることを含んでもよい。時系列を処理するステップが、ある期間にわたり時系列から得られる加速度値を積分することで物体の速度を求め、この処理により求められた速度が速度閾値を越えないときユーザが現在活動していないと判定することを含んでもよい。
【０１０８】
一部の実施形態では、時系列を処理するステップが、ある期間にわたり時系列から得られる加速度値を最初に積分しその結果を前記期間にわたり積分することによって物体の変位を求め、この処理により求められた変位が変位閾値を越えないときユーザが現在活動していないと判定することを含んでもよい。
【０１０９】
一部の実施形態では、時系列を取得するステップが、ユーザの近傍で音響変換器により取得される情報をサンプリングすることを含み、時系列を処理するステップが、音響変換器により取得される情報が所定の基準を満足しないとき、ユーザが現在活動していないと判定することを含んでもよい。ゲームの進行をスクリーン上に表示してもよく、スクリーン近傍に配置された音響変換器により音響情報が取得される。
【０１１０】
一部の実施形態では、ゲームの進行がスクリーンに表示され、スクリーン近傍に配置された音響変換器により前記音響情報が取得され、時系列を処理するステップが、音響変換器により取得された情報が特定のユーザに固有の所定の基準を満足しないとき、複数ユーザのうち特定のユーザが現在活動していないと判定することを含んでもよい。
【０１１１】
一部の実施形態では、前定の基準には、ピッチ、音声パルス周波数、音声パルス形状、音声パルスデューティサイクル、脈動周波数、特徴的な音のスペクトルコンテンツ特性を含むスペクトルシグネチャ、特定ユーザの音声を特徴付けるスペクトルシグネチャ、互いに連結し音声認識により認識可能な一連の一つ以上の音素を特徴付ける時間変化するシグネチャからなるグループから選択される少なくとも一つの基準を含んでもよい。
【０１１２】
本発明の一実施形態によると、上述の種類のテレビゲームシステムおよび方法は、図６に示すように実装可能である。テレビゲームシステム６００は、プロセッサ６０１とメモリ６０２（例えば、ＲＡＭ、ＤＲＡＭ、ＲＯＭなど）を含んでもよい。さらに、並列処理を実装する場合には、テレビゲームシステム６００が複数のプロセッサ６０１を備えていてもよい。メモリ６０２は、上述のように構成された部分を含むデータとゲームプログラムコード６０４を含んでもよい。具体的には、メモリ６０２は上述のように保存されたコントローラ経路情報を含む慣性信号データ６０６を含んでもよい。メモリ６０２は保存されたジェスチャデータ６０８、例えばゲームプログラム６０４に関連する一つ以上のジェスチャを表すデータを含んでもよい。プロセッサ６０１で実行される符号化された命令は、上述のように構成され機能する多入力ミキサ６０５を実装してもよい。
【０１１３】
システム６００は周知のサポート機能６１０、例えば入出力（Ｉ／Ｏ）要素６１１、電源（Ｐ／Ｓ）６１２、クロック（ＣＬＫ）６１３およびキャッシュ６１４等を備えてもよい。装置６００は、プログラムおよび／またはデータを記憶するディスクドライブ、ＣＤ−ＲＯＭドライブ、テープ装置等の大容量記憶装置６１５を任意に備えてもよい。コントローラは、コントローラ６００とユーザとの対話を促進するためのディスプレイ装置６１６とユーザインタフェースユニット６１８を任意に備えてもよい。ディスプレイ装置６１６は、テキスト、数字、グラフィック・シンボルまたは画像を表示する陰極線管（ＣＲＴ）またはフラットパネル・スクリーンの形であってもよい。ユーザ・インタフェース６１８は、キーボード、マウス、ジョイスティック、ライトペンまたは他の装置であってもよい。さらに、ユーザ・インタフェース６１８は分析される信号を直接取得するためのマイク、ビデオ・カメラまたは他の信号変換装置であってもよい。プロセッサ６０１、メモリ６０２およびシステム６００の他の構成要素は、図６で示すようにシステムバス６２０を介して互いに信号（例えば、コード命令とデータ）を交換してもよい。
【０１１４】
マイク配列６２２は、Ｉ／Ｏ機能６１１を介してシステム６００に接続されてもよい。マイク配列は、隣のマイクと約４ｃｍ未満、好ましくは約１〜２ｃｍ離して配置された約２〜８個のマイク、好ましくは４個のマイクであってもよい。好ましくは、配列６２２のマイクは全方向性マイクである。オプションの画像取得装置６２３（例えば、デジタルカメラ）は、Ｉ／Ｏ機能６１１を介して装置６００に結合される。カメラに機械的に結合される一つ以上のポインティングアクチュエータ６２５は、Ｉ／Ｏ機能６１１を介してプロセッサ６０１と信号を交換することができる。
【０１１５】
本明細書においては、Ｉ／Ｏという用語は、一般にシステム６００と周辺装置との間でデータをやりとりする任意のプログラム、操作または装置のことを指す。あらゆるデータ転送は、一つの装置からの出力および別の装置への入力とみなすことができる。周辺装置には、キーボードやマウスなどの入力専用装置、プリンタなどの出力専用の装置の他、入出力装置として機能する書き込み可能なＣＤ−ＲＯＭ等の装置も含まれる。「周辺装置」という用語には、マウス、キーボード、プリンタ、モニター、マイク、ゲームコントローラ、カメラ、外部Ｚｉｐドライブまたはスキャナ等の外部装置の他、ＣＤ−ＲＯＭドライブ、ＣＤ−Ｒドライブまたは内蔵モデムなどの内部装置、またはフラッシュメモリ・リーダ／ライタ、ハードディスクなどの他の周辺機器も含まれる。
【０１１６】
本発明の特定の実施形態では、装置６００はテレビゲームユニットであってもよく、ワイヤ（例えば、ＵＳＢケーブル）または無線によってＩ／Ｏ機能６１１を介してプロセッサに接続されたジョイスティック・コントローラ６３０を備えてもよい。ジョイスティック・コントローラ６３０は、テレビゲームのプレイ中に一般に用いられる制御信号を提供するアナログジョイスティックコントロール６３１と従来のボタン６３３とを備えていてもよい。そのようなテレビゲームは、メモリ６０２に記憶可能なプロセッサ可読のデータおよび／または命令として実装されてもよいし、あるいは、大容量記憶装置６１５と関連するような他のプロセッサ可読媒体として実装されてもよい。
【０１１７】
ジョイスティックコントロール６３１は、コントロールスティックを左右に動かすとＸ軸に沿った運動の信号を送り、スティックを前後（上下）に動かすとＹ軸に沿った運動の信号を送るように通常構成されている。三次元動作用に構成された構成されるジョイスティックでは、スティックを左方向（反時計回り）または右方向（時計回り）にひねるとＺ軸に沿った運動の信号を送る。これら３軸Ｘ、Ｙ、Ｚは、特に航空機に関してそれぞれロール、ピッチ、ヨーと呼ばれることが多い。
【０１１８】
従来の特徴に加えて、ジョイスティック・コントローラ６３０は一つ以上の慣性センサ６３２を備えていてもよい。慣性センサは、慣性信号を介してプロセッサ６０１に位置情報および／または方向情報を提供することができる。方向情報は、ジョイスティック・コントローラ６３０の傾き、ロールまたはヨーなどの角度情報を含んでもよい。一例として、慣性センサ６３２は、任意の数の加速度計、ジャイロスコープ、傾きセンサであってもよいし、および／またはこれらの組み合わせであってもよい。好ましい実施形態では、慣性センサ６３２は、傾き軸とロール軸に関してジョイスティック・コントローラの方向を感知するようにされた傾きセンサと、ヨー軸に沿って加速度を感知する第１加速度計と、ヨー軸に対する角加速度を感知する第２加速度計とを備えていてもよい。加速度計は、一つ以上の方向に対する質量の変位を感知するセンサを持ち一つ以上のバネにより取り付けられた質量を備えるＭＥＭＳ装置であってもよい。質量の変位に応じたセンサからの信号を用いて、ジョイスティック・コントローラ６３０の加速度を決定することができる。このような技術は、メモリ６０２に保存されプロセッサ６０１で実行可能なプログラムコード命令６０４により実装される。
【０１１９】
一例として、慣性センサ６３２として適した加速度計は、例えばバネによって３点または４点でフレームに弾性結合された単一の質量であってもよい。ピッチ軸とロール軸はフレームを横切る平面内にあり、フレームはジョイスティック・コントローラ６３０に取り付けられる。フレーム（およびジョイスティック・コントローラ６３０）がピッチ軸とロール軸の周りを回転すると、重力の影響により質量が変位し、ピッチおよび／またはロールの角度に応じてバネが伸縮する。質量の変位が感知され、ピッチおよび／またはロールの量に応じて信号に変換される。ヨー軸周りの角加速度またはヨー軸に沿った直線加速度は、感知可能であり角加速度または線形加速度の量に応じて信号に変換されるバネ伸縮または質量の動きの特徴的なパターンを生成する。そのような加速度計装置は、質量の動きあるいはバネの伸縮力を追跡することで、傾き、ロール、ヨー軸周りの角加速度およびヨー軸周りの線形加速度を測定することができる。質量の位置および／または質量にかかる力を追跡する多くの異なる方法があり、これには、抵抗歪みゲージ材料、フォトニック・センサ、磁気センサ、ホール効果デバイス、圧電デバイス、容量センサなどが含まれる。
【０１２０】
さらに、ジョイスティック・コントローラ６３０は、発光ダイオード（ＬＥＤ）等の一つ以上の光源６３４を含んでもよい。光源６３４は、あるコントローラと別のコントローラとを区別するのに用いられてもよい。例えば、ＬＥＤパターンコードを点滅するか保持するかによって一つ以上のＬＥＤでこれを達成することができる。一例として、５個のＬＥＤを線形パターンまたは二次元パターンでジョイスティック・コントローラ６３０上に設けることができる。ＬＥＤを線形配列するのが好ましいが、代わりに、画像取得装置６２３により取得されるＬＥＤパターンの画像を解析するときにＬＥＤ配列の画像平面の決定を容易にすべく、ＬＥＤを長方形パターンまたは円弧状パターンで配置してもよい。さらに、ＬＥＤパターンコードを使用して、ゲーム中にジョイスティック・コントローラ６３０の位置を決定してもよい。例えば、ＬＥＤはコントローラの傾き、ヨー、ロールの区別を助けることができる。この検出パターンは、航空機飛翔ゲーム等のゲームにおけるユーザの感覚を改善するのに役立つ。画像取得装置６２３は、ジョイスティック・コントローラ６３０と光源６３４とを含む画像を捕捉することができる。そのような画像を解析して、ジョイスティック・コントローラの位置および／または方向を決定することができる。この種の解析は、メモリ６０２に保存されプロセッサ６０１で実行されるプログラムコード命令６０４により実装可能である。画像取得装置６２３による光源６３４の画像の捕捉を容易にするために、光源６３４はジョイスティック・コントローラ６３０の二つ以上の異なる側面に、例えば正面と背面（点線で示す）に配置されていてもよい。このように配置することで、画像取得装置６２３は、ユーザによるジョイスティックコントローラ６３０の持ち方に応じてジョイスティックコントローラ６３０の異なる方向について光源６３４の画像を取得することが可能になる。
【０１２１】
加えて、光源６３４は、例えばパルスコード、振幅変調または周波数変調の形態で遠隔測定信号をプロセッサ６０１に提供することができる。このような遠隔測定信号は、どのジョイスティックボタンが押されているか、および／またはそのボタンがどの程度強く押されているかを表すことができる。遠隔測定信号は、パルスコーディング、パルス幅変調、周波数変調または光強度（振幅）変調によって光学信号に符号化することができる。プロセッサ６０１は光学信号から遠隔測定信号を復号し、復号された遠隔測定信号に応じてゲームコマンドを実行する。遠隔測定信号は、画像取得装置６２３により取得されたジョイスティック・コントローラ６３０の画像解析から復号されてもよい。あるいは、装置６０１は、光源６３４からの遠隔測定信号を受信するための専用の別個の光学センサを備えていてもよい。コンピュータプログラムと対話する際の強度決定に伴うＬＥＤの使用については、例えばRichard L. Marksらの共有された米国特許出願第11/429,414号、2006年5月4日出願の「USE OF COMPUTER IMAGE AND AUDIO PROCESSING IN DETERMINING AN INTENSITY AMOUNT WHEN INTERFACING WITH A COMPUTER PROGRAM」（代理人整理番号SONYP052）に記載されており、その全体が参照により本明細書に援用される。加えて、光源６３４を含む画像の解析を、遠隔測定とジョイスティック・コントローラ６３０の位置および／または方向の決定の両方に用いることができる。このような技術は、メモリ６０２に保存されプロセッサ６０１で実行可能なプログラムコード命令６０４によって実装することができる。
【０１２２】
プロセッサ６０１は、画像取得装置６２３により検出された光源６３４からの光学信号、および／またはマイク配列６２２により検出された音響信号から得られた音源位置と特徴の情報とともに、慣性センサ６３２からの慣性信号を使用して、ジョイスティックコントローラ６３０および／またはそのユーザの位置および／または方向を推測することができる。例えば、「音響レーダ」の音源位置および特徴をマイク配列６２２とともに使用して、ジョイスティックコントローラの動きが（慣性センサ６３２または光源６３４により）独立して追跡されている間に移動する音声を追跡することができる。音響レーダにおいて、予め調整されたリスニングゾーンが実行時に選択され、予め調整されたリスニングゾーン外部の音源から生じる音が取り除かれる。予め調整されたリスニングゾーンは、画像取得装置６２３の焦点の大きさまたは視野に対応するリスニングゾーンを含んでもよい。音響レーダの例は、米国特許出願第11/381,724号、2006年5月4日出願、Xiadong Maoの「METHODS AND APPARATUS FOR TARGETED SOUND DETECTION AND CHARACTERIZATION」に詳細に記載されており、参照により本明細書に援用される。プロセッサ６０１に制御信号を与える任意の数の異なるモードの異なる組み合わせを、本発明の実施形態とともに用いることができる。このような技術は、メモリ６０２に保存されプロセッサ６０１により実行可能であるプログラムコード命令６０４により実装可能である。実行時に予め調整されたリスニングゾーンを選択し、予め調整されたリスニングゾーン外部の音源から生じる音を取り除くように一つ以上のプロセッサに指示する一つ以上の命令を選択的に含んでもよい。予め調整されたリスニングゾーンは、画像取得装置６２３の焦点の大きさおよび視野に対応するリスニングゾーンを含んでもよい。
【０１２３】
プログラム・コード６０４は、一つ以上のプロセッサに対し、マイクＭ０．．．ＭＭからの離散時間領域入力信号ｘｍ（ｔ)を生成するように指示し、セミブラインド音源分離でリスニングセクタを使用して有限インパルス応答フィルタ係数を選択して入力信号ｘｍ(ｔ)からの異なる音源を分離させる、一つ以上の命令を選択的に含んでもよい。プログラム６０４は、参照マイクＭ０からの入力信号ｘ０(ｔ)以外の選択された入力信号ｘｍ（t)に対し一つ以上の非整数遅延を適用する命令を含んでもよい。非整数遅延のそれぞれを選択して、マイク配列から得られる離散時間領域出力信号ｙ(ｔ)の信号対雑音比を最適化することができる。参照マイクＭ０からの信号が配列の他のマイクからの信号に対して時間的に最初になるように非整数遅延を選択してもよい。プログラム６０４は、非整数時間遅延Δをマイク配列の出力信号ｙ(ｔ)に導入する命令を含んでもよい。すなわち、ｙ(ｔ＋Δ)＝ｘ(ｔ＋Δ)＊ｂ０＋ｘ(ｔ−ｌ＋Δ)＊ｂｉ＋ｘ(ｔ−２＋Δ)＊ｂ２＋．．．＋ｘ(ｔ−Ｎ＋Δ)ｂＮ。ここで、Δは０と±１の間である。このような技術の例は、米国特許出願第11/381,729号、2006年5月4日出願、Xiadong Maoの「ULTRA SMALL MICROPHONE ARRAY」に詳細に記載されており、参照により本明細書に援用される。
【０１２４】
プログラム・コード６０４は、実行時に、音源を含む予め調整されたリスニングセクタをシステム６００に選択させる一つ以上の命令を含んでもよい。このような命令により、装置は、音源が慣性セクタ内または慣性セクタの特定の側にあるか否かを判定することができる。音源がデフォルトのセクタ内に存在しない場合、実行時、命令はデフォルトセクタの特定の側の異なるセクタを選択する。異なるセクタは、最適値に最も近い入力信号の減衰によって特徴付けることができる。これらの命令は、実行時に、マイク配列６２２からの入力信号の減衰と、最適値への減衰を計算することができる。実行時に、命令によって、一つ以上のセクタへの入力信号の減衰値を求め、減衰が最適値に最も近いセクタを装置に選択させることができる。
【０１２５】
このような技術の例は、例えば、米国特許出願第11/381,725号、2006年5月4日出願、Xiadong Maoの「METHODS AND APPARATUS FOR TARGETED SOUND DETECTION」に記載されており、その開示は参照により本明細書に援用される。
【０１２６】
慣性センサ６３２からの信号が追跡情報入力の一部を与え、一つ以上の光源６３４の追跡により画像取得装置６２３から生成される信号が、追跡情報入力の別の部分を与えてもよい。一例として、クォーターバックが頭を左方向にフェイクで動かした後にボールを右方向に投じるフットボールのテレビゲームでそのような「混在モード」信号を用いることができるが、これに限定されない。具体的には、コントローラ６３０を保持するゲームプレーヤが頭を左に回転させて音を出す一方、コントローラをフットボールであるかのように右方向に振るピッチ動作をすることができる。「音響レーダ」プログラム・コードと連携したマイク配列６２２は、ユーザの声を追うことができる。画像取得装置６２３は、ユーザの頭の動きを追跡するか、または音声やコントローラの使用を必要としない他のコマンドを追跡することができる。センサ６３２は、ジョイスティック・コントローラ（フットボールを表す）の動きを追跡することができる。画像取得装置６２３は、コントローラ６３０上の光源６３４を追跡してもよい。ユーザは、ジョイスティックコントローラ６３０の加速度の量および／または方向が特定値に達することで、またはジョイスティックコントローラ６３０のボタンを押すことで起動されるキーコマンドにより、「ボール」を離すことができる。
【０１２７】
本発明の特定の実施形態では、例えば加速度計またはジャイロスコープからの慣性信号を使用して、ジョイスティック・コントローラ６３０の位置を決定することができる。具体的には、加速度計からの加速信号を一旦時間積分して速度変化を求め、速度を時間積分して位置変化を求めることができる。ある時間での初期位置と速度の値が分かっている場合、これらの値と速度変化および位置変化を用いて絶対位置を求めることができる。慣性センサを用いると、画像取得装置６２３と光源６３４をと用いるよりも早く位置決定することができるが、慣性センサ６３２は「ドリフト」として知られるタイプの誤差の影響を受けることがある。つまり、時間につれて誤差が蓄積して、慣性信号から計算されるジョイスティック６３０の位置（点線で示す）と、ジョイスティックコントローラ６３０の実際の位置との間に不一致Ｄが生じることがある。本発明の実施形態により、そのような誤差に対処するいくつかの方法が可能になる。
【０１２８】
例えば、ジョイスティックコントローラ６３０の初期位置を、現在の計算された位置と等しくなるように再設定することで、ドリフトをマニュアルでキャンセルすることができる。ユーザは初期位置を再設定するコマンドを起動するためにジョイスティックコントローラ６３０の一つ以上のボタンを用いることができる。代わりに、画像取得装置６２３から得られる画像から求められる位置を参照として現在位置を再設定することで、画像ベースのドリフトを実施することができる。このような画像ベースのドリフト補正は、例えばユーザがジョイスティック・コントローラ６３０の一つ以上のボタンを起動するときにマニュアルで実施することができる。代わりに、例えば一定の時間間隔でまたはゲームプレイに応じて、画像ベースのドリフト補正を自動的に実施することもできる。このような技術は、メモリ６０２に保存されプロセッサ６０１で実行可能なプログラムコード命令６０４によって実装可能である。
【０１２９】
特定の実施形態では、慣性センサ信号内の偽（スプリアス）データを補償することが望ましい。例えば、慣性センサ６３２からの信号をオーバーサンプリングし、オーバーサンプリングした信号から移動平均を計算して、慣性センサ信号からスプリアスデータを除去してもよい。ある状況では、信号をオーバーサンプリングし、データポイントの一部のサブセットから高値および／または低値を取り除き、残りのデータポイントから移動平均を計算してもよい。さらに、他のデータサンプリング技術およびデータ操作技術を使用して、慣性センサの信号を調節しスプリアスデータの有意性を除去または低減することができる。信号の性質、信号に対して実行される計算、ゲームプレイの性質、またはこれらのうちの二つ以上の組合せによって技術を選択することができる。このような技術は、メモリ６０２に保存されプロセッサ６０１で実行可能なプログラムコード命令６０４によって実装することができる。
【０１３０】
プロセッサ６０１は、メモリ６０２で保存、読み出しされプロセッサモジュール６０１で実行されるデータ６０６とプログラム６０４のプログラムコード命令とに応じて、上述のように慣性信号データの解析を実行することができる。プログラム６０４のコード部分は、アセンブリ、Ｃ＋＋、ＪＡＶＡ（登録商標）またはいくつかの他の言語などの複数の異なるプログラム言語のうちのいずれか一つに準拠していてもよい。プロセッサ・モジュール６０１は、プログラムコード６０４のようなプログラムを実行するとき特定目的のコンピュータになる汎用コンピュータを形成する。プログラム・コード６０４がソフトウェアで実装され汎用コンピュータ上で実行されると本明細書で述べられているが、当業者であれば、特定用途向け集積回路（ＡＳＩＣ）または他のハードウェア回路等のハードウェアを使用してもタスク管理方法を実装できることを理解するだろう。このように、本発明の実施形態の全体または一部を、ソフトウェア、ハードウェアまたは両方の組合せで実装できることを理解すべきである。
【０１３１】
一実施形態では、プログラムコード６０４は、図５Ｂの方法５１０および図５Ｃの方法５２０、またはこれらの二つ以上の組み合わせと同じような特徴を有する方法を実装する一組のプロセッサ可読命令を含んでもよい。プログラムコード６０４は、一般に、一つ以上のプロセッサに慣性センサ６３２からの信号の解析して位置情報および／または方向情報の生成を指示し、テレビゲームのプレイ中にこの情報を利用する一つ以上の命令を含んでもよい。
【０１３２】
プログラムコード６０４は、実行時に画像取得装置６２３に装置６２３の前の視野を監視させ、視野内の一つ以上の光源６３４を識別し、光源６３４から発せられる光の変化を検出させ、変化の検出に応じてプロセッサ６０１への入力コマンドを起動する一つ以上の命令を含む、プロセッサ実行可能命令を選択的に含んでもよい。画像取得装置とともにＬＥＤを用いたゲームコントローラのアクションの起動は、米国特許出願第10/759,782号、2004年1月16日出願、Richard L. Marksの「METHOD AND APPARATUS FOR LIGHT INPUT DEVICE」に記載されており、参照によりその全体が本明細書に援用される。
【０１３３】
プログラムコード６０４は、実行時に、慣性センサからの信号と、例えば上述したようなゲームシステムへの入力として一つ以上の光源の追跡から画像取得装置により生成される信号とを使用する一つ以上の命令を含む、プロセッサ実行可能な命令を選択的に含んでもよい。プログラムコード６０４は、実行時に慣性センサ６３２のドリフトを補償する一つ以上の命令を含む、プロセッサ実行可能な命令を選択的に含んでもよい。
【０１３４】
本発明の実施形態をテレビゲームコントローラ６３０に関連する例について説明したが、システム６００を含む本発明の実施形態は、慣性検出能力を有し、無線または他の方法により慣性センサ信号を送信する能力を有する任意のユーザ操作可能な本体、成形物体、ノブ、構造等で使用することができる。
【０１３５】
一例として、本発明の実施形態を並列処理システムで実装することができる。このような並列処理システムは、典型的に、別個のプロセッサを用いて並列にプログラム部分を実行するように構成された二つ以上のプロセッサ要素を備える。図７は本発明の一実施形態による一種のセルプロセッサ７００を示す。セルプロセッサ７００を図６のプロセッサ６０１として、または図５Ａのプロセッサ５０２として用いることができる。図７に示す例では、セルプロセッサ７００はメインメモリ７０２と、パワープロセッサ要素（ＰＰＥ）７０４と、複数の相乗作用プロセッサ要素（ＳＰＥ）７０６とを備える。図７に示す例では、セルプロセッサ７００は一つのＰＰＥ７０４と８つのＳＰＥ７０６を備える。このような構成では、ＳＰＥ７０６のうちの７台を並列処理のために使用し、一台を他の７台のうちの一つが故障した場合のバックアップとして確保しておいてもよい。代替的に、セルプロセッサは、複数グループのＰＰＥ（ＰＰＥグループ）と複数グループのＳＰＥ（ＳＰＥグループ）とを備えていてもよい。この場合には、グループ内のユニット間でハードウェア資源を共有することができる。しかしながら、ＳＰＥとＰＰＥは独立した要素としてソフトウェアに見えなければならない。このように、本発明の実施形態は、図７に示す構成の使用に限定されない。
【０１３６】
メインメモリ７０２は、一般に、汎用で不揮発性の記憶装置の場合と、システム構成、データ転送同期、メモリマップされたＩ／Ｏ、Ｉ／Ｏサブシステム等の機能のために用いられる特定目的のハードウェアレジスタまたはアレイの両方の場合を含む。本発明の実施形態では、テレビゲームプログラム７０３がメインメモリ７０２内に常駐してもよい。テレビゲームプログラム７０３は、慣性解析器、画像解析器および音響解析器と、上述の図４、５Ａ、５Ｂまたは５Ｃに関して述べたようにまたはこれらの組み合わせとして構成されたミキサとを備えてもよい。プログラム７０３はＰＰＥ上で実行されてもよい。プログラム７０３は、ＳＰＥおよび／またはＰＰＥ上で実行可能な複数の信号処理タスクに分割されてもよい。
【０１３７】
一例として、ＰＰＥ７０４は、関連するキャッシュＬ１、Ｌ２を持つ６４ビットパワーＰＣプロセッサユニット（ＰＰＵ）であってもよい。ＰＰＥ７０４は汎用処理ユニットであり、（例えばメモリ保護テーブルなどの）システム管理リソースにアクセス可能である。ＰＰＥによって見られるように、ハードウェア資源が明示的に実アドレス空間マッピングされていてもよい。したがって、ＰＰＥは、適当な実効アドレス値を使用して、これらの任意のリソースを直接アドレス指定することができる。ＰＰＥ７０４の主要な機能は、セルプロセッサ７００のＳＰＥ７０６のためのタスク管理とタスク割り当てである。
【０１３８】
一つのＰＰＥのみがセル・ブロードバンド・エンジン・アーキテクチャ（ＣＢＥＡ）のようなセルプロセッサ実装として図７に示されているが、セルプロセッサ７００は、二つ以上のＰＰＥグループに組織された複数のＰＰＥを有していてもよい。これらのＰＰＥグループは、メインメモリ７０２へのアクセスを共有してもよい。さらに、セルプロセッサ７００は、二つ以上のＳＰＥグループを備えてもよい。ＳＰＥグループは、メインメモリ７０２へのアクセスを共有してもよい。このような構成は本発明の範囲内である。
【０１３９】
各ＳＰＥ７０６は、相乗作用プロセッサユニット（ＳＰＵ）と自身のローカル記憶領域ＬＳとを備える。ローカル記憶領域ＬＳは、それぞれが特定のＳＰＵと関連づけられる一つ以上の別個のメモリ記憶領域を有していてもよい。各ＳＰＵは、自身の関連するローカル記憶領域内からの命令（データロード操作とデータ記憶操作を含む）のみを実行するように構成されていてもよい。このような構成では、ローカル記憶ＬＳとシステム７００内のいずれかの場所との間でのデータ転送は、（個々のＳＰＥの）ローカル記憶領域を出入りするデータ転送をするダイレクトメモリアクセス（ＤＭＡ）コマンドをメモリフローコントローラ（ＭＦＣ）から発行することで実行できる。ＳＰＵは、いかなるシステム管理機能も実行しないという点で、ＰＰＥ７０４よりも複雑さの少ない計算ユニットである。ＳＰＵは、一般に単一命令、複数データ（ＳＩＭＤ）能力を有し、割り当てられたタスクを実行するために、データを処理して任意の必要なデータ転送（ＰＰＥによりセットされた特性へのアクセスを受ける）を開始する。ＳＰＵの目的は、より高い計算単位密度を必要とし提供された命令セットを効果的に使用できるアプリケーションを実行可能とすることである。ＰＰＥ７０４によって管理されるシステム内の相当数のＳＰＥによって、広範囲にわたるアプリケーションについて費用効果の高い処理が可能になる。
【０１４０】
各ＳＰＥ７０６は、メモリ保護とアクセス許可情報を保持し処理が可能である関連するメモリ管理ユニットを有する専用のメモリフローコントローラ（ＭＦＣ）を備えることができる。ＭＦＣは、セルプロセッサの主記憶装置とＳＰＥのローカル記憶装置との間のデータ転送、保護および同期の主要な方法を提供する。ＭＦＣコマンドは実行される転送を記述する。データを転送するためのコマンドは、ＭＦＣダイレクトメモリアクセス（ＤＭＡ）コマンド（またはＭＦＣ  ＤＭＡコマンド）と呼ばれることがある。
【０１４１】
各ＭＦＣは、同時に複数のＤＭＡ転送をサポートすることができ、また複数のＭＦＣコマンドを維持かつ処理することができる。各ＭＦＣ  ＤＭＡデータ転送コマンドは、ローカル記憶装置のアドレス（ＬＳＡ）と実効アドレス（ＥＡ）の両方を必要とすることがある。ローカル記憶装置アドレスは、その関連するＳＰＥのローカル記憶領域のみを直接アドレス指定してもよい。実効アドレスにはより一般的なアプリケーションがあることがある。例えば、実効アドレスが実アドレス空間内にエイリアスされる場合、全てのＳＰＥローカル記憶領域を含む主記憶装置を参照することができる。
【０１４２】
ＳＰＥ７０６の間の通信および／またはＳＰＥ７０６とＰＰＥ７０４の間の通信を容易にするために、ＳＰＥ７０６とＰＰＥ７０４は、イベントを合図する信号通知レジスタを含んでもよい。ＰＰＥ７０４とＳＰＥ７０６は、ＰＰＥ７０４がメッセージをＳＰＥ７０６に発信するルータの働きをするスター・トポロジによって結合されてもよい。代わりに、各ＳＰＥ７０６とＰＰＥ７０４は、メールボックスと呼ばれる一方向の信号通知レジスタを有していてもよい。メールボックスはＳＰＥ７０６により使用され、オペレーティングシステム（ＯＳ）の同期をホストすることができる。
【０１４３】
セルプロセッサ７００は、セルプロセッサ７００がマイク配列７１２やオプションの画像取得装置７１３およびゲームコントローラ７３０のような周辺装置と対話する入出力（Ｉ／Ｏ）機能７０８を備えていてもよい。ゲームコントローラユニットは、慣性センサ７３２と光源７３４を備えていてもよい。さらに、要素相互接続バス７１０が上記の様々な構成要素を接続してもよい。各ＳＰＥとＰＰＥは、バスインタフェースユニットＢＩＵを通してバス７１０にアクセスすることができる。セルプロセッサ７００は、プロセッサ内に通常見つかる二つのコントローラを備えてもよい。すなわち、バス７１０とメインメモリ７０２の間でのデータの流れを制御するメモリインタフェースコントローラＭＩＣと、Ｉ／Ｏ７０８とバス７１０の間でのデータの流れを制御するバスインタフェースコントローラＢＩＣである。ＭＩＣ、ＢＩＣ、ＢＩＵおよびバス７１０の要件は様々な実装に対して大きく異なることがあるが、当業者であれば、これらを実装するための機能および回路に精通しているであろう。
【０１４４】
セルプロセッサ７００は、内部割り込みコントローラＩＩＣを備えてもよい。ＩＩＣ構成要素は、ＰＰＥに提示される割り込みの優先度を管理する。ＩＩＣは、他の構成要素からの割り込みを、セルプロセッサ７００がメインシステムの割り込みコントローラを用いることなく処理することを可能にする。ＩＩＣは、第２のレベルコントローラとみなしてもよい。メインシステムの割り込みコントローラは、セルプロセッサ外部から生じる割り込みを処理してもよい。
【０１４５】
本発明の実施形態では、非整数遅延などの特定の計算を、ＰＰＥ７０４および／または一つ以上のＳＰＥ７０６を用いて並列に実行することができる。各非整数遅延計算を、異なるＳＰＥ７０６が利用可能になるにつれて引き受けることができる一つ以上の別個のタスクとして実行することができる。
【０１４６】
上記は本発明の好ましい実施形態の完全な説明であるが、様々な代替形態、修正形態および等価物を使用することができる。したがって、本発明の範囲は、上述の説明を参照して決定されるべきではなく、代わりに、添付の実施形態とそれらの等価物の完全な範囲を参照して決定されるべきである。本明細書に記載の任意の特徴は、好適か否かにかかわらず、本明細書に記載された任意の他の特徴と組み合わせることが可能である。明確に他のかたちで述べられる場合を除いて、特許請求の範囲において、不定冠詞「Ａ」または「Ａｎ」は冠詞の後に続く一つ以上の項目の量のことを指す。「means for」というフレーズを使用して所与の請求項で明確に引用されない限り、添付の請求項は、ミーンズプラスファンクションの限定を含むものとして解釈されるべきではない。
【図１】
0005726811.tif 000002
【図２】
0005726811.tif 000003
【図３】
0005726811.tif 000004
【図４】
0005726811.tif 000005
【図５Ａ】
0005726811.tif 000006
【図５Ｂ】
0005726811.tif 000007
【図５Ｃ】
0005726811.tif 000008
【図６】
0005726811.tif 000009
【図７】
0005726811.tif 000010
【図８Ａ】
0005726811.tif 000011
【図８Ｂ】
0005726811.tif 000012