(57)【要約】      （修正有）【課題】使用者行動と目標行動とを比較し、タイミングオフセットを検出された使用者行動と目標時間の間の相対的変化量として適用するゲーム処理装置を提供する。【解決手段】ゲーム処理装置は、使用者によって実行されるべき、それぞれが関連付けられた目標実行時間を有した相次ぐ目標行動を指示する手段と、検出された使用者行動が前記目標行動と比較される採点ロジックとを備え、前記採点ロジックは、使用者の行動が検出される入力構成と、使用者行動の検出されたシーケンスを目標行動のシーケンスと比較する手段と、該使用者行動のシーケンスと対応する目標行動のシーケンスとの間のタイミング・オフセットを検出する手段とを備え、その後の使用者行動とそれぞれの目標行動との比較は、該タイミング・オフセットを、該検出された使用者行動と該目標時間の間の相対的変位量として適用するように仕組まれている。【選択図】図９
2011098205.tif 000002
【特許請求の範囲】
【請求項１】
ゲーム処理装置であって、
使用者によって実行されるべき、それぞれが関連付けられた目標実行時間を有した、相次ぐ目標行動を指示する手段と、
検出された使用者行動が前記目標行動と比較される採点ロジックとを備え、
前記採点ロジックは、
使用者の行動が検出される入力装置と、
検出された使用者行動のシーケンスを目標行動のシーケンスと比較する手段と、
使用者行動のシーケンスと目標行動の対応シーケンスとの間のタイミング・オフセットを検出する手段と、
を備え、
その後の使用者行動とそれぞれの目標行動を比較するため、前記装置は、タイミング・オフセットを、前記検出された使用者行動と前記目標時間の間の相対的変位量として適用するように仕組まれていることを特徴とするゲーム処理装置。
【請求項２】
請求項１に記載の装置であって、前記使用者行動は使用者による楽音の発生を伴う装置。
【請求項３】
請求項２に記載の装置であって、
前記目標行動は所要の楽音を指示し、
前記使用者行動は前記使用者が楽音を歌唱することを伴い、
前記入力装置はマイクロフォンを備えている装置。
【請求項４】
請求項３に記載の装置であって、前記採点ロジックは、前記使用者によって発せられた楽音が対応する目標楽音の許容分量内にあれば、使用者が目標行動を成功裏に達成したと検出するように動作可能である装置。
【請求項５】
請求項４に記載の装置であって、
前記目標行動は歌唱されるべき所要の単語を指示し、
前記使用者行動は前記所要の単語を歌唱することを伴い、
前記採点ロジックは、前記所要の単語に依存して許容分量を変動させるように動作可能である装置。
【請求項６】
請求項５に記載の装置であって、前記採点ロジックは、前記目標行動が予め定められた組の単語の1つを表している場合に、使用者行動と目標行動の間の比較を実行しないように動作可能である装置。
【請求項７】
請求項２乃至６いずれかに記載の装置であって、前記採点ロジックは、目標楽音と、前記目標楽音に音程では一番近いものである使用者が発した楽音のオクターブ倍の音との間の音程差分を検出するように仕組まれている装置。
【請求項８】
先行請求項のうちいずれか１項に記載の装置であって、前記目標行動は連続した群の目標行動として配列され、前記群は、その間は使用者行動が期待されない休止によって分けられている装置。
【請求項９】
請求項８に記載の装置であって、前記採点ロジックは各休止の後にタイミング・オフセットを検出するように仕組まれている装置。
【請求項１０】
先行請求項のうちいずれか１項に記載の装置であって、前記使用者行動のシーケンスは使用者行動の最初のシーケンスである装置。
【請求項１１】
先行請求項のうちいずれか１項に記載の装置であって、前記採点ロジックは、使用者行動のシーケンスと目標行動のシーケンスの相互相関を複数の見込みタイミング・オフセット値で検出し、前記タイミング・オフセットを、前記検出された相互相関が最大となる見込み値として設定するように仕組まれている装置。
【請求項１２】
請求項１１に記載の装置であって、前記採点ロジックは、前記使用者行動のシーケンスと前記目標行動のシーケンスの間の相互相関が所定以下であればタイミング・オフセットをゼロと設定するように動作可能である装置。
【請求項１３】
先行請求項のうちいずれか１項に記載の装置であって、前記実行目標時間は、関連付けられた目標行動に対する開始時間を規定する装置。
【請求項１４】
先行請求項のうちいずれか１項に記載の装置であって、前記実行目標時間は、関連付けられた目標行動に対する継続時間を規定する装置。
【請求項１５】
使用者行動が目標行動と比較されるゲーム処理の方法であって、
前記方法は、
使用者によって実行されるべき、それぞれが関連付けられた目標実行時間を有した、相次ぐ目標行動を指示することと、
使用者行動を検出することと、
検出された使用者行動のシーケンスを目標行動のシーケンスと比較することと、
前記使用者行動のシーケンスと目標行動の対応するシーケンスとの間のタイミング・オフセットを検出することと、
を備え、
その後の使用者行動とそれぞれの目標行動との比較は、タイミング・オフセットを、前記検出された使用者行動と前記目標時間の間の相対的変位量として適用するように仕組まれている方法。
【請求項１６】
請求項１５による方法を実行するプログラム・コードを有したコンピュータ・ソフトウェア。
【請求項１７】
請求項１６によるコンピュータ・ソフトウェアが提供される媒体。
【請求項１８】
前記媒体は送信媒体である、請求項１７に記載の媒体。
【請求項１９】
前記媒体は保存媒体である、請求項１７に記載の媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は電子ゲーム処理に関する。特定の例はビデオゲーム処理動作の制御を含むが、本発明は、より一般的に他の種類の電子ゲーム処理に適用される。
【背景技術】
【０００２】
従来のビデオゲーム機では、使用者はゲームをビデオモニタ又はテレビ画面上で見て、ハンドヘルド型キーパッド又はジョイスティックを用いてゲームの操作を制御する。ソニーのプレイステーション２（Ｓｏｎｙ（登録商標）ＰｌａｙＳｔａｔｉｏｎ（登録商標）２）などの或る種のゲーム機では、ハンドヘルドのコントローラは、使用者に対しゲーム内で起こっている事象への触覚的フィードバックを与える振動要素と共に、２つのジョイスティック及び使用者が操作する数個のキーを提供する。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
或る種のゲームでは、使用者に（例えばディスプレイ上での）目標行動の指示に応答した特定の行動を実行するように要求する。使用者は、彼の目標行動への応答の正確さを審査される。例えばシステムは、使用者が正しい行動を実行したかどうか、又は、使用者がその行動を正しい時間で実行したかどうかを検査することがある。そのようなゲームの一例は所謂カラオケゲームであり、そこで使用者は一楽曲を形成するために歌われるべき一連の単語を提示される。その楽曲のための伴奏トラックがスピーカーで演奏され、使用者はマイクロフォンに向かって合わせて歌う。使用者は、（例えば）彼の歌唱のピッチ（音程）及びタイミングを審査されることがある。
【課題を解決するための手段】
【０００４】
本発明は、
使用者によって実行されるべき、それぞれが関連付けられた目標実行時間を有した相次ぐ目標行動を指示する手段と、
検出された使用者行動が前記目標行動と比較される採点ロジックとを備え、
前記採点ロジックは、
使用者の行動が検出される入力構成と、
検出された使用者行動のシーケンスを目標行動のシーケンスと比較する手段と、
使用者行動のシーケンスと対応する目標行動のシーケンスとの間のタイミング・オフセットを検出する手段と、
を備え、
その後の使用者行動とそれぞれの目標行動との比較は、該タイミング・オフセットを、検出された使用者行動と目標時間の間の相対的変位量として適用するように仕組まれているゲーム処理装置を提供する。
【０００５】
本発明はこの種の目標行動・使用者行動ゲームの潜在的問題を認識しているが、それは、使用者は行動のシーケンスを、各行動間の相対的タイミングは正確又は良好な状態で正しく完了するかも知れないが、そのシーケンス全体は目標時間に対して時間上オフセットしている（ずれている）可能性があるということである。通常、そのようなシーケンスは、個々の使用者行動それぞれが関連する目標時間を逃しているため、電子ゲームでは得点が低くなる。タイミング・オフセットは使用者の反応時間によって引き起こされることがあり、又は、所謂「カラオケ」ゲームの場合は、使用者の音楽的タイミングのセンスの乏しさによって引き起こされ得る。
【０００６】
本発明は、目標行動のシーケンス及び最初のシーケンスなどの使用者行動から、そのようなタイミング・オフセットが存在するかどうかを査定する。次いでタイミング・オフセットは、このタイミングの問題に難儀している使用者を不利にすることを避ける目的で、それに続く使用者行動に対するタイミング修正として適用される。
【０００７】
本発明は、目標行動は所要の楽音を指示し、使用者行動は前記使用者が楽音を歌唱することを伴い、入力構成はマイクロフォンを備えている、歌唱すなわちカラオケタイプのゲームに特に（独占的にではないが）適用可能である。そのようなゲームにおいて採点ロジックは、該使用者が発した楽音が、対応する目標楽音の許容分量（例えば、ピッチ分量）内にあれば、使用者が目標行動を成功裏に達成したと検出するように動作可能であることが好ましい。
【０００８】
目標行動が歌われるべき所要の単語を指示し、使用者行動が所要の単語を歌唱することを伴う場合、採点ロジックは、その所要の単語に依存して許容分量を変動させるように動作可能であることが好ましい。採点ロジックは、予め定義された単語の組又は音節に関しては採点を試みないように動作可能であることが好ましい。そのような単語の例は、使用者の声のピッチを正確に審査することが比較的難しい、英語の「ｓｓ」又は「ｔｈ」の音声を含んだ単語である。
【０００９】
異なる声域を持つ使用者を不利にすることを避けるため、採点ロジックは、目標楽音と、該目標楽音に音程が最も近似している、使用者が発した楽音のオクターブ倍の音との間の差分を検出するように仕組まれていることが好ましい。
【００１０】
好ましくは、目標行動は連続した目標行動群として配列され、それらの群は、その間は使用者の行動が一切期待されない休止によって分けられている。このことは多くの種類のゲームにおいて使用者に休止期間を与えるのに有用であるが、カラオケタイプのゲームの場合それは一連の流れとしての歌の通常の流れに対応する。
【００１１】
使用者のタイミングがそのような休止時点で変ってしまうかも知れないため、採点ロジックは各休止の後でタイミング・オフセットを検出するように仕組まれていることが好ましい。
【００１２】
採点ロジックは、使用者行動のシーケンスと目標行動のシーケンスの間の相互相関を２つ以上のタイミング・オフセット見込み値で検出し、タイミング・オフセットを、見込み値のうちで検出された相互相関が最大となるものに設定するように仕組まれていることが好ましい。
【００１３】
例としては、実行目標時間は、関連付けられた目標行動に対して開始時間を規定でき、及び／又は関連付けられた目標行動に対して継続時間を規定できる。
【００１４】
本発明は、使用者行動が目標行動と比較されるゲーム処理の方法をも提供し、該方法は、
使用者によって実行されるべき、それぞれが関連付けられた目標実行時間を有した、相次ぐ目標行動を指示することと、
使用者行動を検出することと、
検出された使用者行動のシーケンスを目標行動のシーケンスと比較することと、
使用者行動のシーケンスと対応する目標行動のシーケンスとの間のタイミング・オフセットを検出することと、
を備え、
その後の使用者行動とそれぞれの目標行動との比較は、該タイミング・オフセットを、検出された使用者行動と目標時間の間の相対的変位量として適用するように仕組まれている。
【００１５】
本発明は、上述のような方法を実行するプログラム・コードを有したコンピュータ・ソフトウェアをも提供する。該コンピュータ・ソフトウェアは好ましくは、送信媒体又は保存媒体といった媒体を配設することによって提供される。
【００１６】
本発明の更なるそれぞれの態様及び特徴は、添付の特許請求の範囲に規定されている。
【図面の簡単な説明】
【００１７】
【図１】図１はプレイステーション２の全体的なシステム・アーキテクチャを模式的に示す図である。
【図２】図２エモーションエンジンのアーキテクチャを模式的に示す図である。
【図３】図３はグラフィックス・シンセサイザの構成を模式的に示す図である。
【図４】図４は、本発明の一実施形態に係るプレイステーション２の論理的機能性を示した模式図である。
【図５】図５は楽曲ファイルの一部を模式的に示す図である。
【図６】図６は画面表示を模式的に説明する図である。
【図７】図７は歌い手により良好なタイミングで歌われた楽曲を模式的に示す図である。
【図８】図８はタイミングが不出来な楽曲を模式的に示す図である。
【図９】図９は補正的なタイミングずらしが適用された楽曲を模式的に示す図である。
【発明を実施するための形態】
【００１８】
以下、本発明の実施の形態を、添付の図面を参照して例としてのみ説明する。
【００１９】
図１はプレイステーション２の全体的なシステム・アーキテクチャを模式的に示す。システム・ユニット１０が、該システム・ユニットに接続可能な種々の周辺機器を伴って配設されている。
【００２０】
システム・ユニット１０は、エモーションエンジン１００、グラフィックス・シンセサイザ２００、ダイナミック・ランダムアクセスメモリ（ＤＲＡＭ）を有したサウンド・プロセッサ・ユニット３００、リードオンリーメモリ（ＲＯＭ）４００、コンパクト・ディスク（ＣＤ）用及びデジタル多用途ディスク（ＤＶＤ）用リーダ４５０、ラムバスダイナミック・ランダムアクセスメモリ（ＲＤＲＡＭ）ユニット５００、専用のＲＡＭ７５０を有した入出力プロセッサ（ＩＯＰ）７００を備えている。（オプションの）外付けハードディスクドライブ（ＨＤＤ）３９０が接続されてもよい。
【００２１】
入出力プロセッサ７００は２つのユニバーサル・シリアル・バス（ＵＳＢ）ポート７１５及びｉＬｉｎｋ又はＩＥＥＥ１３９４ポート（ｉＬｉｎｋはソニー・コーポレーションのＩＥＥＥ１３９４標準規格実装）を有している。ＩＯＰ７００は全てのＵＳＢ、ｉＬｉｎｋ及びゲーム・コントローラのデータトラフィックを処理する。例えば使用者がゲームをしている際、ＩＯＰ７００はゲーム・コントローラからデータを受け取り、それをエモーションエンジン１００に差し向け、エモーションエンジン１００はゲームの現況をそれに従って更新する。ＩＯＰ７００は高データ転送速度を促進するためダイレクトメモリアクセス（ＤＭＡ）アーキテクチャを有している。ＤＭＡは、メインメモリからのデータを、ＣＰＵを通さずに機器に転送することを伴う。ＵＳＢインターフェースはオープンホストコントローラ・インターフェース（ＯＨＣＩ）と互換性があり、１．５Ｍｂｐｓから１２Ｍｂｐｓの間のデータ転送速度を処理することができる。これらのインターフェースが設備されていることは、プレイステーション２には潜在的に、ビデオカセットレコーダ（ＶＣＲ）、デジタルカメラ、マイクロフォン、セットトップボックス、プリンタ、キーボード、マウス及びジョイスティックなどの周辺機器と互換性があるということを意味する。
【００２２】
一般に、ＵＳＢポート７１５に接続された周辺機器との上首尾なデータ通信が発生するためには、デバイス・ドライバなどの適切なソフトウェアが配設されるべきである。デバイス・ドライバは極めて周知のものであるためここでは詳細に説明しないが、ただ、当業者ならば、ここに説明された実施の形態においてはデバイス・ドライバ又は同様なソフトウェア・インターフェースが必要であろうことを承知していると思われることは申し添える。
【００２３】
本実施形態では、ＵＳＢマイクロフォン７３０がＵＳＢポートに接続されている。マイクロフォンはアナログ・デジタル変換器（ＡＤＣ）及び基本的なハードウェアベースのリアルタイムデータ圧縮及び符号化構成を含み、その結果音声データが、プレイステーション２のシステム・ユニット１０での復号のために、１６ビットモノＰＣＭ（非圧縮フォーマット）などの適切なフォーマットでマイクロフォン７３０によりＵＳＢポート７１５へと送信されるようになっている。
【００２４】
ＵＳＢポートとは別に、２つの他のポート７０５、７１０は、ゲーム関連情報を保存する独自の不揮発性ＲＡＭメモリカード７２０、ハンドヘルドのゲーム・コントローラ７２５又は、ハンドヘルドのコントローラを模倣したダンス用マットなどの機器（不図示)の接続を可能にする独自のソケットである。
【００２５】
エモーションエンジン１００は、ゲーム用途の三次元（３Ｄ）グラフィックスの高効率シミュレーション向けに特化して設計された１２８ビットの中央演算処理装置（ＣＰＵ）である。エモーションエンジンの構成要素はデータバス、キャッシュメモリ及びレジスタを含み、それらのすべては１２８ビットである。このことが大容量のマルチメディア・データの高速処理を促進する。比較例として従来のＰＣは基本的な６４ビットのデータ・ストラクチャを有している。プレイステーション２の浮動小数点演算性能は６．２ＧＦＬＯＰである。エモーションエンジンは、３ＤグラフィックスデータとＤＶＤデータの同時処理を可能にするＭＰＥＧ２復号回路系をも備えている。エモーションエンジンは、数学的変換及び転換を含む形状演算を実行し、さらに、例えば２つのオブジェクトの間の摩擦の計算などの、シミュレーションオブジェクトの物理に係わる演算をも実行する。それは、イメージレンダリングコマンドのシーケンスを生成し、それはその後グラフィックス・シンセサイザ２００によって利用される。このイメージレンダリングコマンドは表示リストの形式で出力される。表示リストは、グラフィックス・シンセサイザに対し、どの基本グラフィックオブジェクト（例えば、点、線、三角、スプライト）で、及びどの座標で画面に描画するかということを指定する描画コマンドのシーケンスである。このように標準的な表示リストは、頂点を描画するコマンド、多角形の面に陰影を付けるコマンド、レンダービットマップ等を含む。エモーションエンジン１００は非同期的に複数の表示リストを生成することができる。
【００２６】
グラフィックス・シンセサイザ２００は、エモーションエンジン１００によって生成された表示リストのレンダリングを実行するビデオアクセレータである。グラフィックス・シンセサイザ２００は、複数の表示リストを処理し、追跡し、管理するグラフィックス・インターフェースユニット（ＧＩＦ）を含む。グラフィックス・シンセサイザ２００のレンダリング機能は、いくつかの代替標準規格出力イメージフォーマット、すなわち、ＮＴＳＣ／ＰＡＬ、高解像度デジタルＴＶ及びＶＥＳＡ等をサポートするイメージデータを生成することができる。一般に、グラフィックス・システムのレンダリング能力は、どちらもグラフィックス・プロセッサ内に配置されている画素エンジンとビデオメモリの間のメモリ帯域幅によって規定される。従来のグラフィックス・システムは、利用可能な帯域幅を制限しがちである外部バスを介して画素ロジックに接続された外付けビデオランダムアクセスメモリ（ＶＲＡＭ）を用いる。しかし、プレイステーション２のグラフィックス・シンセサイザ２００は単一の高性能チップで画素ロジックとビデオメモリを提供し、それは比較的大容量の毎秒３８．４ギガバイトのメモリアクセス帯域幅を可能にする。このグラフィックス・シンセサイザは、毎秒７５００万の多角形という最高描画能力を達成することが理論的には可能である。テクスチャ、明暗及び透明度などの一連の効果を付けたとしても、持続した速度の毎秒２０００万個という多角形が連続的に描画されることができる。従って、グラフィックス・シンセサイザ２００はフィルムクオリティのイメージをレンダリングすることが可能である。
【００２７】
サウンド・プロセッサ・ユニット（ＳＰＵ）３００は効果的には、デジタル多用途ディスク（ＤＶＤ）に用いられる音声フォーマットであるデジタルシアターサラウンド（ＤＴＳ（登録商標））音やＡＣ−３（ドルビーデジタルとしても知られる）などの３Ｄデジタル音声を認識することができるシステムのサウンドカードである。
【００２８】
付随したスピーカー構成３１０を持つビデオモニタ又はテレビ受像機などの表示及び音声出力デバイス３０５が、グラフィックス・シンセサイザ２００及び音声処理ユニット３００からのビデオ及び音声信号を受信するために接続されている。
【００２９】
エモーションエンジン１００をサポートしているメインメモリは、ラムバス・インコーポレーテッド（Rambus  Incorporated）製造のＲＤＲＡＭ（ラムバス・ダイナミック・ランダムアクセスメモリ）モジュール５００である。このＲＤＲＡＭメモリ・サブシステムはＲＡＭ、ＲＡＭコントローラ及びＲＡＭをエモーションエンジン１００に接続しているバスを備える。
【００３０】
図２は、図１のエモーションエンジン１００のアーキテクチャを模式的に示す。エモーションエンジン１００は、浮動小数点ユニット（ＦＰＵ）１０４、中央演算処理装置（ＣＰＵ）コア１０２、ベクトルユニットゼロ（ＶＵ０）１０６、ベクトルユニットワン（ＶＵ１）１０８、グラフィックス・インターフェースユニット（ＧＩＦ）１１０、割り込みコントローラ（ＩＮＴＣ）１１２、タイマーユニット１１４、ダイレクトメモリアクセス・コントローラ１１６、イメージデータプロセッサユニット１１６、ダイナミック・ランダムアクセスメモリ・コントローラ（ＤＲＡＭＣ）１２０、サブバス・インターフェース（ＳＩＦ）１２２を備え、これらの構成要素は１２８ビットのメインバス１２４を介して接続されている。
【００３１】
ＣＰＵコア１０２は、クロック周波数３００ＭＨｚに設定された１２８ビットプロセッサである。ＣＰＵコアはＤＲＡＭＣ１２０を介して３２ＭＢのメインメモリにアクセスできる。ＣＰＵコア１０２の命令セットはＭＩＰＳ  ＩＩＩ  ＲＩＳＣに基づき、一部のＭＩＰＳ  ＩＶ  ＲＩＳＣ命令と付加的マルチメディア命令も伴う。ＭＩＰＳ  ＩＩＩ及びＩＶは、ＭＩＰＳテクノロジーズ・インク（MIPS  Technologies,  Inc.）独自仕様の縮小命令セットコンピュータ（ＲＩＳＣ）命令セットアーキテクチャである。標準命令は６４ビットの双方向のスーパースケーラであり、それは、２つの命令を同時に実行することができるということを意味する。それに対してマルチメディア命令は、１２８ビット命令を２本のパイプラインを介して使用する。ＣＰＵコア１０２は、１６ＫＢの命令キャッシュ、８ＫＢのデータキャッシュ及び、ＣＰＵによる直接私用使用のために保留されたキャッシュの部分である１６ＫＢのスクラッチパッドＲＡＭを備えている。
【００３２】
ＦＰＵ１０４はＣＰＵコア１０２の第１コプロセッサとして機能する。ベクトル・ユニット１０６は第２コプロセッサとして働く。ＦＰＵ１０４は、浮動小数点積和値演算ロジックユニット（ＦＭＡＣ）及び浮動小数点除算演算器（ＦＤＩＶ）を備えている。ＦＭＡＣとＦＤＩＶは両方とも３２ビット値で演算するので、演算が１２８ビット（３２ビット値の４つ分で構成されている）で実行されたとき、演算が４つの部分すべてに関して正しく実行されることができるようになっている。例えば２つのベクトルを一緒に加算することが、同時にできる。
【００３３】
ベクトル・ユニット１０６及び１０８は数学演算を実行するもので、ベクトル方程式の積算と和算を求めるのに非常に迅速な、本質的に特化したＦＰＵである。それらは和算及び積算演算には浮動小数点積和演算器（ＦＭＡＣ）を用い、除算及び平方根演算には浮動小数点除算器（ＦＤＩＶ)を用いる。これらはマイクロプログラムを保存するための内蔵型メモリを有し、システムの他の部分とベクトル・インターフェース・ユニット（ＶＩＦ）を介してインターフェース接続している。ベクトルユニットゼロ１０６は専用の１２８ビットバス１２４を介してＣＰＵコア１０２に対するコプロセッサとして働くことができるので、実質的に第２の特定用途ＦＰＵである。それに対してベクトルユニットワン１０８は、グラフィックス・シンセサイザ２００への専用のバスを有しており、そのため、完全に独立したプロセッサと見做されることができる。２つのベクトル・ユニットを包含していることで、ソフトウェア開発者は仕事をＣＰＵの異なる部分に分割することができ、ベクトル・ユニットは直列接続又は並列接続いずれかで用いられることができる。
【００３４】
ベクトルユニットゼロ１０６は４つのＦＭＡＣSと１つのＦＤＩＶを備えている。それはコプロセッサ接続でＣＰＵコア１０２に接続されている。それはデータ用に４Ｋｂのベクトルユニット・メモリ、命令用に４Ｋｂのマイクロ・メモリを有している。ベクトルユニットゼロ１０６は表示イメージに関連した物理計算を実行するのに有用である。それはＣＰＵコア１０２とともに主に非パターン的な形状処理を実行する。
【００３５】
ベクトルユニットワン１０８は５つのＦＭＡＣSと２つのＦＤＩＶを備えている。それにはＧＩＦユニット１１０へのダイレクトパスはあるが、ＣＰＵコア１０２へのダイレクトパスはない。それはデータ用に１６Ｋｂのベクトルユニット・メモリ、命令用に１６Ｋｂのマイクロ・メモリを有している。ベクトルユニットワン１０８は変換を実行するのに有用である。それは主にパターン化された形状処理を実行し、生成した表示リストをＧＩＦ１１０に直接出力する。
【００３６】
ＧＩＦ１１０はグラフィックス・シンセサイザ２００に対するインターフェース・ユニットである。それは表示リストパケットの初頭にあるタグ仕様に従ってデータを変換し、複数の送信を相互調整しつつ、グラフィックス・シンセサイザ２００に対し描画コマンドを転送する。割り込みコントローラ（ＩＮＴＣ）１１２はＤＭＡＣ１１６を除く周辺機器からの割り込みを調整する働きをする。
【００３７】
タイマーユニット１１４は１６ビットのカウンタを有した４つの独立型タイマーを備える。タイマーは、バスクロック（１/１６又は１／２５６間隔）又は外部クロックのうちいずれかにより駆動される。ＤＭＡＣ１１６はメインメモリと周辺プロセッサの間、又は、メインメモリとスクラッチパッド・メモリの間のデータ転送を処理する。それは同時にメインバス１２４の調整もする。ＤＭＡＣ１１６の性能最適化が、エモーションエンジンの性能を向上させるための主要な方法である。イメージ処理ユニット（ＩＰＵ）１１８は、圧縮されたアニメーション及びテクスチャイメージを展開するために用いられるイメージ・データ・プロセッサである。それはIピクチャ・マクロブロック復号、色空間変換及びベクトル量子化を実行する。最後に、サブバス・インターフェース（ＳＩＦ）１２２はＩＯＰ７００へのインターフェース・ユニットである。それは独自のメモリと、サウンドチップや記憶装置などの制御入出力デバイスへのバスを有している。
【００３８】
図３はグラフィックス・シンセサイザ２００の構成を模式的に示す。グラフィックス・シンセサイザは、ホスト・インターフェース２０２、セットアップ／ラスタライジング・ユニット２０４、画素パイプライン２０６、メモリ・インターフェース２０８、フレームページバッファ２１４及びテクスチャページバッファ２１６を含むローカルメモリ２１２、及びビデオ変換器２１０を備えている。
【００３９】
ホスト・インターフェース２０２はデータをホスト（この場合、エモーションエンジン１００のＣＰＵコア１０２）に送信する。ホストからの描画データもバッファ・データもこのインターフェースを介して通る。ホスト・インターフェース２０２からの出力はグラフィックス・シンセサイザ２００に供給され、それはエモーションエンジン１００から受け取った頂点の情報に基づき画素を描画するためのグラフィックスを展開し、各画素に関するＲＧＢＡ値、深さ値（すなわち、Ｚ値）、テクスチャ値、フォグ（暈し）値などの情報を計算する。ＲＧＢＡ値は赤、緑、青（ＲＧＢ）色成分を指定し、Ａ（アルファ）成分はイメージオブジェクトの不透明度を現す。アルファ値は完全に透明から完全に不透明まで変動することができる。画素データは画素パイプライン２０６に供給され、それはテクスチャマッピング、フォギング及びアルファブレンディングなどの処理を行い、計算された画素情報に基づき最終描画色を決定する。
【００４０】
画素パイプライン２０６は、最大１６の画素を同時に処理できるように１６個の画素エンジンＰＥ１、ＰＥ２．．．ＰＥ１６を有している。画素パイプライン２０６は３２ビットカラー及び３２ビットＺバッファで１５０MHzで動作する。メモリ・インターフェース２０８はローカルのグラフィックス・シンセサイザ・メモリ２１２からデータを読み出し、そこにデータを書き込む。それは描画画素値（ＲＧＢＡ及びＺ）を画素演算の最後に書き込み、メモリからフレームバッファ２１４の画素値を読み出す。フレームバッファ２１４から読み出したこれらの画素値は画素テスト又はアルファブレンディングのために用いられる。メモリ・インターフェース２０８はまた、フレームバッファの現行内容のＲＧＢＡ値をローカルメモリ２１２から読み出す。ローカルメモリ２１２は、グラフィックス・シンセサイザ２００に内蔵された３２Mビット（４MB）メモリである。それはフレームバッファ２１４、テクスチャバッファ２１６及び３２ビットのＺバッファ２１５として編成されることができる。フレームバッファ２１４は色情報などの画素データが保存されるビデオメモリの一部である。
【００４１】
グラフィックス・シンセサイザは３Ｄ形状に対して視覚的詳細を付与する２Ｄから３Ｄテクスチャマッピングプロセスを用いる。各テクスチャは３Ｄイメージオブジェクトを包囲してよく、３Ｄグラフィックイメージを与えるために引き伸ばしたり歪曲したりすることができる。テクスチャバッファはイメージオブジェクトのためのテクスチャ情報を保存するために用いられる。Ｚバッファ２１５（深さバッファとしても知られる）は画素の深さ情報を保存するために利用可能なメモリである。イメージは図形要素すなわち多角形として知られる基本的な基礎的要素から構築される。多角形がＺバッファリングによりレンダリングされると、各画素の深さ値はＺバッファに保存されている対応値と比較される。Ｚバッファに保存されている値がこの新たな画素値の深さより大である又は等しい場合は、この画素は可視的であると判断され、そのため、それはレンダリングされるべきでありＺバッファは新たな画素深さで更新されることになる。しかしＺバッファ深さ値が新規画素深さ値よりも小さかった場合、その新規画素値は既に描画されたものに及ばず、従ってレンダリングされない。
【００４２】
ローカルメモリ２１２は、フレームバッファ及びＺバッファにアクセスするための１０２４ビットの読み出しポート及び１０２４ビットの書き込みポート、及びテクスチャ読み出しのための５１２ビットポートを有している。ビデオ変換器２１０はフレームメモリの内容を特定の出力フォーマットで表示するように動作可能である。
【００４３】
図４は、本発明の実施形態に関するプレイステーション２の論理機能を示した模式図である。図４に示すブロックの機能は、主に図１に示したプレイステーション２の部品による適切なソフトウェアの実行によりもちろん実行されるが、その関連するプレイステーション２の特定の部品を以下に列挙する。ソフトウェアはディスク又はＲＯＭ記憶装置及び  ／又はインターネット接続などの送信媒体を介して提供されることができる。
【００４４】
カラオケゲームを実行するには、制御ロジック８００はディスク保存媒体８１０からオーディオ伴奏トラックの再生を始動する。オーディオ再生は再生ロジック８２０により処理されて、テレビ受像機３０５の一部をなす増幅器３０７及びこちらもテレビ受像機の一部をなすスピーカー３１０を通じて行われる。
【００４５】
オーディオトラックに伴うビデオ信号の再生又は生成も再生ロジック８２０によって処理される。背景イメージはディスク８１０に保存されていてもよいし、代わりに合成されてもよい。歌われるべき単語を表すグラフィックオーバーレイ及びピッチ及びタイミングの指示も、以下に説明する楽曲ファイル８３０からのデータに応答して生成される。出力ビデオ信号はテレビ受像機３０５の画面上に表示される。
【００４６】
マイクロフォン７３０も再生ロジック８２０に接続されている。再生ロジック８２０はマイクロフォンからのデジタル化されたオーディオ信号をアナログ信号に変換して戻し、使用者が自らの声をスピーカー３１０から聞くことができるように増幅器３０７に供給する。
【００４７】
以下、楽曲ファイルについて説明する。
【００４８】
楽曲ファイル８３０は、使用者が現行の楽曲を完遂するために歌わなければならない楽音を規定したデータを保存している。図５に楽曲ファイルの例が模式的に示されている。楽曲ファイルはＸＭＬフォーマットで表示されており、一分毎の拍数（ビーツ・パー・ミニット、ＢＰＭ）で表した楽曲のテンポの指標で開始する。次の項は分解度の指標、すなわち、その楽曲ファイルに出ている音の長さ記号には何分の一拍が用いられているかの指標である。図５の例では、分解は「１６分音符」でテンポは９６ＢＰＭであり、それは、音の長さ値の「１」が４分の１拍に相当、言い換えると、１／３８４分であるということを意味している。
【００４９】
いくつかの所謂「楽曲要素」が続く。これらの第１番目は「楽節マーカー」である。楽節マーカーは楽曲を都合の良い区分に分けるために用いられ、それは歌詞の楽節又はフレーズに符合することが多い。楽節の切れ目は、その間使用者は歌うことを期待されない休止と（常にではないが）対応していることが多い。休止は、楽曲の出だしの小節、連続した旋律又は続いた楽節間の途切れ、又は楽曲の終わりの小節を表していることがある。楽節マーカー自体では休止がどのくらいの長さになるかを規定することはない。それは実際、特定の継続時間の間ピッチすなわち「ｍｉｄｉ音」値をゼロ（すなわち、音符がない）に設定する、直後の楽曲要素によって規定される。
【００５０】
ｍｉｄｉノート値がゼロでない後続の楽曲要素では、これは使用者が歌うことを期待されている特定のピッチを表す。このｍｉｄｉ音階では、中央Ｃを数値６０で表す。中央Ｃより上の、標準周波数が４４０Ｈｚである音Ａは、ｍｉｄｉ番号６９で表される。各オクターブはｍｉｄｉ音階中の１２のスパンで表されるので、（例えば）上のＣ（中央Ｃより上の）はｍｉｄｉノート値７２で表される。
【００５１】
或る種のシステムでは、ｍｉｄｉノート値０は下のＣ（約８．１７５Ｈｚ）に割り当てられているが、本実施形態では、ｍｉｄｉノート値０は音が期待されていない休止を指すことに留意されたい。
【００５２】
ゼロでない各ｍｉｄｉノート値には伴われた歌詞がある。これは単語の一部、単語全体又は（状況によっては）一語より多い場合さえあり得る。単語が空白であることもあり得、例えば（ＸＭＬでは）ＬＹＲＩＣ＝''''となる。
【００５３】
こうして、楽曲要素はそれぞれピッチ、継続時間及び歌詞を規定する。
【００５４】
現行例では、楽曲ファイルは、表示用の歌詞と、使用者が歌うことを期待されているピッチ及び音の長さを規定する。それは、使用者に聞こえて実際使用者が楽曲を歌うことを促す伴奏トラックを規定しない。伴奏トラックは、例えば従来のオーディオ録音のように別個に録音されている。この構成は、伴奏トラックの再生と楽曲ファイルからのデータ読み出しが関連したタイミング（例えば実質的に同時に）で開始する必要があることを意味し、それは制御ロジック８００が処理する事項である。しかし、別の実施形態では楽曲ファイルが伴奏トラックをも、例えばｍｉｄｉシンセサイザーによる音声へと合成されるシーケンスのｍｉｄｉ音として（図４には示さないが、実際図１のＳＰＵ３００で実施されている）規定することができる。
【００５５】
図４に戻ると、音クロック発生器８４０は楽曲ファイル８３０からテンポと分解の値を読み出し、クロック信号を適切な速度で供給する。特に、その速度はテンポに各拍の細分を掛けたものである。従って、例えばテンポ９６で分解が１６分音符（クォーター・ビート）であれば、音クロックは９６x４ＢＰＭ、すなわち３８４ＢＰＭで稼動する。テンポ９０で分解が８分音符（ハーフ・ビート）であれば、音クロックは１８０（９０x２）ＢＰＭで稼動し、同様に続く。
【００５６】
音クロックは各楽曲要素の楽曲ファイル８３０からの読み出しを開始するため、及び、使用者の声のピッチの検出を制御するためにも用いられる。
【００５７】
ピッチの検出に関しては、ＵＳＢマイクロフォン７３０からの信号もピッチ検出器８５０に供給される。これは、音クロックによって規定され、使用者の声のピッチをその中で検出するための一時的なウィンドウ中に動作する。言い換えると、使用者の声のピッチは音クロック（この例では毎分３８４回）の周波数に等しいサンプリング速度でサンプリングされる。ピッチ検出器は、１９６９年４月８日〜１０日にブルックリン・ポリテクニック・インスティチュートで開催された「通信におけるコンピュータ処理シンポジウム」にて、ベル電話研究所のＡ．マイケル・ノルによって発表された論文「調和積スペクトルによる人の音声ピッチ求出−ハーモニック・サム・スペクトラム及び最大確からしさ予測」（"Pitch  Determination  of  Human  Speech  by  the  Harmonic  Product  Spectrum.  The  Harmonic  Sum  Spectrum,  and  a  Maximum  Likelihood  Estimate",  A.  M
ichael  Noll,  Bell  Telephone  Labs  -  presented  at  the  Symposium  on  Computer  Processing  in  Communications,  Polytechnic  Institute  of  Brooklyn,  April  8-10,  1969）に記載されているような周知のピッチ検出技法を用いている。検出されたピッチは上述したようなｍｉｄｉ音階上の数値に変換される。そのピッチ値はバッファレジスタ８６０に供給され、そこから比較器８７０に供給される。楽曲ファイル８３０からの対応するｍｉｄｉノート値もまた、音クロックの制御の下に読み出され、比較器８７０に受け渡される前に別のバッファレジスタ８８０に供給される。
【００５８】
レジスタ８８０は楽曲ファイルからのｍｉｄｉノート値をバッファリングする。レジスタ８６０は、特定数の連続した音クロック期間にわたる使用者の歌唱各々に関して発生した検出ｍｉｄｉノート値を保存する。これらのデータは以下に説明する「相互相関検査」に用いられる。
【００５９】
比較器は楽曲ファイルからのｍｉｄｉノート値を、検出されたピッチを表すｍｉｄｉノート値と比較するように仕組まれている。音ファイル内の楽曲要素が、継続時間１より大きい音を表していれば、検出されたピッチ値と楽曲ファイルからの正しいピッチ値との間の絶対差分は平均化される。比較器はモジュロ１２演算で動作する。このことは、使用者のピッチでの１２の倍数の誤差（すなわち、１つまたは複数の全オクターブの誤差）は、使用者が正しい音にどれだけ近かったかという審査では軽視され、１オクターブよりも大きい誤差は、検出されたピッチが正しい音と実際同じオクターブにあったかの如く取り扱われるということを意味する。このことは、使用者がレジスタ又は自らの通常の声域に関して不利にされることがないことを保証する。
【００６０】
採点の目的で、比較器は、使用者が所要のピッチの一定の閾値内でピッチを達成したかどうかを検出する。閾値はｍｉｄｉ音階上で表されるので、例えば閾値はｍｉｄｉ音階上の±２．５であり得る。（音はｍｉｄｉ音階では整数でのみ表現されるが、一楽曲要素の継続期間にわたる使用者のピッチのサンプリング値を平均化するので、現行実施形態においては分数閾値に実際に意義がある。）この閾値はゲームの難易度に応じて、「簡単」レベルで高く、「難」レベルで低くなるように設定されてもよい。
【００６１】
任意選択で、比較器は現行歌詞に応じて、特定の音を審査対象から除外することができる。これは、「ｓｓ」又は「ｔｈ」の音を含んだ特定の歌詞は、使用者の声のピッチ検出を難しくするからである。使用者の得点を不利にすることを回避するため、そのような単語が歌われる際は比較は試みられない。そのような単語は、楽曲ファイル内の現行歌詞を「難しい」単語のリストと比較することにより、又は、現行歌詞内の特定の文字パターンを検出することにより、又は、楽曲要素に設定されたフラグにより検出されることができる。
【００６２】
得点生成ロジック８９０は比較器８７０から比較の結果を受け取り、それを基に使用者得点を生成する。
【００６３】
時間オフセット、すなわちある音を歌うに際した目標時間と、使用者がその音を歌った実際の時間の間の遅れ又は進み、を検出するために相互相関検査を実行し、続いてその使用者の採点中にその時間オフセットを組み込むために、得点生成ロジックはレジスタ８６０、８８０による比較器８７０への値の出力を制御する。例えば、時間オフセットが楽曲中の「楽節」の最初の部分で検出され、その時間オフセットはその楽節の残りの部分で使われることができる。
【００６４】
この操作がどのように働くかを説明するため、その楽曲で「楽節」の最初の３つの音である、楽曲によって規定された３連続音の組の例についてまず考察する。この例では、この３音の総長さは６音クロック期間であることが見て取れる。
【００６５】
【表１】
2011098205.tif 000003
【００６６】
使用者のピッチ（すなわち、マイクロフォンを通した使用者からの任意の入力のピッチ）は各音クロック期間毎に検出され、レジスタ８６０内でバッファされる。比較器８７０は次いで、要求音への使用者の貢献を、そのシーケンスの目標開始時間から±３音クロック期間離れて要求音と比較するために、直列、並列又は別の配列で一組の比較を実行する。このことは、最初の２音N１及びN２のみが、タイミング・オフセットを設定するための
プロセスに考慮されるということを意味するが、その理由は、それらの総長さが３クロック期間に加算されるためである。従って、使用者が完璧なタイミングで歌うなら、予期されるピッチの比較は以下のようになる。
【００６７】
【表２】
2011098205.tif 000004
【００６８】
しかし、現実施形態は、使用者が必ずしも完璧なタイミングで歌わずともよく、早まって或いは遅れて歌を開始することを許容している。従って比較器８７０は、±３音クロック期間の遅れ／進みの範囲にわたって一連の比較を実行する。一方の極端において、すなわち、使用者が３音クロック分早すぎる歌い出しをしたかどうかを検査するには、そのような比較は以下のようになり得る。
【００６９】
【表３】
2011098205.tif 000005
【００７０】
他方の極端において、すなわち、使用者が３音クロック分遅すぎる歌い出しをしたかどうかを検査するには、比較は以下のようになり得る。
【００７１】
【表４】
2011098205.tif 000006
【００７２】
上述したものと類似した閾値が、時間オフセットを検出する相互相関検査の間使用される。相互相関検査は、要求音及びそれらの関連したタイミングに最も近い既歌唱音を検索するが、それらは、要求音との差分が２半音（Ｍｉｄｉノート値２）の閾値を超えていた場合、これらの目的からは無視される。（使用者を採点するために、その使用者がどれ程うまく歌ったかに関する時間オフセットを勘案した引き続いた分析に、上述のように可変閾値も用いられる。）
【００７３】
従って、現行例では、そのような比較が全部で７つ実行される。各比較は３つの結果、すなわち、検査群内の３音クロック期間に関するピッチ誤差を提供する。一実施形態において、これらの３つの結果は合わされて（例えば合算されて）、各あり得る遅れ／進み期間に関する単一の出力値を与える。別の実施形態においては、最初の音クロック期間のみのピッチが考慮される。
【００７４】
相互相関検査からの出力の組の中には通常、単一の相互相関「ピーク」すなわち、通常、３音クロック期間（又は最初の音クロック期間）における使用者のピッチと目標ピッチとの間で最大の相互相関を与える遅れ／進みの値がある。当業者ならば、出力値の提示方法次第で、それは最高出力値とも最低出力値ともなり得ることを理解するはずである。
【００７５】
そのような単一のピークが存在することを前提にすると、その値はその楽節の残りの部分にわたり時間オフセットとして用いるために持ち越される。例えば、オフセットが−３音クロック期間である（すなわち、使用者が３音クロック期間分早すぎる歌い出しをした）ときにピークが発生するということが判明した場合、その楽節の残りの部分では、それ以降の比較はすべて、目標ピッチと、その使用者が３クロック期間早く歌ったピッチの間が対象となる。そのオフセットは楽曲ファイルの次の楽節マーカーのところでリセットされ、上述した相互相関検査が繰り返される。
【００７６】
上述のように相互相関の検出はその３クロック期間に適用されることができるし、或いは、目標シーケンスの最初の音に対して最も一致度が高いものを単に探索することに適用されることもできる。
【００７７】
プレーヤーの歌唱が早すぎれば、歌われた音と、要求音との間の最も近似した適合が選択される。最も近い適合が十分に近くない、すなわち、２半音の閾値を超えた差分があればオフセットは０に設定されタイミング補正は行われない。複数の音が同程度によく適合した場合、目標シーケンスの最初の音に適合するピッチを有した最も先に歌われた音が、オフセットを決定するために用いられることができる。歌唱が遅れていた場合、単純に最も近い音を選択する。適合が２音あれば、すなわち、２つの相互相関「ピーク」が存在すれば、慣例は一番先に発生した（すなわち、時間的に一番前の）音又はピークを選択するために設定される。
【００７８】
このことを一般化すると、ピークが全くなかった（使用者が全く歌わなかった場合そうなり得る）場合、その楽節に対してゼロのオフセットが使われる。
【００７９】
新たな楽節の出だしにおいて、比較器はその楽節の最初の３音クロック期間のピッチを、ｍｉｄｉノート値がゼロである最初の音（もし存在するならば）は除外して検出することができる。その楽節に３音未満のクロック期間がある場合は、全ての音の総体が検出される。次いでこれは相互相関検査のためになされなければならない比較の数、及び、それらの比較のうち最後のものを完了できる時間を決定する。別法として、比較がハードウェアで実行される場合は特に、固定数の比較を実行し、相互相関検査には特定数の比較のみを用いることが便利であろう。上述した構成では、相互相関検査は各楽節の出だし付近で一度実行され、検出された補正期間はその楽節の残りの部分へと繰り越される。もちろん、実行できる別案は数多くある。例えば、相互相関検査は、楽節の流れの中で時間オフセットが修正されることができるように、新たに歌われた音ごとに実行、或いは、新たに歌われた音の各組の後（例えば、３音すなわち音クロック期間毎）に実行されることができる。この場合、楽節中の時間オフセットのばらつきを制限するために、フィルタリング操作を含めることが望ましい。例えば単純な構成においては、単一の楽節中での一定の最大ばらつき（例えば±１音クロック期間）のみが、時間オフセットの相次いだ検出の合間では許容できるものである。
【００８０】
別の変形形態では、時間オフセットは例えば楽曲の出だしで一度検出されることができ、同じ時間オフセットがその楽曲の残りの部分に使用される。
【００８１】
相互相関検査はピッチ以外の特徴を用いることができる。例えば、周知の音声検出ロジックが、使用者が歌うべきであった歌詞を検出するために用いられることができ、その検出は上述のような±ｎ音クロック期間の範囲にわたり実行される。音声検出システムは、使用者がある単語を言ったかどうかに関する絶対的な回答を与えない傾向があるが、むしろ、その単語が話されたという見込み値を与える。従って、相互相関検査は、使用者が最初のいくつかの音に対して正しい単語を言った（歌った）可能性のあるオフセット期間にわたり最大の統合的可能性を探求することができる。音声検出器の出力はピッチの検出と結合されて、使用者が遅れ／進み期間の各期待値で歌っていたかどうかの統合的見込み値を提供する。
【００８２】
最大許容時間オフセットはゲームのレベル（例えば、簡単、普通、難しい）に応じて設定できる。「簡単」なゲームレベルでは、例えば±３音クロック期間の時間オフセットが許容されることができるが、「難しい」ゲームのレベルでは例えば最大限でも±１音クロック期間の時間オフセットが許容される。
【００８３】
図４は、説明を明確にするために一組の論理ブロックとしての実施形態の動作を説明した。もちろんこのブロックはハードウェアで実装、又はセミプログラマブルなハードウェア（例えば、フィールドプログラマブル・ゲートアレイ）で実装されることができるものの、好都合にはこれらのブロックを、適切なソフトウェアの制御下で図１に示したプレイステーション２の部品によって実装することができる。どのようにしてこれを達成できるかという一例を以下に示す。
【００８４】
【表５】
2011098205.tif 000007
【００８５】
図６は、テレビ受像機３０５上の実例画面表示を模式的に説明する。今の歌詞９１０がハイライトされた状態で、歌われるべき歌詞９００が水平にスクロールする列で現れる。今の歌詞の検出は、楽曲ファイル内の楽曲要素を通る音クロックにより、各楽曲要素に関して指定されたクロック期間の数を勘案してなされる。
【００８６】
歌われるべきピッチ及び各音の長さの模式表示は横棒９２０で与えられている。それらは楽曲ファイル内の楽曲要素内のピッチ値（ｍｉｄｉノート値）から派生しているが、画面上ではそれらはピッチ又は音の長さの明確な指標を提示することはせず、全体的な傾向を示唆するべく仕組まれている。従って、次の音が現在の音よりも低ければ、棒９２０は画面上で、２つの音の間のピッチの差分に必ずしもいくらか比例した状態でなくてよいが若干低い位置に現れる。
【００８７】
破線９３０はピッチ検出器によって検出された、使用者の各音を歌おうとする試みを模式的に示す。使用者の音が低ければ、破線は対応した目標音を表す線９２０よりも画面上で下のほうに描かれる。使用者の音が高ければ、破線は線９２０よりも高い位置に描かれる。同様に、遅れた又は早まった使用者の音は、対応する線９２０の右側又は左側に示される。前のように、線の間の位置的差分は任意のピッチ又はタイミング差分に比例しているというよりも模式的なものである。
【００８８】
図７はタイミングが完璧な歌い手を模式的に示す。各目標音９４０（音Ｃ、Ｂ、Ｃ、Ｄ、Ｄ．．で示す）は９５０で厳密に正しい時間で歌われている。
【００８９】
図８はＣ、Ｂ、Ｃ、Ｄ、Ｄ音の正確なシーケンスが歌われたが、それらは遅れて歌われている。上述した指標がないため、１つを除いた全ての音は間違っているとの審査、及び著しく低いまたは高くなっていると審査されることになる。
【００９０】
図９において、音は全て遅れて歌われているが、タイミング・オフセット９６０が適用されて、その結果コンスタントな度合いの遅れはレジスタ８６０、８８０によって補正される。使用者は高得点を与えられる。
【００９１】
上述した本発明の実施形態が少なくとも部分的にでもソフトウェア制御のデータ処理装置を用いて実装される限り、そのようなソフトウェア制御を提供するコンピュータ・プログラム及びそのようなコンピュータ・プログラムが保存されている保存媒体は、本発明の態様として想定されることが理解されよう。
【符号の説明】
【００９２】
１０  システム・ユニット
１００  エモーションエンジン
１０２  中央演算処理装置（ＣＰＵ）コア
１０４  浮動小数点ユニット（ＦＰＵ）
１０６  ベクトルユニットゼロ（ＶＵ０）
１０８  ベクトルユニットワン（ＶＵ１）
１１０  グラフィックス・インターフェースユニット（ＧＩＦ）
１１２  割り込みコントローラ（ＩＮＴＣ）
１１４  タイマーユニット
１１６  ダイレクトメモリアクセス・コントローラ
１１６  イメージデータプロセッサユニット
１２０  ダイナミック・ランダムアクセスメモリ・コントローラ（ＤＲＡＭＣ）
１２２  サブバス・インターフェース（ＳＩＦ）
１２４  メインバス
２００  グラフィックス・シンセサイザ
２０２  ホスト・インターフェース
２０４  セットアップ／ラスタライジング・ユニット
２０６  画素パイプライン
２０８  メモリ・インターフェース
２１０  ビデオ変換器
２１２  ローカルメモリ
２１４  フレームページバッファ
２１５  Ｚバッファ
２１６  テクスチャページバッファ
３００  サウンドプロセッサユニット
３０５  テレビ受像機
３０７  増幅器
３１０  スピーカー
３９０  ハードディスクドライブ（ＨＤＤ）
４００  リードオンリーメモリ（ＲＯＭ）
４５０  ＣＤ・ＤＶＤ
５００  ラムバスダイナミック・ランダムアクセスメモリ（ＲＤＲＡＭ）ユニット
７００  入出力プロセッサ（ＩＯＰ）
７１５  ＵＳＢポート
７２０  不揮発性ＲＡＭメモリカード
７３０  ＵＳＢマイクロフォン
７５０  専用のＲＡＭ
８００  制御ロジック
８１０  ディスク保存媒体
８２０  再生ロジック
８３０  楽曲ファイル
８４０  音クロック発生器
８５０  ピッチ検出器
８６０、８８０  レジスタ
８７０  比較器
９００  歌われるべき歌詞
９１０  今の歌詞
９２０  横棒
９３０  破線
９４０  各目標音
【図１】
2011098205.tif 000008
【図２】
2011098205.tif 000009
【図３】
2011098205.tif 000010
【図４】
2011098205.tif 000011
【図５】
2011098205.tif 000012
【図６】
2011098205.tif 000013
【図７】
2011098205.tif 000014
【図８】
2011098205.tif 000015
【図９】
2011098205.tif 000016
【手続補正書】
【提出日】平成22年12月22日(2010.12.22)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ゲーム処理装置であって、
使用者によって実行されるべき、それぞれが関連付けられた目標実行時間を有した、相次ぐ目標行動を指示する手段と、
検出された使用者行動のタイミングと前記目標行動の目標実行時間とを比較する採点ロジックと
を備え、
前記採点ロジックは、
使用者の行動を検出する入力装置と、
検出された使用者行動のシーケンスのタイミングを、対応する目標行動のシーケンスの目標実行時間と比較する手段と、
使用者行動の楽節の最初の部分のタイミングと、対応する目標行動のシーケンスの目標実行時間との間のタイミング・オフセットを検出する手段と
を有し、
当該ゲーム処理装置は、
その後の使用者行動と、対応する目標行動とを比較する場合に、楽節の最初の部分において検出されたタイミング・オフセットを、前記目標行動を指示する手段によって使用者に指示される目標行動のタイミングに影響を与えることなく、前記楽節の残りの部分において検出された使用者行動に対するタイミングの補正値として適用するように仕組まれていることを特徴とするゲーム処理装置。
【請求項２】
請求項１に記載の装置であって、
前記使用者行動には、使用者による歌唱が含まれる装置。
【請求項３】
請求項２に記載のゲーム処理装置であって、
前記目標行動は、所要の音程を指示し、
前記使用者行動は、指示されたタイミングで前記使用者が歌唱することであり、
前記入力装置はマイクロフォンを備えているゲーム処理装置。
【請求項４】
請求項３に記載のゲーム処理装置であって、
前記採点ロジックは、
前記使用者によって発せられた音の音程と、目標となる音程との差が予め定められた閾値以内にあれば、使用者が目標行動を成功裏に達成したと検出するように動作可能であるゲーム処理装置。
【請求項５】
請求項２から４いずれか一項に記載のゲーム処理装置であって、
前記採点ロジックは、
目標となる音と使用者が発した音との音程の差を検出して、これらの音の間において、オクターブの整数倍の音程の差を無視するように仕組まれているゲーム処理装置。
【請求項６】
請求項１から５のいずれか一項に記載のゲーム処理装置であって、
前記目標行動は、連続した群の目標行動として配列され、
前記群は、その間は使用者行動が期待されない休止によって分けられているゲーム処理装置。
【請求項７】
請求項６に記載の装置であって、
前記採点ロジックは各休止の後にタイミング・オフセットを検出するように仕組まれているゲーム処理装置。
【請求項８】
請求項１から７のいずれか一項に記載のゲーム処理装置であって、
前記採点ロジックは、
使用者行動のシーケンスと目標行動のシーケンスの相互相関を複数の見込みタイミング・オフセット値で検出し、前記タイミング・オフセットを、前記検出された相互相関が最大となる見込み値として設定するように仕組まれているゲーム処理装置。
【請求項９】
請求項８に記載のゲーム処理装置であって、
前記採点ロジックは、
前記使用者行動のシーケンスと前記目標行動のシーケンスの間の相互相関が所定以下であればタイミング・オフセットをゼロと設定するように動作可能であるゲーム処理装置。
【請求項１０】
請求項１から９のいずれか一項に記載のゲーム処理装置であって、
前記実行目標時間は、関連付けられた目標行動に対する開始時間を規定するゲーム処理装置。
【請求項１１】
請求項１から１０のいずれか一項に記載のゲーム処理装置であって、
前記実行目標時間は、関連付けられた目標行動に対する継続時間を規定するゲーム処理装置。
【請求項１２】
使用者行動が目標行動と比較されるゲーム処理の方法であって、
前記方法は、
使用者によって実行されるべき、それぞれが関連付けられた目標実行時間を有した、相
次ぐ目標行動を指示するステップと、
使用者行動を検出するステップと、
検出された使用者行動のシーケンスのタイミングを、対応する目標行動のシーケンスの目標実行時間と比較するステップと、
前記使用者行動の楽節の最初の部分のタイミングと、対応する目標行動のシーケンスの目標実行時間との間のタイミング・オフセットを検出するステップと、
その後の使用者行動と、対応する目標行動とを比較する場合に、楽節の最初の部分において検出されたタイミング・オフセットを、目標行動を使用者に指示するタイミングに影響を与えることなく、前記楽節の残りの部分において検出された使用者行動に対するタイミングの補正値として適用するステップと
を備える方法。
【請求項１３】
請求項１２による方法を実行するプログラム・コードを有したコンピュータ・ソフトウェア。
【請求項１４】
請求項１３によるコンピュータ・ソフトウェアが提供される媒体。
【請求項１５】
前記媒体は送信媒体である、請求項１４に記載の媒体。
【請求項１６】
前記媒体は保存媒体である、請求項１４に記載の媒体。
【外国語明細書】
2011098205.tif 000017
2011098205.tif 000018
2011098205.tif 000019
2011098205.tif 000020
2011098205.tif 000021
2011098205.tif 000022
2011098205.tif 000023
2011098205.tif 000024
2011098205.tif 000025
2011098205.tif 000026
2011098205.tif 000027
2011098205.tif 000028
2011098205.tif 000029
2011098205.tif 000030
2011098205.tif 000031
2011098205.tif 000032
2011098205.tif 000033
2011098205.tif 000034
2011098205.tif 000035
2011098205.tif 000036
2011098205.tif 000037
2011098205.tif 000038
【図１】
2011098205.tif 000039
【図２】
2011098205.tif 000040
【図３】
2011098205.tif 000041
【図４】
2011098205.tif 000042
【図５】
2011098205.tif 000043
【図６】
2011098205.tif 000044
【図７】
2011098205.tif 000045
【図８】
2011098205.tif 000046
【図９】
2011098205.tif 000047