遅延測定システムおよび遅延測定方法
【課題】テレビ等の表示装置に画像や音声を出力する場合に生じる遅延を測定する。また、上記の遅延により生じる問題を解消または低減する。
【解決手段】ゲーム装置は、所定のテスト画像を生成し、テレビへテスト画像を出力する。端末装置は、撮像部によってテレビの画面を撮像し、撮像部が撮像した撮像画像をゲーム装置へ送信する。ゲーム装置は、撮像画像にテスト画像が含まれるか否かを判定する。そして、撮像画像にテスト画像が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、ゲーム装置がテスト画像を出力したタイミングと、撮像画像が撮像されてから当該判定が行われるまでの処理時間とに基づいて、画像遅延時間を算出する。ゲーム装置は、画像遅延時間を用いることによって、端末装置とテレビとの同期をとったり、テレビにおける画像の表示と音声の出力との同期をとることができる。
【解決手段】ゲーム装置は、所定のテスト画像を生成し、テレビへテスト画像を出力する。端末装置は、撮像部によってテレビの画面を撮像し、撮像部が撮像した撮像画像をゲーム装置へ送信する。ゲーム装置は、撮像画像にテスト画像が含まれるか否かを判定する。そして、撮像画像にテスト画像が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、ゲーム装置がテスト画像を出力したタイミングと、撮像画像が撮像されてから当該判定が行われるまでの処理時間とに基づいて、画像遅延時間を算出する。ゲーム装置は、画像遅延時間を用いることによって、端末装置とテレビとの同期をとったり、テレビにおける画像の表示と音声の出力との同期をとることができる。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、テレビジョン受像器等の表示装置における表示遅延または音声出力遅延を測定する遅延測定システムおよび遅延測定方法に関する。
【背景技術】
【0002】
従来、テレビジョン受像器(以下、単に「テレビ」と記載する)を表示装置として用いるゲームシステムがある。例えば、特許文献1には、テレビと、テレビに接続されるゲーム装置とを含むゲームシステムが記載されている。このゲームシステムにおいては、ゲーム装置によって生成されたゲーム画像がテレビに表示されるとともに、ゲーム装置によって生成されたゲーム音がテレビのスピーカから出力される。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2009−297221号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
上記のような、テレビを表示装置に用いるゲームシステムにおいては、ゲーム画像の表示遅延が生じるおそれがあった。すなわち、近年のデジタルテレビにおいては、画質向上等の目的で、入力される画像に対して種々の映像処理が行われ、映像処理が施された画像が表示される。この映像処理は一般的に時間を要するため、ゲーム装置からテレビへゲーム画像が出力されてから、テレビにゲーム画像が表示されるまでに遅延が生じるおそれがあった。そのため、テレビを表示装置に用いるゲームシステムにおいては、ゲーム操作に対するゲーム表示の応答性が悪くなるという問題があった。
【0005】
また、テレビおよびゲーム装置を含むゲームシステムに対してさらに別の表示装置を追加することによって、複数の表示装置にそれぞれゲーム画像を表示させることを可能にしたゲームシステムを考える。このようなゲームシステムにおいて、別の表示装置に関しては上記のような映像処理が実行されないために表示遅延が(ほとんど)生じないとすれば、上記の遅延の問題が顕著になる。つまり、上記のゲームシステムでは、プレイヤは、表示遅延が生じないゲーム画像を別の表示装置によって見ることができるので、テレビにおいて表示遅延が生じていることを視認することができる。そのため、両方のゲーム画像を見るプレイヤにとっては違和感が顕著になるおそれが考えられる。また、ゲーム操作にシビアなタイミングが要求される種類のゲームにおいては、両方のゲーム画像を見るプレイヤがどちらの表示を基準に操作をすればわからなくなったり、複数人でゲームを行う場合において各ゲーム画像を見るプレイヤ毎に有利不利が生じたりする等、ゲーム操作に支障をきたしたりするおそれが考えられる。
【0006】
上記のように、テレビにおける表示遅延は、単にゲーム表示の応答性が悪くなるといった問題を生じさせる他、別の表示装置にもゲーム画像が表示される場合には、プレイヤが抱く違和感が顕著になったり、ゲーム操作に支障をきたしたりするといった問題を生じさせるおそれがある。なお、表示遅延の時間は、テレビの機種や映像モード(どのような映像処理が行われるか)によって異なるので、表示遅延の時間を個々に測定し、遅延に応じた処理を行う必要がある。
【0007】
それ故、本発明の目的は、テレビ等の表示装置に画像や音声を出力する場合に生じる遅延を測定することである。また、本発明の他の目的は、上記の遅延により生じる問題を解消または低減することである。
【課題を解決するための手段】
【0008】
本発明は、上記の課題を解決するために、以下の(1)〜(13)の構成を採用した。
【0009】
(1)
本発明の一例は、ゲーム装置と、可搬型表示装置とを含むゲームシステムである。
ゲーム装置は、画像生成部と、画像出力部と、画像圧縮部と、画像送信部とを備える。画像生成部は、ゲーム処理に基づいて第1ゲーム画像および第2ゲーム画像を逐次生成する。画像出力部は、可搬型表示装置とは異なる所定の表示装置へ第1ゲーム画像を逐次出力する。画像圧縮部は、第2ゲーム画像を逐次圧縮して圧縮画像データを逐次生成する。画像送信部は、圧縮画像データを可搬型表示装置へ無線で逐次送信する。
可搬型表示装置は、撮像部と、画像受信部と、画像伸張部と、表示部と、撮像データ送信部とを備える。画像受信部は、ゲーム装置から圧縮画像データを逐次受信する。画像伸張部は、圧縮画像データを逐次伸張して第2ゲーム画像を得る。表示部は、画像伸張部によって伸張された第2ゲーム画像を逐次表示する。撮像データ送信部は、撮像部が撮像した撮像画像を圧縮した圧縮撮像データをゲーム装置へ送信する。
ゲーム装置はさらに、撮像データ受信部と、画像判定部と、画像遅延算出部と、画像送信制御部とを備える。撮像データ受信部は、圧縮撮像データを受信して伸張して撮像画像を得る。画像判定部は、撮像データ受信部によって伸張された撮像画像に所定の第1ゲーム画像が含まれるか否かを判定する。画像遅延算出部は、撮像画像に所定の第1ゲーム画像が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、画像出力部が所定の第1ゲーム画像を出力したタイミングと、撮像部が当該撮像画像を撮像してから当該判定が行われるまでの処理時間とに基づいて、画像出力部が所定の第1ゲーム画像を出力してから所定の表示装置に当該所定の第1ゲーム画像が表示されるまでの画像遅延時間を算出する。画像送信制御部は、画像遅延時間に基づいて、第2ゲーム画像が可搬型表示装置へ送信されるタイミングを遅らせる。
【0010】
上記「ゲーム装置」は、ゲーム処理を実行し、ゲーム処理に基づいてゲーム画像を生成する情報処理装置であればどのようなものであってもよい。上記ゲーム装置は、ゲーム専用の情報処理装置であってもよいし、一般的なパーソナルコンピュータのような多用途の情報処理装置であってもよい。
上記「可搬型表示装置」は、後述する実施形態においては端末装置7であるが、上記各部を備える装置であればどのようなものであってもよい。なお、上記「可搬型」とは、プレイヤが手に持って動かしたり、任意の位置に配置を変更したりすることができる程度の大きさである意味である。
上記「ゲームシステム」は、ゲーム装置と可搬型表示装置とを含んでいればよく、第1ゲーム画像を表示する所定の表示装置を含んでいなくともよいし、含んでいてもよい。すなわち、ゲームシステムは、当該所定の表示装置を含まない形態で提供されてもよいし、含む形態で提供されてもよい。
上記「所定の表示装置」は、後述する実施形態におけるテレビ等、入力された画像に対して何らかの映像処理を行ってから表示する任意の表示装置を含む。
上記「所定の第1ゲーム画像」は、第1ゲーム画像のうちで、画像遅延時間の算出に用いられる第1ゲーム画像である。なお、所定の第1ゲーム画像の具体的な内容はどのようなものであってもよく、静止画であってもよいし、動画を構成する複数の画像のうちの1つであってもよい。
【0011】
上記(1)の構成によれば、所定の表示装置に表示された第1ゲーム画像を可搬型表示装置が撮像し、撮像画像を用いて画像遅延時間が算出される。これによれば、実際に表示された画像に基づいて遅延を測定するので、画像遅延時間を正確に算出することができる。また、ゲーム装置は、第2ゲーム画像が可搬型表示装置へ送信されるタイミングを画像遅延時間に基づいて遅らせるので、各ゲーム画像が表示されるタイミングを、所定の表示装置と可搬型表示装置とで合わせることができる。したがって、上記(1)の構成によれば、所定の表示装置と可搬型表示装置との間でゲーム画像の表示タイミングの同期をとることができ、所定の表示装置における表示遅延により生じる問題を解消することができる。
【0012】
(2)
所定の表示装置はスピーカを備えていてもよい。
このとき、ゲーム装置はさらに、音声生成部と、音声出力部と、音声送信部とを備える。音声生成部は、ゲーム処理に基づいて第1ゲーム音声および第2ゲーム音声を生成する。音声出力部は、所定の表示装置へ第1ゲーム音声を出力する。音声送信部は、第2ゲーム音声を可搬型表示装置へ無線で送信する。
可搬型表示装置は、音声受信部と、スピーカと、マイクと、検出音送信部とを備える。音声受信部は、ゲーム装置から第2ゲーム音声を受信する。スピーカは、第2ゲーム音声を出力する。検出音送信部は、マイクによる検出音をゲーム装置へ送信する。
ゲーム装置はさらに、検出音受信部と、音判定部と、音声遅延算出部と、音声送信制御部とを備える。検出音受信部は、検出音を受信する。音判定部は、検出音受信部によって受信された検出音に所定の第1ゲーム音声が含まれるか否かを判定する。音声遅延算出部は、検出音に所定の第1ゲーム音声が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、音声出力部が所定の第1ゲーム音声を出力したタイミングと、音検出部が当該検出音を検出してから当該判定が行われるまでの処理時間とに基づいて、音声出力部が所定の第1ゲーム音声を出力してから所定の表示装置のスピーカによって当該第1ゲーム音声が出力されるまでの音声遅延時間を算出する。音声送信制御部は、音声遅延時間に基づいて、第2ゲーム音声が可搬型表示装置へ送信されるタイミングを遅らせる。
【0013】
上記(2)の構成によれば、所定の表示装置に表示された第1ゲーム音声を可搬型表示装置が検出し、検出音を用いて音声遅延時間が算出される。これによれば、実際に出力された音声に基づいて遅延を測定するので、画像遅延時間を正確に算出することができる。また、ゲーム装置は、第2ゲーム音声が可搬型表示装置へ送信されるタイミングを音声遅延時間に基づいて遅らせるので、各ゲーム音声が出力されるタイミングを、所定の表示装置と可搬型表示装置とで合わせることができる。したがって、上記(2)の構成によれば、所定の表示装置と可搬型表示装置との間でゲーム音声の表示タイミングの同期をとることができ、所定の表示装置における音声出力遅延により生じる問題を解消することができる。
【0014】
(3)
画像生成部は、可搬型表示装置の撮像部を所定の表示装置の画面の方へ向ける旨の通知を表す画像を第1ゲーム画像または第2ゲーム画像として生成し、所定の表示装置または可搬型表示装置に当該画像が表示された後で、所定の第1ゲーム画像を生成して所定の表示装置に表示させてもよい。
【0015】
上記(3)の構成によれば、画像遅延時間の測定に用いられる所定の第1ゲーム画像を表示する前に、可搬型表示装置の撮像部を所定の表示装置の画面の方へ向ける旨の通知が行われる。これによれば、所定の第1ゲーム画像が表示された時点で撮像部が所定の表示装置の画面の方を向いていない事態が生じることを防止することができ、不正確な画像遅延時間が測定されることを防止することができる。
【0016】
(4)
ゲーム装置はさらに、複数の第2ゲーム画像を記憶可能な記憶部を備えていてもよい。このとき、画像送信制御部は、画像生成部によって生成された第2ゲーム画像を記憶部に記憶し、生成から画像遅延時間に基づく待機時間が経過した第2ゲーム画像を画像送信部に送信させる。
【0017】
上記「記憶部」は、後述する実施形態におけるメインメモリやフラッシュメモリ等、ゲーム装置がアクセス可能な記憶手段であればどのようなものであってもよい。なお、記憶部に記憶される第2ゲーム画像は、画像圧縮部によって圧縮された画像データであってもうよいし、圧縮前の画像データであってもよい。
【0018】
上記(4)の構成によれば、ゲーム装置は、第2ゲーム画像を記憶しておき、待機時間が経過した後で第2ゲーム画像を送信する。これによれば、第2ゲーム画像の送信タイミングを容易に調整することができる。
【0019】
(5)
画像送信制御部は、画像遅延時間と、第2ゲーム画像が生成されてから可搬型表示装置に表示されるまでの時間とに基づいて、第2ゲーム画像を可搬型表示装置へ送信するまでの待機時間を算出してもよい。
【0020】
上記(5)の構成によれば、画像遅延時間に加え、第2ゲーム画像が生成されてから可搬型表示装置に表示されるまでの時間を考慮して待機時間が決定される。これによれば、第1ゲーム画像と第2ゲーム画像との表示タイミングをより正確に同期させることができる。
【0021】
(6)
また、本発明の他の一例は、ゲーム装置と、可搬型表示装置とを含むゲームシステムである。
ゲーム装置は、音声生成部と、音声出力部と、音声送信部とを備える。音声生成部は、ゲーム処理に基づいて第1ゲーム音声および第2ゲーム音声を生成する。音声出力部は、スピーカを備える表示装置であって、可搬型表示装置とは異なる所定の表示装置へ第1ゲーム音声を出力する。音声送信部は、第2ゲーム音声を可搬型表示装置へ無線で送信する。
可搬型表示装置は、マイクと、音声受信部と、スピーカと、検出音送信部とを備える。音声受信部は、ゲーム装置から第2ゲーム音声を受信する。スピーカは、第2ゲーム音声を出力する。検出音送信部は、マイクによる検出音をゲーム装置へ送信する。
ゲーム装置はさらに、検出音受信部と、音判定部と、遅延算出部と、音声送信制御部とを備える。検出音受信部は、検出音を受信する。音判定部は、検出音受信部によって受信された検出音に所定の第1ゲーム音声が含まれるか否かを判定する。遅延算出部は、検出音に所定の第1ゲーム音声が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、音声出力部が所定の第1ゲーム音声を出力したタイミングと、音検出部が当該検出音を検出してから当該判定が行われるまでの処理時間とに基づいて、音声出力部が所定の第1ゲーム音声を出力してから所定の表示装置のスピーカによって当該第1ゲーム音声が出力されるまでの音声遅延時間を算出する。音声送信制御部は、音声遅延時間に基づいて、第2ゲーム音声が可搬型表示装置へ送信されるタイミングを遅らせる。
【0022】
上記「所定の第1ゲーム音声」は、第1ゲーム音声のうちで、音声遅延時間の算出に用いられる第1ゲーム音声である。なお、所定の第1ゲーム音声の具体的な内容はどのようなものであってもよい。
【0023】
上記(6)の構成によれば、上記(2)の構成と同様、所定の表示装置に表示された第1ゲーム音声を可搬型表示装置が検出し、検出音を用いて音声遅延時間が算出される。これによれば、実際に出力された音声に基づいて遅延を測定するので、画像遅延時間を正確に算出することができる。また、ゲーム装置は、第2ゲーム音声が可搬型表示装置へ送信されるタイミングを音声遅延時間に基づいて遅らせるので、各ゲーム音声が出力されるタイミングを、所定の表示装置と可搬型表示装置とで合わせることができる。したがって、上記(6)の構成によれば、所定の表示装置と可搬型表示装置との間でゲーム音声の表示タイミングの同期をとることができ、所定の表示装置における音声出力遅延により生じる問題を解消することができる。
【0024】
(7)
本発明の他の一例は、入力された画像に対して所定の映像処理を行ってから当該画像を表示する所定の表示装置の表示遅延を測定する遅延測定システムである。遅延測定システムは、所定の表示装置と通信可能な情報処理装置と、当該情報処理装置と無線通信可能な可搬型の端末装置とを含む。
情報処理装置は、画像生成部と、第1画像出力部とを備える。画像生成部は、所定の画像を生成する。第1画像出力部は、所定の表示装置へ所定の画像を出力する。
端末装置は、撮像部と、撮像画像送信部とを備える。撮像画像送信部は、撮像部が撮像した撮像画像を送信する。
情報処理装置はさらに、撮像画像受信部と、画像判定部と、画像遅延算出部とを備える。撮像画像受信部は、撮像画像を受信する。画像判定部は、撮像画像に所定の画像が含まれるか否かを判定する。画像遅延算出部は、撮像画像に所定の画像が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、第1画像出力部が所定の画像を出力したタイミングと、撮像部が当該撮像画像を撮像してから当該判定が行われるまでの処理時間とに基づいて、第1画像出力部が所定の画像を出力してから所定の表示装置に当該所定の画像が表示されるまでの画像遅延時間を算出する。
【0025】
上記「情報処理装置」は、画像を生成する機能を有する情報処理装置であればどのようなものであってもよい。上記情報処理装置は、後述する実施形態のようなゲーム装置であってもよいし、一般的なパーソナルコンピュータのような多用途の情報処理装置であってもよい。
上記「可搬型の端末装置」は、後述する実施形態においては、画像を表示する機能や操作装置としての機能を有する端末装置であるが、上記各部を備える装置であればどのようなものであってもよい。なお、上記「可搬型」とは、プレイヤが手に持って動かしたり、任意の位置に配置を変更したりすることができる程度の大きさである意味である。
上記「遅延測定システム」は、情報装置と端末装置とを含んでいればよく、第1画像を表示する所定の表示装置を含んでいなくともよいし、含んでいてもよい。すなわち、遅延測定システムは、当該所定の表示装置を含まない形態で提供されてもよいし、含む形態で提供されてもよい。
上記「所定の画像」は、画像遅延時間の算出に用いられる画像である。なお、所定の画像の具体的な内容はどのようなものであってもよく、静止画であってもよいし、動画を構成する複数の画像のうちの1つであってもよい。
【0026】
上記(7)の構成によれば、所定の表示装置に表示された所定の画像を可搬型表示装置が撮像し、撮像画像を用いて画像遅延時間が算出される。これによれば、実際に表示された所定の画像に基づいて遅延を測定するので、画像遅延時間を正確に算出することができる。
【0027】
(8)
画像生成部は、所定の表示装置に表示するための第1画像と、端末装置に表示するための第2画像とを逐次生成してもよい。このとき、第1画像出力部は、所定の表示装置へ第1画像を逐次出力する。情報処理装置はさらに、第2画像を端末装置へ逐次出力する第2画像出力部とを備える。
また、端末装置はさらに、画像受信部と、表示部とを備える。画像受信部は、情報処理装置から第2画像を逐次受信する。表示部は、受信された第2画像を逐次表示する。
情報処理装置は、画像遅延時間に基づいて、第2画像が端末装置へ出力されるタイミングを遅らせる画像出力制御部をさらに備える。
【0028】
上記(8)の構成によれば、情報処理装置は、第2画像が可搬型表示装置へ送信されるタイミングを画像遅延時間に基づいて遅らせるので、各画像が表示されるタイミングを、所定の表示装置と可搬型表示装置とで合わせることができる。したがって、上記(8)の構成によれば、所定の表示装置と可搬型表示装置との間で画像の表示タイミングの同期をとることができ、所定の表示装置における表示遅延により生じる問題を解消することができる。
【0029】
(9)
情報処理装置はさらに、音声生成部と、第1音声出力部と、第2音声出力部とを備えていてもよい。音声生成部は、所定の表示装置に出力するための第1音声と、端末装置に出力するための第2音声とを生成する。第1音声出力部は、所定の表示装置へ第1音声を出力する。第2音声出力部は、端末装置へ第2音声を出力する。
また、端末装置はさらに、音声受信部と、スピーカとを備える。音声受信部は、情報処理装置から第2音声を受信する。スピーカは、第2音声を出力する。
情報処理装置は、画像遅延時間に基づいて、第2音声が端末装置へ出力されるタイミングを遅らせる音声出力制御部をさらに備える。
【0030】
上記(9)の構成によれば、画像遅延時間に基づいて、第2音声が端末装置へ出力されるタイミングが調整される。これによれば、所定の表示装置と可搬型表示装置との間で画像の表示タイミングの同期をとることができるとともに、音声の出力タイミングの同期をとることができる。しかも、上記(9)の構成によれば、音声については遅延時間を測定する必要がないので、簡易な処理で画像および音声の両方について同期をとることができる。
【0031】
(10)
所定の表示装置はスピーカを備えていてもよい。このとき、情報処理装置はさらに、音声生成部と、音声出力部とを備えている。音声生成部は、所定の音を生成する。音声出力部は、所定の表示装置へ所定の音を出力する。
端末装置は、マイクと、マイクによる検出音を情報処理装置へ送信する検出音送信部とを備える。
情報処理装置はさらに、検出音受信部と、音判定部と、音声遅延算出部と、出力制御部とを備える。検出音受信部は、検出音を受信する。音判定部は、検出音受信部によって受信された検出音に所定の音が含まれるか否かを判定する。音声遅延算出部は、検出音に所定の音が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、音声出力部が所定の音を出力したタイミングと、音検出部が当該検出音を検出してから当該判定が行われるまでの処理時間とに基づいて、音声出力部が所定の音を出力してから所定の表示装置のスピーカによって当該所定の音が出力されるまでの音声遅延時間を算出する。出力制御部は、所定の表示装置に表示される画像と、当該所定の表示装置のスピーカに出力させるための音とが同期するように、当該音を音声出力部が出力するタイミングと、当該画像を画像出力部が出力するタイミングとの少なくともいずれかを画像遅延時間および音声遅延時間に基づいて遅らせる。
【0032】
上記(10)の構成によれば、情報処理装置は、画像遅延時間および音声遅延時間を算出し、これらの遅延時間に基づいて、所定の表示装置における画像の表示タイミングと、当該所定の表示装置のスピーカにおける音声の出力タイミングとを調整する。これによれば、所定の表示装置において上記2つのタイミングを同期させることができ、所定の表示装置における表示遅延あるいは音声出力遅延によりユーザが違和感を抱くことを防止することができる。
【0033】
(11)
また、本発明の他の一例は、所定の表示装置が備えるスピーカの音声出力遅延を測定する遅延測定システムである。遅延測定システムは、所定の表示装置と通信可能な情報処理装置と、当該情報処理装置と無線通信可能な可搬型の端末装置とを含む。
情報処理装置は、音声生成部と、第1音声出力部とを備える。音声生成部は、所定の音を生成する。第1音声出力部は、所定の表示装置へ所定の音を出力する。
端末装置は、マイクと、マイクによる検出音を情報処理装置へ送信する検出音送信部とを備える。
情報処理装置はさらに、検出音受信部と、音判定部と、音声遅延算出部とを備える。検出音受信部は、検出音を受信する。音判定部は、検出音受信部によって受信された検出音に所定の音が含まれるか否かを判定する。音声遅延算出部は、検出音に所定の音が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、音声出力部が所定の音を出力したタイミングと、音検出部が当該検出音を検出してから当該判定が行われるまでの処理時間とに基づいて、音声出力部が所定の音を出力してから所定の表示装置のスピーカによって当該所定の音が出力されるまでの音声遅延時間を算出する。
【0034】
上記(11)の構成によれば、所定の表示装置のスピーカから出力された所定の音を可搬型表示装置が検出し、検出音を用いて音声遅延時間が算出される。これによれば、実際に表示された所定の音に基づいて遅延を測定するので、音声遅延時間を正確に算出することができる。
【0035】
(12)
音声生成部は、所定の表示装置に出力するための第1音声と、端末装置に出力するための第2音声とを生成してもよい。このとき、第1音声出力部は、所定の表示装置へ第1音声を出力する。情報処理装置はさらに、第2音声を端末装置へ出力する第2音声出力部とを備える。
端末装置はさらに、音声受信部と、スピーカとを備える。音声受信部は、情報処理装置から第2音声を受信する。スピーカは、受信された第2音声を出力する。
情報処理装置は、音声遅延時間に基づいて、第2音声が端末装置へ出力されるタイミングを遅らせる音声出力制御部をさらに備える。
【0036】
上記(12)の構成によれば、情報処理装置は、第2音声が可搬型表示装置へ送信されるタイミングを音声遅延時間に基づいて遅らせるので、各音声が出力されるタイミングを、所定の表示装置と可搬型表示装置とで合わせることができる。したがって、上記(12)の構成によれば、所定の表示装置と可搬型表示装置との間で音声の出力タイミングの同期をとることができ、所定の表示装置における音声出力遅延により生じる問題を解消することができる。
【0037】
(13)
情報処理装置はさらに、画像生成部と、第1画像出力部と、第2画像出力部とを備えていてもよい。画像生成部は、所定の表示装置に表示するための第1画像と、端末装置に表示するための第2画像とを逐次生成する。第1画像出力部は、所定の表示装置へ第1画像を逐次出力する。第2画像出力部は、端末装置へ第2画像を逐次出力する。
端末装置はさらに、画像受信部と、表示部とを備える。画像受信部は、情報処理装置から第2画像を逐次受信する。表示部は、受信された第2画像を逐次表示する。
情報処理装置は、画像遅延時間に基づいて、第2画像が端末装置へ出力されるタイミングを遅らせる画像出力制御部をさらに備える。
【0038】
上記(13)の構成によれば、音声遅延時間に基づいて、第2画像が端末装置へ出力されるタイミングが調整される。これによれば、所定の表示装置と可搬型表示装置との間で音声の出力タイミングの同期をとることができるとともに、画像の表示タイミングの同期をとることができる。しかも、上記(13)の構成によれば、画像については遅延時間を測定する必要がないので、簡易な処理で画像および音声の両方について同期をとることができる。
【0039】
本発明の別の一例は、上記(1)〜(13)のゲームシステムまたは遅延測定システムの各部(撮像部を除く)を備える情報処理装置(ゲーム装置)であってもよい。また、本発明の別の一例は、情報処理装置のコンピュータを上記各部と同等の手段として機能させるゲームプログラムの形態であってもよい。さらに、本発明の別の一例は、上記(1)〜(13)のゲームシステムまたは遅延測定システムにおいて行われる画像表示方法、音声出力方法、または遅延測定方法の形態であってもよい。
【発明の効果】
【0040】
本発明によれば、所定の表示装置において生じる表示遅延および/または音声出力遅延を算出することができる。さらに、算出された遅延を用いることによって、所定の表示装置と可搬型の表示装置との間で同期をとったり、所定の表示装置における画像の表示と音声の出力との同期をとったりすることができる。
【図面の簡単な説明】
【0041】
【図1】ゲームシステム1の外観図
【図2】ゲーム装置3の内部構成を示すブロック図
【図3】コントローラ5の外観構成を示す斜視図
【図4】コントローラ5の外観構成を示す斜視図
【図5】コントローラ5の内部構造を示す図
【図6】コントローラ5の内部構造を示す図
【図7】コントローラ5の構成を示すブロック図
【図8】端末装置7の外観構成を示す図
【図9】ユーザが端末装置7を把持した様子を示す図
【図10】端末装置7の内部構成を示すブロック図
【図11】ゲームシステム1において各ゲーム画像が出力されてから表示されるまでの時間を示す図
【図12】ゲームシステム1において画像遅延時間の測定するための処理の流れを示すタイミングチャート
【図13】ゲームシステム1において端末用ゲーム画像が送信される際の処理の流れを示す図
【図14】ゲームシステム1における処理において用いられる各種データを示す図
【図15】ゲーム装置3において実行される画像遅延測定処理の流れを示すフローチャート
【図16】ゲーム装置3において実行される音声遅延測定処理の流れを示すフローチャート
【図17】ゲーム装置3において実行されるゲーム処理の流れを示すフローチャート
【図18】本実施形態の変形例においてテレビ用ゲーム画像およびテレビ用ゲーム音声が出力される際の処理の流れを示す図
【図19】図18に示す変形例におけるゲーム処理の流れを示すフローチャート
【発明を実施するための形態】
【0042】
[1.ゲームシステムの全体構成]
以下、図面を参照して、本発明の一実施形態に係るゲームシステム1について説明する。図1は、ゲームシステム1の外観図である。図1において、ゲームシステム1は、テレビジョン受像器等に代表される据置型のディスプレイ装置(以下、「テレビ」と記載する)2、据置型のゲーム装置3、光ディスク4、コントローラ5、マーカ装置6、および、端末装置7を含む。ゲームシステム1は、コントローラ5を用いたゲーム操作に基づいてゲーム装置3においてゲーム処理を実行し、ゲーム処理によって得られるゲーム画像をテレビ2および/または端末装置7に表示するものである。
【0043】
ゲーム装置3には、当該ゲーム装置3に対して交換可能に用いられる情報記憶媒体の一例である光ディスク4が脱着可能に挿入される。光ディスク4には、ゲーム装置3において実行されるための情報処理プログラム(典型的にはゲームプログラム)が記憶されている。ゲーム装置3の前面には光ディスク4の挿入口が設けられている。ゲーム装置3は、挿入口に挿入された光ディスク4に記憶されている情報処理プログラムを読み出して実行することによってゲーム処理を実行する。
【0044】
ゲーム装置3には、テレビ2が接続コードを介して接続される。テレビ2は、ゲーム装置3において実行されるゲーム処理によって得られるゲーム画像を表示する。テレビ2はスピーカ2a(図2)を有しており、スピーカ2aは、上記ゲーム処理の結果得られるゲーム音声を出力する。なお、他の実施形態においては、ゲーム装置3と据置型の表示装置とは一体となっていてもよい。また、ゲーム装置3とテレビ2との通信は無線通信であってもよい。
【0045】
テレビ2の画面の周辺(図1では画面の上側)には、マーカ装置6が設置される。詳細は後述するが、ユーザ(プレイヤ)はコントローラ5を動かすゲーム操作を行うことができ、マーカ装置6は、コントローラ5の動きや位置や姿勢等をゲーム装置3が算出するために用いられる。マーカ装置6は、その両端に2つのマーカ6Rおよび6Lを備えている。マーカ6R(マーカ6Lも同様)は、具体的には1以上の赤外LED(Light Emitting Diode)であり、テレビ2の前方に向かって赤外光を出力する。マーカ装置6はゲーム装置3に接続されており、ゲーム装置3はマーカ装置6が備える各赤外LEDの点灯を制御することが可能である。なお、マーカ装置6は可搬型であり、ユーザはマーカ装置6を自由な位置に設置することができる。図1ではマーカ装置6がテレビ2の上に設置された態様を表しているが、マーカ装置6を設置する位置および向きは任意である。
【0046】
コントローラ5は、自機に対して行われた操作の内容を表す操作データをゲーム装置3に与えるものである。コントローラ5とゲーム装置3とは無線通信によって通信可能である。本実施形態では、コントローラ5とゲーム装置3との間の無線通信には例えばBluetooth(ブルートゥース)(登録商標)の技術が用いられる。なお、他の実施形態においてはコントローラ5とゲーム装置3とは有線で接続されてもよい。また、本実施形態では、ゲームシステム1に含まれるコントローラ5は1つとするが、ゲーム装置3は複数のコントローラと通信可能であり、所定台数のコントローラを同時に使用することによって複数人でゲームをプレイすることが可能である。コントローラ5の詳細な構成については後述する。
【0047】
端末装置7は、ユーザが把持可能な程度の大きさであり、ユーザは端末装置7を手に持って動かしたり、あるいは、端末装置7を自由な位置に配置したりして使用することが可能である。詳細な構成は後述するが、端末装置7は、表示手段であるLCD(Liquid Crystal Display:液晶表示装置)51、および、入力手段(後述するタッチパネル52やジャイロセンサ64等)を備える。端末装置7とゲーム装置3とは無線(有線であってもよい)によって通信可能である。端末装置7は、ゲーム装置3で生成された画像(例えばゲーム画像)のデータをゲーム装置3から受信し、画像をLCD51に表示する。なお、本実施形態では表示装置としてLCDを用いているが、端末装置7は、例えばEL(Electro Luminescence:電界発光)を利用した表示装置等、他の任意の表示装置を有していてもよい。また、端末装置7は、自機に対して行われた操作の内容を表す操作データをゲーム装置3に送信する。
【0048】
[2.ゲーム装置3の内部構成]
次に、図2を参照して、ゲーム装置3の内部構成について説明する。図2は、ゲーム装置3の内部構成を示すブロック図である。ゲーム装置3は、CPU(Central Processing Unit)10、システムLSI11、外部メインメモリ12、ROM/RTC13、ディスクドライブ14、およびAV−IC15等を有する。
【0049】
CPU10は、光ディスク4に記憶されたゲームプログラムを実行することによってゲーム処理を実行するものであり、ゲームプロセッサとして機能する。CPU10は、システムLSI11に接続される。システムLSI11には、CPU10の他、外部メインメモリ12、ROM/RTC13、ディスクドライブ14およびAV−IC15が接続される。システムLSI11は、それに接続される各構成要素間におけるデータ転送の制御、表示すべき画像の生成、外部装置からのデータの取得等の処理を行う。なお、システムLSI11の内部構成については後述する。揮発性の外部メインメモリ12は、光ディスク4から読み出されたゲームプログラムや、フラッシュメモリ17から読み出されたゲームプログラム等のプログラムを記憶したり、各種データを記憶したりするものであり、CPU10のワーク領域やバッファ領域として用いられる。ROM/RTC13は、ゲーム装置3の起動用のプログラムが組み込まれるROM(いわゆるブートROM)と、時間をカウントするクロック回路(RTC:Real Time Clock)とを有する。ディスクドライブ14は、光ディスク4からプログラムデータやテクスチャデータ等を読み出し、後述する内部メインメモリ11eまたは外部メインメモリ12に読み出したデータを書き込む。
【0050】
システムLSI11には、入出力プロセッサ(I/Oプロセッサ)11a、GPU(Graphics Processor Unit)11b、DSP(Digital Signal Processor)11c、VRAM(Video RAM)11d、および内部メインメモリ11eが設けられる。図示は省略するが、これらの構成要素11a〜11eは内部バスによって互いに接続される。
【0051】
GPU11bは、描画手段の一部を形成し、CPU10からのグラフィクスコマンド(作画命令)に従って画像を生成する。VRAM11dは、GPU11bがグラフィクスコマンドを実行するために必要なデータ(ポリゴンデータやテクスチャデータ等のデータ)を記憶する。画像が生成される際には、GPU11bは、VRAM11dに記憶されたデータを用いて画像データを作成する。なお、本実施形態においては、ゲーム装置3は、テレビ2に表示するゲーム画像と、端末装置7に表示するゲーム画像との両方を生成する。以下では、テレビ2に表示されるゲーム画像を「テレビ用ゲーム画像」と呼び、端末装置7に表示されるゲーム画像を「端末用ゲーム画像」と呼ぶことがある。
【0052】
DSP11cは、オーディオプロセッサとして機能し、内部メインメモリ11eや外部メインメモリ12に記憶されるサウンドデータや音波形(音色)データを用いて、音声データを生成する。なお、本実施形態においては、ゲーム音声についてもゲーム画像と同様、テレビ2のスピーカから出力するゲーム音声と、端末装置7のスピーカから出力するゲーム音声との両方が生成される。以下では、テレビ2から出力されるゲーム音声を「テレビ用ゲーム音声」と呼び、端末装置7から出力されるゲーム音声を「端末用ゲーム音声」と呼ぶことがある。
【0053】
上記のようにゲーム装置3において生成される画像および音声のうちで、テレビ2において出力される画像および音声のデータは、AV−IC15によって読み出される。AV−IC15は、読み出した画像データをAVコネクタ16を介してテレビ2に出力するとともに、読み出した音声データを、テレビ2に内蔵されるスピーカ2aに出力する。これによって、テレビ2に画像が表示されるとともにスピーカ2aから音が出力される。
【0054】
また、ゲーム装置3において生成される画像および音声のうちで、端末装置7において出力される画像および音声のデータは、入出力プロセッサ11a等によって端末装置7へ送信される。入出力プロセッサ11a等による端末装置7へのデータの送信については後述する。
【0055】
入出力プロセッサ11aは、それに接続される構成要素との間でデータの送受信を実行したり、外部装置からのデータのダウンロードを実行したりする。入出力プロセッサ11aは、フラッシュメモリ17、ネットワーク通信モジュール18、コントローラ通信モジュール19、拡張コネクタ20、メモリカード用コネクタ21、コーデックLSI27に接続される。また、ネットワーク通信モジュール18にはアンテナ22が接続される。コントローラ通信モジュール19にはアンテナ23が接続される。コーデックLSI27は端末通信モジュール28に接続され、端末通信モジュール28にはアンテナ29が接続される。
【0056】
ゲーム装置3は、インターネット等のネットワークに接続して外部情報処理装置(例えば他のゲーム装置や、各種サーバ等)と通信を行うことが可能である。すなわち、入出力プロセッサ11aは、ネットワーク通信モジュール18およびアンテナ22を介してインターネット等のネットワークに接続し、ネットワークに接続される外部情報処理装置と通信することができる。入出力プロセッサ11aは、定期的にフラッシュメモリ17にアクセスし、ネットワークへ送信する必要があるデータの有無を検出し、当該データが有る場合には、ネットワーク通信モジュール18およびアンテナ22を介してネットワークに送信する。また、入出力プロセッサ11aは、外部情報処理装置から送信されてくるデータやダウンロードサーバからダウンロードしたデータを、ネットワーク、アンテナ22およびネットワーク通信モジュール18を介して受信し、受信したデータをフラッシュメモリ17に記憶する。CPU10はゲームプログラムを実行することにより、フラッシュメモリ17に記憶されたデータを読み出してゲームプログラムで利用する。フラッシュメモリ17には、ゲーム装置3と外部情報処理装置との間で送受信されるデータの他、ゲーム装置3を利用してプレイしたゲームのセーブデータ(ゲームの結果データまたは途中データ)が記憶されてもよい。また、フラッシュメモリ17にはゲームプログラムが記憶されてもよい。
【0057】
また、ゲーム装置3は、コントローラ5からの操作データを受信することが可能である。すなわち、入出力プロセッサ11aは、コントローラ5から送信される操作データをアンテナ23およびコントローラ通信モジュール19を介して受信し、内部メインメモリ11eまたは外部メインメモリ12のバッファ領域に記憶(一時記憶)する。
【0058】
また、ゲーム装置3は、端末装置7との間で画像や音声等のデータを送受信することが可能である。入出力プロセッサ11aは、端末装置7へゲーム画像(端末用ゲーム画像)を送信する場合、GPU11bが生成したゲーム画像のデータをコーデックLSI27へ出力する。コーデックLSI27は、入出力プロセッサ11aからの画像データに対して所定の圧縮処理を行う。端末通信モジュール28は、端末装置7との間で無線通信を行う。したがって、コーデックLSI27によって圧縮された画像データは、端末通信モジュール28によってアンテナ29を介して端末装置7へ送信される。なお、本実施形態では、ゲーム装置3から端末装置7へ送信される画像データはゲームに用いるものであり、ゲームにおいては表示される画像に遅延が生じるとゲームの操作性に悪影響が出る。そのため、ゲーム装置3から端末装置7への画像データの送信に関しては、できるだけ遅延が生じないようにすることが好ましい。したがって、本実施形態では、コーデックLSI27は、例えばH.264規格といった高効率の圧縮技術を用いて画像データを圧縮する。なお、それ以外の圧縮技術を用いてもよいし、通信速度が十分である場合には無圧縮で画像データを送信する構成であってもよい。また、端末通信モジュール28は、例えばWi−Fiの認証を受けた通信モジュールであり、例えばIEEE802.11n規格で採用されるMIMO(Multiple Input Multiple Output)の技術を用いて端末装置7との間の無線通信を高速に行うようにしてもよいし、他の通信方式を用いてもよい。
【0059】
また、ゲーム装置3は、画像データの他、音声データを端末装置7へ送信する。すなわち、入出力プロセッサ11aは、DSP11cが生成した音声データを、コーデックLSI27を介して端末通信モジュール28へ出力する。コーデックLSI27は、音声データに対しても画像データと同様に圧縮処理を行う。音声データに対する圧縮の方式は、どのような方式であってもよいが、圧縮率が高く、音声の劣化が少ない方式が好ましい。また、他の実施形態においては、音声データは圧縮されずに送信されてもよい。端末通信モジュール28は、圧縮された画像データおよび音声データを、アンテナ29を介して端末装置7へ送信する。
【0060】
さらに、ゲーム装置3は、上記画像データおよび音声データの他に、必要に応じて各種の制御データを端末装置7へ送信する。制御データは、端末装置7が備える構成要素に対する制御指示を表すデータであり、例えばマーカ部(図10に示すマーカ部55)の点灯を制御する指示や、カメラ(図10に示すカメラ56)の撮像を制御する指示等を表す。入出力プロセッサ11aは、CPU10の指示に応じて制御データを端末装置7へ送信する。なお、この制御データに関して、本実施形態ではコーデックLSI27はデータの圧縮処理を行わないが、他の実施形態においては圧縮処理を行うようにしてもよい。なお、ゲーム装置3から端末装置7へ送信される上述のデータは、必要に応じて暗号化がされていてもよいし、されていなくともよい。
【0061】
また、ゲーム装置3は、端末装置7から各種データを受信可能である。詳細は後述するが、本実施形態では、端末装置7は、操作データ、画像データ、および音声データを送信する。端末装置7から送信される各データはアンテナ29を介して端末通信モジュール28によって受信される。ここで、端末装置7からの画像データおよび音声データは、ゲーム装置3から端末装置7への画像データおよび音声データと同様の圧縮処理が施されている。したがって、これら画像データおよび音声データについては、端末通信モジュール28からコーデックLSI27に送られ、コーデックLSI27によって伸張処理が施されて入出力プロセッサ11aに出力される。一方、端末装置7からの操作データに関しては、画像や音声に比べてデータ量が少ないので、圧縮処理が施されていなくともよい。また、必要に応じて暗号化がされていてもよいし、されていなくともよい。したがって、操作データは、端末通信モジュール28で受信された後、コーデックLSI27を介して入出力プロセッサ11aに出力される。入出力プロセッサ11aは、端末装置7から受信したデータを、内部メインメモリ11eまたは外部メインメモリ12のバッファ領域に記憶(一時記憶)する。
【0062】
また、ゲーム装置3は、他の機器や外部記憶媒体に接続することが可能である。すなわち、入出力プロセッサ11aには、拡張コネクタ20およびメモリカード用コネクタ21が接続される。拡張コネクタ20は、USBやSCSIのようなインターフェースのためのコネクタである。拡張コネクタ20に対しては、外部記憶媒体のようなメディアを接続したり、他のコントローラ等の周辺機器を接続したり、有線の通信用コネクタを接続することによってネットワーク通信モジュール18に替えてネットワークとの通信を行ったりすることができる。メモリカード用コネクタ21は、メモリカードのような外部記憶媒体を接続するためのコネクタである。例えば、入出力プロセッサ11aは、拡張コネクタ20やメモリカード用コネクタ21を介して外部記憶媒体にアクセスし、外部記憶媒体にデータを保存したり、外部記憶媒体からデータを読み出したりすることができる。
【0063】
ゲーム装置3には、電源ボタン24、リセットボタン25、およびイジェクトボタン26が設けられる。電源ボタン24およびリセットボタン25は、システムLSI11に接続される。電源ボタン24がオンされると、図示しないACアダプタによって外部の電源からゲーム装置3の各構成要素に対して電力が供給される。リセットボタン25が押されると、システムLSI11は、ゲーム装置3の起動プログラムを再起動する。イジェクトボタン26は、ディスクドライブ14に接続される。イジェクトボタン26が押されると、ディスクドライブ14から光ディスク4が排出される。
【0064】
なお、他の実施形態においては、ゲーム装置3が備える各構成要素のうちでいくつかの構成要素は、ゲーム装置3とは別体の拡張機器として構成されてもよい。このとき、拡張機器は、例えば上記拡張コネクタ20を介してゲーム装置3と接続されるようにしてもよい。具体的には、拡張機器は、例えば上記コーデックLSI27、端末通信モジュール28およびアンテナ29の各構成要素を備えており、拡張コネクタ20に対して着脱可能であってもよい。これによれば、上記各構成要素を備えていないゲーム装置に対して上記拡張機器を接続することによって、当該ゲーム装置を端末装置7と通信可能な構成とすることができる。
【0065】
[3.コントローラ5の構成]
次に、図3〜図7を参照して、コントローラ5について説明する。図3は、コントローラ5の外観構成を示す斜視図である。図4は、コントローラ5の外観構成を示す斜視図である。図3は、コントローラ5の上側後方から見た斜視図であり、図4は、コントローラ5を下側前方から見た斜視図である。
【0066】
図3および図4において、コントローラ5は、例えばプラスチック成型によって形成されたハウジング31を有している。ハウジング31は、その前後方向(図3に示すZ軸方向)を長手方向とした略直方体形状を有しており、全体として大人や子供の片手で把持可能な大きさである。ユーザは、コントローラ5に設けられたボタンを押下すること、および、コントローラ5自体を動かしてその位置や姿勢(傾き)を変えることによってゲーム操作を行うことができる。
【0067】
ハウジング31には、複数の操作ボタンが設けられる。図3に示すように、ハウジング31の上面には、十字ボタン32a、1番ボタン32b、2番ボタン32c、Aボタン32d、マイナスボタン32e、ホームボタン32f、プラスボタン32g、および電源ボタン32hが設けられる。本明細書では、これらのボタン32a〜32hが設けられるハウジング31の上面を「ボタン面」と呼ぶことがある。一方、図4に示すように、ハウジング31の下面には凹部が形成されており、当該凹部の後面側傾斜面にはBボタン32iが設けられる。これらの各操作ボタン32a〜32iには、ゲーム装置3が実行する情報処理プログラムに応じた機能が適宜割り当てられる。また、電源ボタン32hは遠隔からゲーム装置3本体の電源をオン/オフするためのものである。ホームボタン32fおよび電源ボタン32hは、その上面がハウジング31の上面に埋没している。これによって、ユーザがホームボタン32fまたは電源ボタン32hを誤って押下することを防止することができる。
【0068】
ハウジング31の後面にはコネクタ33が設けられている。コネクタ33は、コントローラ5に他の機器(例えば、他のセンサユニットやコントローラ)を接続するために利用される。また、ハウジング31の後面におけるコネクタ33の両側には、上記他の機器が容易に離脱することを防止するために係止穴33aが設けられている。
【0069】
ハウジング31上面の後方には複数(図3では4つ)のLED34a〜34dが設けられる。ここで、コントローラ5には、他のコントローラと区別するためにコントローラ種別(番号)が付与される。各LED34a〜34dは、コントローラ5に現在設定されている上記コントローラ種別をユーザに通知したり、コントローラ5の電池残量をユーザに通知したりする等の目的で用いられる。具体的には、コントローラ5を用いてゲーム操作が行われる際、上記コントローラ種別に応じて複数のLED34a〜34dのいずれか1つが点灯する。
【0070】
また、コントローラ5は撮像情報演算部35(図6)を有しており、図4に示すように、ハウジング31前面には撮像情報演算部35の光入射面35aが設けられる。光入射面35aは、マーカ6Rおよび6Lからの赤外光を少なくとも透過する材質で構成される。
【0071】
ハウジング31上面における1番ボタン32bとホームボタン32fとの間には、コントローラ5に内蔵されるスピーカ47(図5)からの音を外部に放出するための音抜き孔31aが形成されている。
【0072】
次に、図5および図6を参照して、コントローラ5の内部構造について説明する。図5および図6は、コントローラ5の内部構造を示す図である。なお、図5は、コントローラ5の上筐体(ハウジング31の一部)を外した状態を示す斜視図である。図6は、コントローラ5の下筐体(ハウジング31の一部)を外した状態を示す斜視図である。図6に示す斜視図は、図5に示す基板30を裏面から見た斜視図となっている。
【0073】
図5において、ハウジング31の内部には基板30が固設されており、当該基板30の上主面上に各操作ボタン32a〜32h、各LED34a〜34d、加速度センサ37、アンテナ45、およびスピーカ47等が設けられる。これらは、基板30等に形成された配線(図示せず)によってマイクロコンピュータ(Micro Computer:マイコン)42(図6参照)に接続される。本実施形態では、加速度センサ37は、X軸方向に関してコントローラ5の中心からずれた位置に配置されている。これによって、コントローラ5をZ軸回りに回転させたときのコントローラ5の動きが算出しやすくなる。また、加速度センサ37は、長手方向(Z軸方向)に関してコントローラ5の中心よりも前方に配置されている。また、無線モジュール44(図6)およびアンテナ45によって、コントローラ5がワイヤレスコントローラとして機能する。
【0074】
一方、図6において、基板30の下主面上の前端縁に撮像情報演算部35が設けられる。撮像情報演算部35は、コントローラ5の前方から順に赤外線フィルタ38、レンズ39、撮像素子40、および画像処理回路41を備えている。これらの部材38〜41はそれぞれ基板30の下主面に取り付けられる。
【0075】
さらに、基板30の下主面上には、上記マイコン42およびバイブレータ46が設けられている。バイブレータ46は、例えば振動モータやソレノイドであり、基板30等に形成された配線によってマイコン42と接続される。マイコン42の指示によりバイブレータ46が作動することによってコントローラ5に振動が発生する。これによって、コントローラ5を把持しているユーザの手にその振動が伝達される、いわゆる振動対応ゲームを実現することができる。本実施形態では、バイブレータ46は、ハウジング31のやや前方寄りに配置される。つまり、バイブレータ46がコントローラ5の中心よりも端側に配置することによって、バイブレータ46の振動によりコントローラ5全体を大きく振動させることができる。また、コネクタ33は、基板30の下主面上の後端縁に取り付けられる。なお、図5および図6に示す他、コントローラ5は、マイコン42の基本クロックを生成する水晶振動子、スピーカ47に音声信号を出力するアンプ等を備えている。
【0076】
なお、図3〜図6に示したコントローラ5の形状や、各操作ボタンの形状、加速度センサやバイブレータの数および設置位置等は単なる一例に過ぎず、他の形状、数、および設置位置であってもよい。また、本実施形態では、撮像手段による撮像方向はZ軸正方向であるが、撮像方向はいずれの方向であってもよい。すなわち、コントローラ5における撮像情報演算部35の位置(撮像情報演算部35の光入射面35a)は、ハウジング31の前面でなくてもよく、ハウジング31の外部から光を取り入れることができれば他の面に設けられてもかまわない。
【0077】
図7は、コントローラ5の構成を示すブロック図である。コントローラ5は、操作部32(各操作ボタン32a〜32i)、撮像情報演算部35、通信部36、加速度センサ37、およびジャイロセンサ48を備えている。コントローラ5は、自機に対して行われた操作内容を表すデータを操作データとしてゲーム装置3へ送信するものである。なお、以下では、コントローラ5が送信する操作データを「コントローラ操作データ」と呼び、端末装置7が送信する操作データを「端末操作データ」と呼ぶことがある。
【0078】
操作部32は、上述した各操作ボタン32a〜32iを含み、各操作ボタン32a〜32iに対する入力状態(各操作ボタン32a〜32iが押下されたか否か)を表す操作ボタンデータを通信部36のマイコン42へ出力する。
【0079】
撮像情報演算部35は、撮像手段が撮像した画像データを解析してその中で輝度が高い領域を判別してその領域の重心位置やサイズなどを算出するためのシステムである。撮像情報演算部35は、例えば最大200フレーム/秒程度のサンプリング周期を有するので、比較的高速なコントローラ5の動きでも追跡して解析することができる。
【0080】
撮像情報演算部35は、赤外線フィルタ38、レンズ39、撮像素子40、および画像処理回路41を含んでいる。赤外線フィルタ38は、コントローラ5の前方から入射する光から赤外線のみを通過させる。レンズ39は、赤外線フィルタ38を透過した赤外線を集光して撮像素子40へ入射させる。撮像素子40は、例えばCMOSセンサやあるいはCCDセンサのような固体撮像素子であり、レンズ39が集光した赤外線を受光して画像信号を出力する。ここで、撮像対象となる端末装置7のマーカ部55およびマーカ装置6は、赤外光を出力するマーカで構成される。したがって、赤外線フィルタ38を設けることによって、撮像素子40は、赤外線フィルタ38を通過した赤外線だけを受光して画像データを生成するので、撮像対象(マーカ部55および/またはマーカ装置6)の画像をより正確に撮像することができる。以下では、撮像素子40によって撮像された画像を撮像画像と呼ぶ。撮像素子40によって生成された画像データは、画像処理回路41で処理される。画像処理回路41は、撮像画像内における撮像対象の位置を算出する。画像処理回路41は、算出された位置を示す座標を通信部36のマイコン42へ出力する。この座標のデータは、マイコン42によって操作データとしてゲーム装置3に送信される。以下では、上記座標を「マーカ座標」と呼ぶ。マーカ座標はコントローラ5自体の向き(傾斜角度)や位置に対応して変化するので、ゲーム装置3はこのマーカ座標を用いてコントローラ5の向きや位置を算出することができる。
【0081】
なお、他の実施形態においては、コントローラ5は画像処理回路41を備えていない構成であってもよく、撮像画像自体がコントローラ5からゲーム装置3へ送信されてもよい。このとき、ゲーム装置3は、画像処理回路41と同様の機能を有する回路あるいはプログラムを有しており、上記マーカ座標を算出するようにしてもよい。
【0082】
加速度センサ37は、コントローラ5の加速度(重力加速度を含む)を検出する、すなわち、コントローラ5に加わる力(重力を含む)を検出する。加速度センサ37は、当該加速度センサ37の検出部に加わっている加速度のうち、センシング軸方向に沿った直線方向の加速度(直線加速度)の値を検出する。例えば、2軸以上の多軸加速度センサの場合には、加速度センサの検出部に加わっている加速度として、各軸に沿った成分の加速度をそれぞれ検出する。なお、加速度センサ37は、例えば静電容量式のMEMS(Micro Electro Mechanical System)型加速度センサであるとするが、他の方式の加速度センサを用いるようにしてもよい。
【0083】
本実施形態では、加速度センサ37は、コントローラ5を基準とした上下方向(図3に示すY軸方向)、左右方向(図3に示すX軸方向)および前後方向(図3に示すZ軸方向)の3軸方向に関してそれぞれ直線加速度を検出する。加速度センサ37は、各軸に沿った直線方向に関する加速度を検出するものであるため、加速度センサ37からの出力は3軸それぞれの直線加速度の値を表すものとなる。すなわち、検出された加速度は、コントローラ5を基準に設定されるXYZ座標系(コントローラ座標系)における3次元のベクトルとして表される。
【0084】
加速度センサ37が検出した加速度を表すデータ(加速度データ)は、通信部36へ出力される。なお、加速度センサ37が検出した加速度は、コントローラ5自体の向き(傾斜角度)や動きに対応して変化するので、ゲーム装置3は取得された加速度データを用いてコントローラ5の向きや動きを算出することができる。本実施形態では、ゲーム装置3は、取得された加速度データに基づいてコントローラ5の姿勢や傾斜角度等を算出する。
【0085】
なお、加速度センサ37(後述する加速度センサ63についても同様)から出力される加速度の信号に基づいて、ゲーム装置3のプロセッサ(例えばCPU10)またはコントローラ5のプロセッサ(例えばマイコン42)等のコンピュータが処理を行うことによって、コントローラ5に関するさらなる情報を推測または算出(判定)することができることは、当業者であれば本明細書の説明から容易に理解できるであろう。例えば、加速度センサ37を搭載するコントローラ5が静止状態であることを前提としてコンピュータ側の処理が実行される場合(すなわち、加速度センサによって検出される加速度が重力加速度のみであるとして処理が実行される場合)、コントローラ5が現実に静止状態であれば、検出された加速度に基づいてコントローラ5の姿勢が重力方向に対して傾いているか否かまたはどの程度傾いているかを知ることができる。具体的には、加速度センサ37の検出軸が鉛直下方向を向いている状態を基準としたとき、1G(重力加速度)がかかっているか否かによって、コントローラ5が基準に対して傾いているか否かを知ることができるし、その大きさによって基準に対してどの程度傾いているかも知ることができる。また、多軸の加速度センサ37の場合には、さらに各軸の加速度の信号に対して処理を施すことによって、重力方向に対してコントローラ5がどの程度傾いているかをより詳細に知ることができる。この場合において、プロセッサは、加速度センサ37からの出力に基づいてコントローラ5の傾斜角度を算出してもよいし、当該傾斜角度を算出せずに、コントローラ5の傾斜方向を算出するようにしてもよい。このように、加速度センサ37をプロセッサと組み合わせて用いることによって、コントローラ5の傾斜角度または姿勢を判定することができる。
【0086】
一方、コントローラ5が動的な状態(コントローラ5が動かされている状態)であることを前提とする場合には、加速度センサ37は重力加速度に加えてコントローラ5の動きに応じた加速度を検出するので、検出された加速度から重力加速度の成分を所定の処理により除去することによってコントローラ5の動き方向を知ることができる。また、コントローラ5が動的な状態であることを前提とする場合であっても、検出された加速度から、加速度センサの動きに応じた加速度の成分を所定の処理により除去することによって、重力方向に対するコントローラ5の傾きを知ることが可能である。なお、他の実施例では、加速度センサ37は、内蔵の加速度検出手段で検出された加速度信号をマイコン42に出力する前に当該加速度信号に対して所定の処理を行うための、組込み式の処理装置または他の種類の専用の処理装置を備えていてもよい。組込み式または専用の処理装置は、例えば、加速度センサ37が静的な加速度(例えば、重力加速度)を検出するために用いられる場合、加速度信号を傾斜角(あるいは、他の好ましいパラメータ)に変換するものであってもよい。
【0087】
ジャイロセンサ48は、3軸(本実施形態では、XYZ軸)回りの角速度を検出する。本明細書では、コントローラ5の撮像方向(Z軸正方向)を基準として、X軸回りの回転方向をピッチ方向、Y軸回りの回転方向をヨー方向、Z軸回りの回転方向をロール方向と呼ぶ。ジャイロセンサ48は、3軸回りの角速度を検出することができればよく、用いるジャイロセンサの数および組み合わせはどのようなものであってもよい。例えば、ジャイロセンサ48は、3軸ジャイロセンサであってもよいし、2軸ジャイロセンサと1軸ジャイロセンサとを組み合わせて3軸周りの角速度を検出するものであってもよい。ジャイロセンサ48で検出された角速度を表すデータは、通信部36へ出力される。また、ジャイロセンサ48は1軸または2軸回りの角速度を検出するものであってもよい。
【0088】
通信部36は、マイコン42、メモリ43、無線モジュール44、およびアンテナ45を含んでいる。マイコン42は、処理を行う際にメモリ43を記憶領域として用いながら、マイコン42が取得したデータをゲーム装置3へ無線送信する無線モジュール44を制御する。
【0089】
操作部32、撮像情報演算部35、加速度センサ37、およびジャイロセンサ48からマイコン42へ出力されたデータは、一時的にメモリ43に格納される。これらのデータは、操作データ(コントローラ操作データ)としてゲーム装置3へ送信される。すなわち、マイコン42は、ゲーム装置3のコントローラ通信モジュール19への送信タイミングが到来すると、メモリ43に格納されている操作データを無線モジュール44へ出力する。無線モジュール44は、例えばBluetooth(ブルートゥース)(登録商標)の技術を用いて、所定周波数の搬送波を操作データで変調し、その微弱電波信号をアンテナ45から放射する。つまり、操作データは、無線モジュール44で微弱電波信号に変調されてコントローラ5から送信される。微弱電波信号はゲーム装置3側のコントローラ通信モジュール19で受信される。受信された微弱電波信号について復調や復号を行うことによって、ゲーム装置3は操作データを取得することができる。そして、ゲーム装置3のCPU10は、コントローラ5から取得した操作データを用いてゲーム処理を行う。なお、通信部36からコントローラ通信モジュール19への無線送信は所定の周期毎に逐次行われるが、ゲームの処理は1/60秒を単位として(1フレーム時間として)行われることが一般的であるので、この時間以下の周期で送信を行うことが好ましい。コントローラ5の通信部36は、例えば1/200秒に1回の割合で操作データをゲーム装置3のコントローラ通信モジュール19へ出力する。
【0090】
以上のように、コントローラ5は、自機に対する操作を表す操作データとして、マーカ座標データ、加速度データ、角速度データ、および操作ボタンデータを送信可能である。また、ゲーム装置3は、上記操作データをゲーム入力として用いてゲーム処理を実行する。したがって、上記コントローラ5を用いることによって、ユーザは、各操作ボタンを押下する従来の一般的なゲーム操作に加えて、コントローラ5自体を動かすゲーム操作を行うことができる。例えば、コントローラ5を任意の姿勢に傾ける操作、コントローラ5によって画面上の任意の位置を指示する操作、および、コントローラ5自体を動かす操作等を行うことが可能となる。
【0091】
また、本実施形態において、コントローラ5は、ゲーム画像を表示する表示手段を有しないが、例えば電池残量を表す画像等を表示するための表示手段を有していてもよい。
【0092】
[4.端末装置7の構成]
次に、図8〜図10を参照して、端末装置7の構成について説明する。図8は、端末装置7の外観構成を示す図である。図8における(a)図は端末装置7の正面図であり、(b)図は上面図であり、(c)図は右側面図であり、(d)図は下面図である。また、図9は、ユーザが端末装置7を把持した様子を示す図である。
【0093】
図8に示されるように、端末装置7は、大略的には横長の長方形の板状形状であるハウジング50を備える。ハウジング50は、ユーザが把持することができる程度の大きさである。したがって、ユーザは、端末装置7を持って動かしたり、端末装置7の配置位置を変更したりすることができる。
【0094】
端末装置7は、ハウジング50の表面にLCD51を有する。LCD51は、ハウジング50の表面の中央付近に設けられる。したがって、ユーザは、図9に示すようにLCD51の両側部分のハウジング50を持つことによって、LCD51の画面を見ながら端末装置を持って動かすことができる。なお、図9ではユーザがLCD51の左右両側の部分のハウジング50を持つことで端末装置7を横持ちで(横に長い向きにして)持つ例を示しているが、端末装置7を縦持ちで(縦に長い向きにして)持つことも可能である。
【0095】
図8の(a)図に示すように、端末装置7は、操作手段として、LCD51の画面上にタッチパネル52を有する。本実施形態では、タッチパネル52は抵抗膜方式のタッチパネルである。ただし、タッチパネルは抵抗膜方式に限らず、例えば静電容量方式等、任意の方式のタッチパネルを用いることができる。また、タッチパネル52はシングルタッチ方式でもよいし、マルチタッチ方式であってもよい。本実施形態では、タッチパネル52として、LCD51の解像度と同解像度(検出精度)のものを利用する。ただし、必ずしもタッチパネル52の解像度とLCD51の解像度が一致している必要はない。タッチパネル52に対する入力は通常タッチペンを用いて行われるが、タッチペンに限らずユーザの指でタッチパネル52に対する入力をすることも可能である。なお、ハウジング50には、タッチパネル52に対する操作を行うために用いられるタッチペンを収納するための収納穴が設けられていてもよい。このように、端末装置7はタッチパネル52を備えるので、ユーザは、端末装置7を動かしながらタッチパネル52を操作することができる。つまりユーザは、LCD51の画面を動かしつつ、その画面に対して直接(タッチパネル52によって)入力を行うことができる。
【0096】
図8に示すように、端末装置7は、操作手段として、2つのアナログスティック53Aおよび53Bと、複数のボタン54A〜54Lとを備えている。各アナログスティック53Aおよび53Bは、方向を指示するデバイスである。各アナログスティック53Aおよび53Bは、ユーザの指で操作されるスティック部がハウジング50の表面に対して任意の方向(上下左右および斜め方向の任意の角度)にスライド(または傾倒)することができるように構成されている。また、左アナログスティック53AはLCD51の画面の左側に、右アナログスティック53BはLCD51の画面の右側にそれぞれ設けられる。したがって、ユーザは、左右いずれの手でもアナログスティックを用いて方向を指示する入力を行うことができる。また、図9に示すように、各アナログスティック53Aおよび53Bは、ユーザが端末装置7の左右部分を把持した状態で操作可能な位置に設けられるので、ユーザは、端末装置7を持って動かす場合においても各アナログスティック53Aおよび53Bを容易に操作することができる。
【0097】
各ボタン54A〜54Lは、所定の入力を行うための操作手段である。以下に示すように、各ボタン54A〜54Lは、ユーザが端末装置7の左右部分を把持した状態で操作可能な位置に設けられる(図9参照)。したがって、ユーザは、端末装置7を持って動かす場合においてもこれらの操作手段を容易に操作することができる。
【0098】
図8の(a)図に示すように、ハウジング50の表面には、各操作ボタン54A〜54Lのうち、十字ボタン(方向入力ボタン)54Aと、ボタン54B〜54Hとが設けられる。つまり、これらのボタン54A〜54Gは、ユーザの親指で操作可能な位置に配置されている(図9参照)。
【0099】
十字ボタン54Aは、LCD51の左側であって、左アナログスティック53Aの下側に設けられる。つまり、十字ボタン54Aはユーザの左手で操作可能な位置に配置されている。十字ボタン54Aは、十字の形状を有しており、上下左右の方向を指示することが可能なボタンである。また、ボタン54B〜54Dは、LCD51の下側に設けられる。これら3つのボタン54B〜54Dは、左右両方の手で操作可能な位置に配置されている。また、4つのボタン54E〜54Hは、LCD51の右側であって、右アナログスティック53Bの下側に設けられる。つまり、4つのボタン54E〜54Hはユーザの右手で操作可能な位置に配置されている。さらに、4つのボタン54E〜54Hは、(4つのボタン54E〜54Hの中心位置に対して)上下左右の位置関係となるように配置されている。したがって、端末装置7は、ユーザに上下左右の方向を指示させるためのボタンとして4つのボタン54E〜54Hを機能させることも可能である。
【0100】
また、図8の(a)図、(b)図、および(c)図に示すように、第1Lボタン54Iおよび第1Rボタン54Jは、ハウジング50の斜め上部分(左上部分および右上部分)に設けられる。具体的には、第1Lボタン54Iは、板状のハウジング50における上側の側面の左端に設けられ、上側および左側の側面から露出している。また、第1Rボタン54Jは、ハウジング50における上側の側面の右端に設けられ、上側および右側の側面から露出している。このように、第1Lボタン54Iは、ユーザの左手人差し指で操作可能な位置に配置され、第1Rボタン54Jは、ユーザの右手人差し指で操作可能な位置に配置される(図9参照)。
【0101】
また、図8の(b)図および(c)図に示すように、第2Lボタン54Kおよび第2Rボタン54Lは、板状のハウジング50の裏面(すなわちLCD51が設けられる表面の反対側の面)に突起して設けられる足部59Aおよび59Bに配置される。具体的には、第2Lボタン54Kは、ハウジング50の裏面の左側(表面側から見たときの左側)のやや上方に設けられ、第2Rボタン54Lは、ハウジング50の裏面の右側(表面側から見たときの右側)のやや上方に設けられる。換言すれば、第2Lボタン54Kは、表面に設けられる左アナログスティック53Aの概ね反対側の位置に設けられ、第2Rボタン54Lは、表面に設けられる右アナログスティック53Bの概ね反対側の位置に設けられる。このように、第2Lボタン54Kは、ユーザの左手中指で操作可能な位置に配置され、第2Rボタン54Lは、ユーザの右手中指で操作可能な位置に配置される(図9参照)。また、第2Lボタン54Kおよび第2Rボタン54Lは、図8の(c)図に示すように、上記足部59Aおよび59Bの斜め上方を向く面に設けられ、斜め上方を向くボタン面を有する。ユーザが端末装置7を把持した場合には中指は上下方向に動くと考えられるので、ボタン面を上方に向けることで、ユーザは第2Lボタン54Kおよび第2Rボタン54Lを押下しやすくなる。また、ハウジング50の裏面に足部が設けられることにより、ユーザはハウジング50を把持しやすくなり、かつ、足部にボタンが設けられることで、ハウジング50を把持したまま操作しやすくなる。
【0102】
なお、図8に示す端末装置7に関しては、第2Lボタン54Kおよび第2Rボタン54Lが裏面に設けられるので、LCD51の画面(ハウジング50の表面)が上を向いた状態で端末装置7を載置させる場合、画面が完全に水平にはならない場合がある。そのため、他の実施形態においては、ハウジング50の裏面に3つ以上の足部が形成されてもよい。これによれば、LCD51の画面が上を向いた状態では足部が床面に接することで床面に載置できるので、画面が水平になるように端末装置7を載置することができる。また、着脱可能な足部を追加することで端末装置7を水平に載置するようにしてもよい。
【0103】
各ボタン54A〜54Lには、ゲームプログラムに応じた機能が適宜割り当てられる。例えば、十字ボタン54Aおよびボタン54E〜54Hは方向指示操作や選択操作等に用いられてもよいし、各ボタン54B〜54Eは決定操作やキャンセル操作等に用いられてもよい。
【0104】
なお、図示しないが、端末装置7は、端末装置7の電源をオン/オフするための電源ボタンを有している。また、端末装置7は、LCD51の画面表示をオン/オフするためのボタンや、ゲーム装置3との接続設定(ペアリング)を行うためのボタンや、スピーカ(図10に示すスピーカ67)の音量を調節するためのボタンを有していてもよい。
【0105】
図8の(a)図に示すように、端末装置7は、マーカ55Aおよびマーカ55Bからなるマーカ部(図10に示すマーカ部55)をハウジング50の表面に備えている。マーカ部55は、LCD51の上側に設けられる。各マーカ55Aおよびマーカ55Bは、マーカ装置6の各マーカ6Rおよび6Lと同様、1以上の赤外LEDで構成される。マーカ部55は、上述のマーカ装置6と同様、コントローラ5の動き等をゲーム装置3が算出するために用いられる。また、ゲーム装置3はマーカ部55が備える各赤外LEDの点灯を制御することが可能である。
【0106】
端末装置7は、撮像手段であるカメラ56を備えている。カメラ56は、所定の解像度を有する撮像素子(例えば、CCDイメージセンサやCMOSイメージセンサ等)と、レンズとを含む。図8に示すように、本実施形態では、カメラ56はハウジング50の表面に設けられる。したがって、カメラ56は、端末装置7を持っているユーザの顔を撮像することができ、例えばLCD51を見ながらゲームを行っている時のユーザを撮像することができる。
【0107】
なお、端末装置7は、音声入力手段であるマイク(図10に示すマイク69)を備えている。ハウジング50の表面には、マイクロフォン用孔60が設けられる。マイク69はこのマイクロフォン用孔60の奥のハウジング50内部に設けられる。マイクは、ユーザの音声等、端末装置7の周囲の音を検出する。
【0108】
端末装置7は、音声出力手段であるスピーカ(図10に示すスピーカ67)を備えている。図8の(d)図に示すように、ハウジング50の下側側面にはスピーカ孔57が設けられる。スピーカ67の出力音はこのスピーカ孔57から出力される。本実施形態では、端末装置7は2つのスピーカを備えており、左スピーカおよび右スピーカのそれぞれの位置にスピーカ孔57が設けられる。
【0109】
また、端末装置7は、他の装置を端末装置7に接続するための拡張コネクタ58を備えている。本実施形態においては、図8の(d)図に示すように、拡張コネクタ58は、ハウジング50の下側側面に設けられる。なお、拡張コネクタ58に接続される他の装置はどのようなものであってもよく、例えば、特定のゲームに用いるコントローラ(銃型のコントローラ等)やキーボード等の入力装置であってもよい。他の装置を接続する必要がなければ、拡張コネクタ58は設けられていなくともよい。
【0110】
なお、図8に示した端末装置7に関して、各操作ボタンやハウジング50の形状や、各構成要素の数および設置位置等は単なる一例に過ぎず、他の形状、数、および設置位置であってもよい。
【0111】
次に、図10を参照して、端末装置7の内部構成について説明する。図10は、端末装置7の内部構成を示すブロック図である。図10に示すように、端末装置7は、図8に示した構成の他、タッチパネルコントローラ61、磁気センサ62、加速度センサ63、ジャイロセンサ64、ユーザインタフェースコントローラ(UIコントローラ)65、コーデックLSI66、スピーカ67、サウンドIC68、マイク69、無線モジュール70、アンテナ71、赤外線通信モジュール72、フラッシュメモリ73、電源IC74、および電池75を備える。これらの電子部品は、電子回路基板上に実装されてハウジング50内に収納される。
【0112】
UIコントローラ65は、各種の入出力部に対するデータの入出力を制御するための回路である。UIコントローラ65は、タッチパネルコントローラ61、アナログスティック53(アナログスティック53Aおよび53B)、操作ボタン54(各操作ボタン54A〜54L)、マーカ部55、磁気センサ62、加速度センサ63、およびジャイロセンサ64に接続される。また、UIコントローラ65は、コーデックLSI66と拡張コネクタ58に接続される。また、UIコントローラ65には電源IC74が接続され、UIコントローラ65を介して各部に電力が供給される。電源IC74には内蔵の電池75が接続され、電力が供給される。また、電源IC74には、コネクタ等を介して外部電源から電力を取得可能な充電器76またはケーブルを接続することが可能であり、端末装置7は、当該充電器76またはケーブルを用いて外部電源からの電力供給と充電を行うことができる。なお、端末装置7は、図示しない充電機能を有するクレイドルに端末装置7を装着することで充電を行うようにしてもよい。
【0113】
タッチパネルコントローラ61は、タッチパネル52に接続され、タッチパネル52の制御を行う回路である。タッチパネルコントローラ61は、タッチパネル52からの信号に基づいて所定の形式のタッチ位置データを生成してUIコントローラ65へ出力する。タッチ位置データは、タッチパネル52の入力面において入力が行われた位置の座標を表す。なお、タッチパネルコントローラ61は、タッチパネル52からの信号の読み込み、および、タッチ位置データの生成を所定時間に1回の割合で行う。また、UIコントローラ65からタッチパネルコントローラ61へは、タッチパネル52に対する各種の制御指示が出力される。
【0114】
アナログスティック53は、ユーザの指で操作されるスティック部がスライドした(または傾倒した)方向および量を表すスティックデータをUIコントローラ65へ出力する。また、操作ボタン54は、各操作ボタン54A〜54Lに対する入力状況(押下されたか否か)を表す操作ボタンデータをUIコントローラ65へ出力する。
【0115】
磁気センサ62は、磁界の大きさおよび方向を検知することで方位を検出する。検出された方位を示す方位データは、UIコントローラ65へ出力される。また、UIコントローラ65から磁気センサ62へは、磁気センサ62に対する制御指示が出力される。磁気センサ62に関しては、MI(磁気インピーダンス)素子、フラックスゲートセンサ、ホール素子、GMR(巨大磁気抵抗)素子、TMR(トンネル磁気抵抗)素子、あるいはAMR(異方性磁気抵抗)素子等を用いたセンサがあるが、方位を検出することができればどのようなものが用いられてもよい。なお、厳密には、地磁気以外に磁界が発生している場所においては、得られた方位データは方位を示さないことになるが、そのような場合であっても、端末装置7が動いた場合には方位データが変化するため、端末装置7の姿勢の変化を算出することができる。
【0116】
加速度センサ63は、ハウジング50の内部に設けられ、3軸(図8の(a)図に示すxyz軸)方向に沿った直線加速度の大きさを検出する。具体的には、加速度センサ63は、ハウジング50の長辺方向をx軸、ハウジング50の短辺方向をy軸、ハウジング50の表面に対して垂直な方向をz軸として、各軸の直線加速度の大きさを検出する。検出された加速度を表す加速度データはUIコントローラ65へ出力される。また、UIコントローラ65から加速度センサ63へは、加速度センサ63に対する制御指示が出力される。加速度センサ63は、本実施形態では例えば静電容量式のMEMS型加速度センサであるとするが、他の実施形態においては他の方式の加速度センサを用いるようにしてもよい。また、加速度センサ63は1軸または2軸方向を検出する加速度センサであってもよい。
【0117】
ジャイロセンサ64は、ハウジング50の内部に設けられ、上記x軸、y軸およびz軸の3軸周りの角速度を検出する。検出された角速度を表す角速度データは、UIコントローラ65へ出力される。また、UIコントローラ65からジャイロセンサ64へは、ジャイロセンサ64に対する制御指示が出力される。なお、3軸の角速度を検出するために用いられるジャイロセンサの数および組み合わせはどのようなものであってもよく、ジャイロセンサ64はジャイロセンサ48と同様、2軸ジャイロセンサと1軸ジャイロセンサとで構成されてもよい。また、ジャイロセンサ64は1軸または2軸方向を検出するジャイロセンサであってもよい。
【0118】
UIコントローラ65は、上記の各構成要素から受け取ったタッチ位置データ、スティックデータ、操作ボタンデータ、方位データ、加速度データ、および角速度データを含む操作データをコーデックLSI66に出力する。なお、拡張コネクタ58を介して端末装置7に他の装置が接続される場合には、当該他の装置に対する操作を表すデータが上記操作データにさらに含まれていてもよい。
【0119】
コーデックLSI66は、ゲーム装置3へ送信するデータに対する圧縮処理、および、ゲーム装置3から送信されたデータに対する伸張処理を行う回路である。コーデックLSI66には、LCD51、カメラ56、サウンドIC68、無線モジュール70、フラッシュメモリ73、および赤外線通信モジュール72が接続される。また、コーデックLSI66はCPU77と内部メモリ78を含む。端末装置7はゲーム処理自体を行なわない構成であるが、端末装置7の管理や通信のための最小限のプログラムを実行する必要がある。電源投入時にフラッシュメモリ73に格納されたプログラムを内部メモリ78に読み出してCPU77が実行することで、端末装置7が起動する。また、内部メモリ78の一部の領域はLCD51のためのVRAMとして使用される。
【0120】
カメラ56は、ゲーム装置3からの指示に従って画像を撮像し、撮像した画像データをコーデックLSI66へ出力する。また、コーデックLSI66からカメラ56へは、画像の撮像指示等、カメラ56に対する制御指示が出力される。なお、カメラ56は動画の撮影も可能である。すなわち、カメラ56は、繰り返し撮像を行って画像データをコーデックLSI66へ繰り返し出力することも可能である。
【0121】
サウンドIC68は、スピーカ67およびマイク69に接続され、スピーカ67およびマイク69への音声データの入出力を制御する回路である。すなわち、コーデックLSI66から音声データを受け取った場合、サウンドIC68は当該音声データに対してD/A変換を行って得られる音声信号をスピーカ67へ出力し、スピーカ67から音を出力させる。また、マイク69は、端末装置7に伝わる音(ユーザの音声等)を検知して、当該音を示す音声信号をサウンドIC68へ出力する。サウンドIC68は、マイク69からの音声信号に対してA/D変換を行い、所定の形式の音声データをコーデックLSI66へ出力する。
【0122】
コーデックLSI66は、カメラ56からの画像データと、マイク69からの音声データと、UIコントローラ65からの端末操作データとを無線モジュール70を介してゲーム装置3へ送信する。本実施形態では、コーデックLSI66は、画像データおよび音声データに対して、コーデックLSI27と同様の圧縮処理を行う。上記端末操作データ、ならびに、圧縮された画像データおよび音声データは、送信データとして無線モジュール70に出力される。無線モジュール70にはアンテナ71が接続されており、無線モジュール70はアンテナ71を介してゲーム装置3へ上記送信データを送信する。無線モジュール70は、ゲーム装置3の端末通信モジュール28と同様の機能を有している。すなわち、無線モジュール70は、例えばIEEE802.11nの規格に準拠した方式により、無線LANに接続する機能を有する。送信されるデータは必要に応じて暗号化されていてもよいし、されていなくともよい。
【0123】
以上のように、端末装置7からゲーム装置3へ送信される送信データには、操作データ(端末操作データ)、画像データ、および音声データが含まれる。なお、拡張コネクタ58を介して端末装置7に他の装置が接続される場合には、当該他の装置から受け取ったデータが上記送信データにさらに含まれていてもよい。また、赤外線通信モジュール72は、他の装置との間で例えばIRDAの規格に従った赤外線通信を行う。コーデックLSI66は、赤外線通信によって受信したデータを、必要に応じて上記送信データに含めてゲーム装置3へ送信してもよい。
【0124】
また、上述のように、ゲーム装置3から端末装置7へは、圧縮された画像データおよび音声データが送信される。これらのデータはアンテナ71および無線モジュール70を介してコーデックLSI66に受信される。コーデックLSI66は、受信した画像データおよび音声データを伸張する。伸張された画像データはLCD51へ出力され、画像がLCD51に表示される。また、伸張された音声データはサウンドIC68へ出力され、サウンドIC68はスピーカ67から音を出力させる。
【0125】
また、ゲーム装置3から受信されるデータに制御データが含まれる場合、コーデックLSI66およびUIコントローラ65は、制御データに従った制御指示を各部に行う。上述のように、制御データは、端末装置7が備える各構成要素(本実施形態では、カメラ56、タッチパネルコントローラ61、マーカ部55、各センサ62〜64、および赤外線通信モジュール72)に対する制御指示を表すデータである。本実施形態では、制御データが表す制御指示としては、上記各構成要素を動作させたり、動作を休止(停止)させたりする指示が考えられる。すなわち、ゲームで使用しない構成要素については電力消費を抑えるために休止させてもよく、その場合、端末装置7からゲーム装置3へ送信される送信データには、休止した構成要素からのデータが含まれないようにする。なお、マーカ部55は赤外LEDであるので、制御は単に電力の供給のON/OFFでよい。
【0126】
以上のように、端末装置7は、タッチパネル52、アナログスティック53、および操作ボタン54といった操作手段を備えるが、他の実施形態においては、これらの操作手段に代えて、または、これらの操作手段とともに、他の操作手段を備える構成であってもよい。
【0127】
また、端末装置7は、端末装置7の動き(位置や姿勢、あるいは、位置や姿勢の変化を含む)を算出するためのセンサとして、磁気センサ62、加速度センサ63、およびジャイロセンサ64を備えるが、他の実施形態においては、これらのセンサのうち1つまたは2つのみを備える構成であってもよい。また、他の実施形態においては、これらのセンサに代えて、または、これらのセンサとともに、他のセンサを備える構成であってもよい。
【0128】
また、端末装置7は、カメラ56およびマイク69を備える構成であるが、他の実施形態においては、カメラ56およびマイク69を備えていなくてもよく、また、いずれか一方のみを備えていてもよい。
【0129】
また、端末装置7は、端末装置7とコントローラ5との位置関係(コントローラ5から見た端末装置7の位置および/または姿勢等)を算出するための構成としてマーカ部55を備える構成であるが、他の実施形態ではマーカ部55を備えていない構成としてもよい。また、他の実施形態では、端末装置7は、上記位置関係を算出するための構成として他の手段を備えていてもよい。例えば、他の実施形態においては、コントローラ5がマーカ部を備え、端末装置7が撮像素子を備える構成としてもよい。さらにこの場合、マーカ装置6は赤外LEDに代えて、撮像素子を備える構成としてもよい。
【0130】
[5.ゲームシステムにおける処理の概要]
次に、本実施形態のゲームシステム1において実行される処理の概要について説明する。ゲームシステム1は、テレビ2と端末装置7という複数の表示装置にそれぞれゲーム画像を表示することによって、プレイヤにより見やすいゲーム画像を提供したり、ゲームの操作性や興趣性を向上したりすることができる。ここで、2つの表示装置のうちの一方であるテレビ2においては、画質向上等の目的で行われる種々の映像処理のために表示遅延が生じるおそれがあり、表示遅延に起因する種々の問題が生じるおそれがある。ゲームシステム1は、表示遅延の時間を測定し、遅延時間に応じた処理を行うことによって、種々の問題を防止するものである。
【0131】
(テレビ2における表示遅延)
図11は、ゲームシステム1において各ゲーム画像が出力されてから表示されるまでの時間を示す図である。なお、図11では、(実施形態における実際の動作とは異なるが)仮に、テレビ2に表示されるテレビ用ゲーム画像と、端末装置7に表示される端末用ゲーム画像とについてほぼ同時にゲーム画像が出力される場合を想定する。
【0132】
図11において、テレビ用ゲーム画像に関しては、テレビ2に入力されると、所定の映像処理が実行された後、画面に表示される。本実施形態においては、ゲーム装置3によってテレビ用ゲーム画像が出力されてから、テレビ2にテレビ用ゲーム画像が表示されるまでの時間T1を、「(テレビ2の)画像遅延時間」と呼ぶ。
【0133】
一方、端末用ゲーム画像は、ゲーム装置3において出力指示が行われると、圧縮処理が施されてから端末装置7へ無線送信され、端末装置7において、圧縮された端末用ゲーム画像に対して伸張処理が施された後、伸張された端末用ゲーム画像がLCD51に表示される。なお、本実施形態においては、端末装置7においては上記のような映像処理は実行されない。そのため、端末用ゲーム画像の出力指示が行われてから、端末装置7に端末用ゲーム画像が表示されるまでの時間T2は、テレビ2の画像遅延時間T1よりも短くなる。また、本実施形態においては、高効率の圧縮処理等により、1/60秒の1フレーム時間を処理単位として見た場合には時間T2をほとんど無視できる程度の時間とすることができる。
【0134】
以上のように、ゲームシステム1においては、テレビ用ゲーム画像が表示されるまでの時間(画像遅延時間)T1と、端末用ゲーム画像が表示されるまでの時間T2とが異なる。そのため、図11に示すように、テレビ用ゲーム画像と端末用ゲーム画像とを同時に出力してしまうと、各ゲーム画像が画面に表示されるタイミングがずれてしまう。各ゲーム画像の表示タイミングがずれると、例えば次のような問題が生じるおそれがある。すなわち、プレイヤがテレビ2と端末装置7との両方の画面を見てゲームを行う場合には、各ゲーム画像の表示タイミングがずれることによって、プレイヤが違和感を抱いたり、どちらのゲーム画像に合わせてゲーム操作を行うべきかわからないためにゲーム操作に支障をきたしたりするおそれがある。また、複数(例えば2人)のプレイヤのうちの一方がテレビ2を見て、他方のプレイヤが端末装置7を見てゲームを行う場合には、各ゲーム画像の表示タイミングがずれることによって、プレイヤ間に有利不利が生じたり、協力してゲームプレイを行う際に支障をきたしたりするおそれがある。なお、例えば、適切なタイミングでゲーム操作を行うことによって音楽を演奏するゲーム等、シビアな操作タイミングが要求されるゲームにおいては、上記の問題が顕著になる。
【0135】
以上より、本実施形態においては、ゲームシステム1は、以下に示す方法で上記画像遅延時間を測定する。そして、端末用ゲーム画像の出力タイミングを画像遅延時間に応じて遅らせるようにすることで、テレビ用ゲーム画像と端末用ゲーム画像との表示タイミングを合わせる。以下、画像遅延時間の測定方法と、端末用ゲーム画像の出力タイミングを遅らせる処理とについて説明する。
【0136】
(遅延時間の測定)
図12は、ゲームシステム1において画像遅延時間の測定するための処理の流れを示すタイミングチャートである。画像遅延時間を測定する際、ゲーム装置3はまず、テスト画像をテレビ2へ出力する(ステップS1)。テスト画像とは、画像遅延時間の測定用に用いられる所定パターンの画像(または動画)である。詳細は後述するが、テスト画像に関しては、テレビ2に表示されたテスト画像が端末装置7のカメラ56によって撮像される。テスト画像は、カメラ56による撮像画像に含まれるテスト画像が後述する認識処理によって認識可能なものであれば、どのような画像であってもよい。
【0137】
テスト画像を入力したテレビ2は、テスト画像に対して映像処理を行った後、テスト画像を表示する(ステップS2)。上記ステップS1の処理からステップS2の処理までの時間T1が上記画像遅延時間である。なお、テレビ2における映像処理は、テレビの機種や、その時点で選択されている映像モード(どのような映像処理を行うか)によって異なる。
【0138】
端末装置7は、テレビ2に表示されているテスト画像をカメラ56によって撮像する(ステップS3)。したがって、画像遅延時間を測定する際には、端末装置7は、カメラ56がテレビ2の画面の方を向いた姿勢とされている必要がある。また、カメラ56によって撮像された画像(撮像画像)には、テスト画像が含まれることとなる。端末装置7は、撮像画像をゲーム装置3へ無線送信する(ステップS4)。なお、本実施形態においては、撮像画像は圧縮されて送信される。
【0139】
圧縮された撮像画像は、ゲーム装置3において受信される(ステップS5)。このとき、ゲーム装置3は、圧縮された撮像画像に対して伸張処理を行う。さらに、ゲーム装置3は、撮像画像に対して所定の画像認識処理を行う(ステップS6)。この画像認識処理は、撮像画像内のテスト画像を識別する処理であり、撮像画像内にテスト画像が含まれるか否か、換言すれば、テレビ2の画面にテスト画像が表示されたか否かを判定するための処理である。なお、実際には、上記ステップS3〜S6の処理は、それぞれ逐次実行される。つまり、端末装置7は、テレビ2の画面を撮像して撮像画像を送信する処理を繰り返し実行し、ゲーム装置3は、撮像画像を受信して画像認識処理を実行する処理を繰り返し実行する。
【0140】
上記画像認識処理においてテスト画像を識別することができた場合、ゲーム装置3は、テスト画像をテレビ2へ出力(ステップS1)してから、画像認識処理が完了する(ステップS6)までの時間T4を計測する。なお、画像認識処理が完了する時点とは、撮像画像内にテスト画像が含まれると判定される時点である。
【0141】
ここで、端末装置7のカメラ56が撮像を行ってから(ステップS3)、画像認識処理が完了するまでの時間T5は、予め測定しておくことができ、概ね一定である。ゲーム装置3は、測定によって得られる時間T5を予め記憶しておく。したがって、ゲーム装置3は、上記時間T4から時間T5を引いた差分として画像遅延時間T1を算出することができる。
【0142】
以上のように、本実施形態においては、画像認識処理(ステップS6)において撮像画像にテスト画像が含まれるとの判定が行われた場合、画像遅延時間T1は、当該判定が行われたタイミング(ステップS6)と、ゲーム装置3がテスト画像を出力したタイミング(ステップS1)と、カメラ56が当該撮像画像を撮像してから当該判定が行われるまでの所要時間(時間T5)とに基づいて算出される。本実施形態によれば、プレイヤは、端末装置7のカメラ56をテレビ2の画面の方へ向けるだけでよいので、画像遅延時間を容易に算出することができる。また、上記の測定は任意のタイミングで行うことができるので、プレイヤは、例えばゲームシステム1の初期設置時の他、テレビ2の映像モードが変更された場合に測定を行うこともできる。そのため、映像モードの変更等によって画像遅延時間が変化しても当該時間をその都度正確に測定することができる。
【0143】
本実施形態においては、ゲームシステム1は、上記の方法によって画像遅延時間を予め測定しておき、ゲーム処理を実行する際には、測定しておいた画像遅延時間に応じて端末用ゲーム画像の送信タイミングを遅らせる。以下、図13を参照して、端末用ゲーム画像の送信タイミングを遅らせる処理について説明する。
【0144】
(送信タイミングの調整)
図13は、ゲームシステム1において端末用ゲーム画像が送信される際の処理の流れを示す図である。図13に示すように、ゲーム装置3は、各ゲーム画像(テレビ用ゲーム画像および端末用ゲーム画像)をほぼ同じタイミングで生成する。テレビ用ゲーム画像については、ゲーム装置3は、生成されたゲーム画像をすぐにテレビ2へ出力する。一方、端末用ゲーム画像については、ゲーム装置3は、生成されたゲーム画像をゲーム装置3内に一時記憶し、端末装置7への画像の送信を待機する。ここで、テレビ用ゲーム画像の送信を待機する時間(待機時間)T3は、上記画像遅延時間に応じて決められる。具体的には図13に示すように、待機時間T3は、画像遅延時間T1から、端末装置7に端末用ゲーム画像が表示されるまでの時間T2を減算した時間である。なお、本実施形態においては、時間T2はほとんど無視できる程度の時間であるとし、待機時間T3が画像遅延時間T1と同じ長さに決定されてもよい。
【0145】
端末用ゲーム画像が生成されてから待機時間T3が経過すると、ゲーム装置3は、当該端末用ゲーム画像を端末装置7へ送信する。すなわち、当該端末用ゲーム画像が圧縮されて端末装置7へ送信され、端末装置7は、圧縮された端末用ゲーム画像を伸張してLCD51に表示する。これによって、テレビ用ゲーム画像と端末用ゲーム画像の表示タイミングを同期させることができる。
【0146】
以上のように、本実施形態においては、ゲーム装置3は、画像遅延時間に基づいて、端末用ゲーム画像が端末装置7へ送信されるタイミングを遅らせる。これによって、ゲーム装置3は、画像遅延時間に応じた適切なタイミングで端末用ゲーム画像を送信することができ、テレビ用ゲーム画像と端末用ゲーム画像の表示タイミングを確実に同期させることができる。
【0147】
(ゲーム音に関する処理)
上記ゲーム画像の場合と同様、テレビ2のスピーカ2aに出力されるゲーム音声(テレビ用ゲーム音声)についても、音声出力に遅延が生じる場合がある。例えば、テレビ2において表示する画像とスピーカ2aから出力される音声との間で同期がとられる場合には、画像の表示遅延に伴って音声出力にも遅延が生じる。このようにテレビ用ゲーム音声に遅延が生じ、端末装置7において出力されるゲーム音声(端末用ゲーム音声)とテレビ用ゲーム音声との出力タイミングがずれる場合には、各ゲーム画像の表示タイミングがずれる場合と同様、プレイヤが違和感を抱いたり、ゲーム操作に支障をきたしたりするおそれがある。
【0148】
したがって、本実施形態においては、ゲーム装置3は、ゲーム音声についてもゲーム画像と同様、遅延時間を測定し、遅延時間に応じた処理を実行する。すなわち、テレビ用ゲーム音声の遅延時間(音声遅延時間)を測定し、端末用ゲーム音声の出力タイミングを音声遅延時間に応じて遅らせるようにすることで、テレビ用ゲーム音声と端末用ゲーム音声との出力タイミングを合わせるようにする。
【0149】
詳細は後述するが、音声遅延時間の測定は、画像遅延時間の測定方法に準じた方法で行うことができる。すなわち、音声遅延時間を測定する際、ゲーム装置3はまず、音声遅延時間の測定用に用いられる所定パターンの音声であるテスト音声をテレビ2へ出力する。テスト音声を入力したテレビ2は、テスト音声をスピーカ2aから出力する。ゲーム装置3がテスト音声を出力してからスピーカ2aがテスト音声を出力するまでの時間が上記音声遅延時間である。音声遅延時間は、テレビの機種や、その時点で選択されている映像モードや、テレビ2が画像と音声とを同期して出力する機能を有するか否か等によって異なる。
【0150】
さらに、端末装置7は、スピーカ2aから出力されるテスト音声をマイク69によって検出する。また、マイク69によって検出された音声(検出音)には、テスト音声が含まれることとなる。端末装置7は、検出音を圧縮してゲーム装置3へ無線送信する。圧縮された検出音は、ゲーム装置3において受信されて伸張される。さらに、ゲーム装置3は、検出音に対して所定の音声認識処理を行う。この音声認識処理は、検出音からテスト音声を識別する処理であり、検出音にテスト音声が含まれるか否か、換言すれば、テレビ2のスピーカ2aからテスト音声が出力されたか否かを判定するための処理である。なお、端末装置7は、スピーカ2aからの音を検出して検出音を送信する処理を繰り返し実行し、ゲーム装置3は、検出音を受信して音声認識処理を実行する処理を繰り返し実行する。
【0151】
上記音声認識処理においてテスト音声を識別することができた場合、ゲーム装置3は、テスト音声をテレビ2へ出力してから、音声認識処理が完了するまでの時間(計測時間)を計測する。なお、音声認識処理が完了する時点とは、検出音にテスト音声が含まれると判定される時点である。また、端末装置7のマイク69が音声を検出してから音声認識処理が完了するまでの処理時間は、予め測定されて記憶される。したがって、ゲーム装置3は、上記計測時間から処理時間を引いた差分として音声遅延時間を算出することができる。
【0152】
また、音声についても画像と同様、ゲーム装置3は、音声遅延時間に応じた音声待機時間だけ遅らせて端末用ゲーム音声を端末装置7へ出力する。これによって、テレビ用ゲーム音声と端末用ゲーム音声の出力タイミングを同期させることができる。
【0153】
[6.ゲームシステムにおける処理の詳細]
次に、本ゲームシステムにおいて実行される処理の詳細を説明する。まず、ゲームシステム1における処理において用いられる各種データについて説明する。図14は、ゲームシステム1における処理において用いられる各種データを示す図である。図14において、ゲーム装置3のメインメモリ(外部メインメモリ12または内部メインメモリ11e)に記憶される主なデータを示す図である。図14に示すように、ゲーム装置3のメインメモリには、ゲームプログラム80、受信データ81、および処理用データ86が記憶される。なお、メインメモリには、図14に示すデータの他、ゲームに登場する各種オブジェクトの画像データやゲームに使用される音声データ等、ゲームに必要なデータが記憶される。
【0154】
ゲームプログラム80は、ゲーム装置3に電源が投入された後の適宜のタイミングで光ディスク4からその一部または全部が読み込まれてメインメモリに記憶される。なお、ゲームプログラム80は、光ディスク4に代えて、フラッシュメモリ17やゲーム装置3の外部装置から(例えばインターネットを介して)取得されてもよい。また、ゲームプログラム80に含まれる一部(例えば、コントローラ5および/または端末装置7の姿勢を算出するためのプログラム)については、ゲーム装置3内に予め記憶されていてもよい。ゲームプログラム80には、後述する画像遅延測定処理(図15)、音声遅延測定処理(図16)、およびゲーム処理(図17)を実行するためのプログラムが含まれる。
【0155】
受信データ81は、コントローラ5および端末装置7から受信される各種のデータである。受信データ81は、コントローラ操作データ82、端末操作データ83、撮像画像データ84、および、検出音データ85を含む。コントローラ5が複数接続される場合には、複数のコントローラ操作データ82が記憶される。端末装置7が複数接続される場合には、それぞれ複数の端末操作データ83、撮像画像データ84、および、検出音データ85が記憶される。
【0156】
コントローラ操作データ82は、コントローラ5に対するユーザ(プレイヤ)の操作を表すデータである。コントローラ操作データ82は、コントローラ5から送信されてゲーム装置3において取得され、メインメモリに記憶される。上述のように、コントローラ操作データ82は、上記加速度センサ37およびジャイロセンサ48の検出結果を表すデータ、各操作ボタン32a〜32iに対する入力状態を表すデータ、および、上記マーカ座標を表すデータを含む。メインメモリには、最新の(最後に取得された)ものから順に所定個数のコントローラ操作データが記憶されてもよい。
【0157】
なお、コントローラ操作データ82は、コントローラ5を操作するユーザの操作を表すものであればよく、上記の各データの一部のみを含むものであってもよい。また、コントローラ5が他の入力手段(例えば、タッチパネルやアナログスティック等)を有する場合には、コントローラ操作データ82は、当該他の入力手段に対する操作を表すデータを含んでいてもよい。
【0158】
端末操作データ83は、端末装置7に対するユーザの操作を表すデータである。端末操作データ83は、端末装置7から送信されてゲーム装置3において取得され、メインメモリに記憶される。上述のように、端末操作データ83は、タッチ位置データ、スティックデータ、操作ボタンデータ、方位データ、加速度データ、および角速度データを含む。なお、メインメモリには、最新の(最後に取得された)ものから順に所定個数の端末操作データが記憶されてもよい。
【0159】
なお、端末操作データ83は、端末装置7を操作するユーザの操作を表すものであればよく、上記各データのいずれか1つのみを含むものであってもよい。また、端末装置7が他の入力手段(例えば、タッチパッドや、コントローラ5の撮像情報演算部35等)を有する場合には、端末操作データ83は、当該他の入力手段に対する操作を表すデータを含んでいてもよい。
【0160】
撮像画像データ84は、端末装置7のカメラ56によって撮像された画像(カメラ画像)を表すデータである。撮像画像データ84は、端末装置7からの圧縮された画像データがコーデックLSI27によって伸張された画像データであり、入出力プロセッサ11aによってメインメモリに記憶される。なお、メインメモリには、最新の(最後に取得された)ものから順に所定個数の撮像画像データが記憶されてもよい。
【0161】
検出音データ85は、端末装置7のマイク69によって検出された音声(検出音)を表すデータである。検出音データ85は、端末装置7から送信されてくる圧縮された音声データがコーデックLSI27によって伸張された音声データであり、入出力プロセッサ11aによってメインメモリに記憶される。
【0162】
処理用データ86は、ゲームシステム1における情報処理(図15〜図17)において用いられるデータである。処理用データ86は、画像処理時間データ87、音声処理時間データ88、画像計測時間データ89、音声計測時間データ90、画像遅延時間データ91、音声遅延時間データ92、画像待機時間データ93、音声待機時間データ94、および音声生成指示データ95を含む。なお、図14に示すデータの他、処理用データ86は、ゲームに登場する各種オブジェクトに設定される各種パラメータを表すデータ等、ゲーム処理において用いられる各種データを含む。
【0163】
画像処理時間データ87は、画像遅延時間の測定の際に、画像を撮像してから当該画像内におけるテスト画像を認識するまでに要する処理時間(画像処理時間と呼ぶ)を表すデータである。具体的には、画像処理時間は、端末装置7のカメラ56が撮像を行ってから画像認識処理が完了するまでの時間T5である(図12参照)。画像処理時間は予め測定され、測定された時間を表すデータは予めゲームプログラム80とともに光ディスク4に記憶される。ゲーム装置3において画像遅延測定処理が実行される場合には、当該データが適宜のタイミングで光ディスク4から読み込まれて画像処理時間データ87としてメインメモリに記憶される。
【0164】
音声処理時間データ88は、音声遅延時間の測定の際に、スピーカ2aからの音声を検出してから後述するテスト音声を認識するまでに要する処理時間(音声処理時間)を表すデータである。具体的には、音声処理時間は、端末装置7のマイク69が上記音声を検出してから音声認識処理が完了するまでの時間である。音声処理時間は予め測定され、測定された時間を表すデータは予めゲームプログラム80とともに光ディスク4に記憶される。ゲーム装置3において音声遅延測定処理が実行される場合には、当該データが適宜のタイミングで光ディスク4から読み込まれて音声処理時間データ88としてメインメモリに記憶される。
【0165】
画像計測時間データ89は、画像遅延測定処理に要する時間、すなわち、ゲーム装置3がテスト画像をテレビ2へ出力してから、画像認識処理が完了するまでの時間(画像計測時間)T4を表すデータである。また、音声計測時間データ90は、音声遅延測定処理に要する時間、すなわち、ゲーム装置3がテスト音声をテレビ2へ出力してから、音声認識処理が完了するまでの時間(音声計測時間)を表すデータである。
【0166】
画像遅延時間データ91は、ゲーム装置3によってテレビ用ゲーム画像が出力されてから、テレビ2にテレビ用ゲーム画像が表示されるまでの時間、すなわち、上記画像遅延時間を表すデータである。また、音声遅延時間データ92は、ゲーム装置3によってテレビ用ゲーム音声が出力されてから、テレビ2のスピーカ2aからテレビ用ゲーム音声が出力されるまでの時間、すなわち、上記音声遅延時間を表すデータである。
【0167】
画像待機時間データ93は、端末用ゲーム画像が生成されてから出力されるまでの待機時間(画像待機時間)を表すデータである。画像待機時間は、上記画像遅延時間に基づいて設定される。また、音声待機時間データ94は、生成されるべき端末用ゲーム音声が確定してから実際に生成されて出力されるまでの待機時間(音声待機時間)を表すデータである。
【0168】
音声生成指示データ95は、CPU10がDSP11cに対して音声を生成するための指示(音声生成指示)を表すデータである。本実施形態においては、端末用ゲーム音声の出力タイミングを遅らせるために、音声生成指示がメインメモリに一時記憶される。一時記憶されていた音声生成指示は、端末用ゲーム音声を端末装置7へ実際に出力するタイミングでDSP11cに送られ、当該音声生成指示を受けたDSP11cによって端末用ゲーム音声が生成されて端末装置7へ送信される。
【0169】
次に、図15〜図17を参照して、ゲーム装置3において行われる処理の詳細を説明する。図15は、ゲーム装置3において実行される画像遅延測定処理の流れを示すフローチャートである。画像遅延測定処理は、画像遅延時間を測定し、画像遅延時間に応じた画像待機時間を設定する処理である。画像遅延測定処理は、どのようなタイミングで実行されてもよいが、例えば、ゲームシステム1の初期設置時や、ゲームプログラム80の実行開始時に実行される。
【0170】
なお、図15〜図17に示すフローチャートの各ステップの処理は、単なる一例に過ぎず、同様の結果が得られるのであれば、各ステップの処理順序を入れ替えてもよい。また、変数の値や、判断ステップで利用される閾値も、単なる一例に過ぎず、必要に応じて他の値を採用してもよい。また、本実施形態では、上記フローチャートの各ステップの処理をCPU10が実行するものとして説明するが、CPU10以外のプロセッサや専用回路が上記各ステップの一部のステップの処理を実行するようにしてもよい。
【0171】
図15においては、まずステップS11において、CPU10は、端末装置7のカメラ56をテレビ2の方へ向ける旨を表す画像を表示させる。この画像は、テレビ2に表示されてもよいし、端末装置7に表示されてもよいし、両方に表示されてもよい。具体的には、例えば「端末装置のカメラをテレビの方へ向けて下さい」等のメッセージを表す画像がCPU10およびGPU11bによって生成され、VRAM11dに記憶される。そして、上記画像をテレビ2へ出力する場合には、CPU10は、VRAM11dに記憶された上記画像のデータをAV−IC15へ送り、AV−IC15は当該画像のデータをAVコネクタ16を介してテレビ2へ出力する。これによって、上記画像がテレビ2に表示される。また、上記画像を端末装置7へ出力する場合には、VRAM11dに記憶された上記画像データは、CPU10によってコーデックLSI27に送られ、コーデックLSI27によって所定の圧縮処理が行われる。さらに、圧縮処理が施された上記画像のデータは、端末通信モジュール28によってアンテナ29を介して端末装置7へ送信される。端末装置7は、ゲーム装置3から送信されてくる画像のデータを無線モジュール70によって受信し、コーデックLSI66によって所定の伸張処理が行われる。伸張処理が行われた画像データはLCD51に出力され、上記画像がLCD51に表示される。上記ステップS11の次にステップS12の処理が実行される。
【0172】
ステップS12において、CPU10は、テレビ2にテスト画像の出力を開始する。すなわち、所定のテスト画像がCPU10およびGPU11bによって生成されてテレビ2へ出力される。ステップS12において画像をテレビ2へ出力する動作は上記ステップS11と同様である。また、CPU10は、ステップS12の処理時点から時間の計測を開始する。なお、ステップS12の処理以降、画像遅延測定処理が終了するまで、テスト画像は1フレーム時間(ここでは1/60秒)に1回の割合で繰り返し出力される。また、テスト画像は、静止画であってもよいし、動画であってもよいし、後述するように静止画が一定時間毎に繰り返し表示される画像であってもよい。ステップS12の次にステップS13の処理が実行される。
【0173】
ステップS13において、CPU10は、端末装置7からの撮像画像を取得する。ここで、端末装置7は、端末操作データと撮像画像データと検出音データとをゲーム装置3へ繰り返し送信する。ゲーム装置3はこれらのデータを逐次受信する。ゲーム装置3においては、端末通信モジュール28がこれらのデータを逐次受信し、撮像画像データおよび検出音データについてはコーデックLSI27によって伸張処理が逐次施される。そして、入出力プロセッサ11aが端末操作データと撮像画像データと検出音データとをメインメモリに逐次記憶する。ステップS13においては、CPU10は、最新の端末操作データに含まれる撮像画像データ84をメインメモリから読み出す。ステップS13の次にステップS14の処理が実行される。
【0174】
ステップS14において、CPU10は、ステップS13で取得された撮像画像に対して画像認識処理を実行する。具体的には、CPU10は、撮像画像内から上記テスト画像を識別する処理を実行する。なお、テスト画像を識別するための具体的な方法はどのような方法であってもよく、例えばパターンマッチングの手法によって撮像画像内からテスト画像を識別することができる。ステップS14の次にステップS15の処理が実行される。
【0175】
ステップS15において、CPU10は、ステップS14の画像認識処理が成功したか否か、すなわち、画像認識処理によってテスト画像を識別することができたか否かを判定する。ステップS15の判定処理は、ステップS13で取得された撮像画像内にテスト画像が含まれるか否かを判定するための処理であり、換言すれば、テレビ2の画面にテスト画像が表示されたか否かを判定するための処理である。ステップS15の判定結果が肯定である場合、ステップS16の処理が実行される。一方、ステップS15の判定結果が否定である場合、ステップS13の処理が再度実行される。したがって、ステップS13〜S15の一連の処理は、画像認識処理が成功するまで繰り返し実行される。なお、ステップS13〜S15の一連の処理ループは、1フレーム時間に1回の割合で実行されることが好ましいが、当該処理ループが実行される間隔は、画像認識処理に要する時間によっては1フレーム時間よりも長くてもよい。
【0176】
ステップS16において、CPU10は、ゲーム装置3がテスト画像をテレビ2へ出力してから画像認識処理が完了するまでの画像計測時間を算出する。具体的には、CPU10は、ステップS12の処理時点からステップS16の処理時点までの経過時間を計測し、計測した時間を表すデータを画像計測時間データ89としてメインメモリに記憶する。ステップS16の次にステップS17の処理が実行される。
【0177】
ステップS17において、CPU10は画像遅延時間を算出する。具体的には、CPU10は、画像処理時間データ87および画像計測時間データ89をメインメモリから読み出し、画像計測時間から画像処理時間を引いた差分として画像遅延時間を算出する。そして、算出された画像遅延時間を表すデータを画像遅延時間データ91としてメインメモリに記憶する。ステップS17の次にステップS18の処理が実行される。
【0178】
ステップS18において、CPU10は、画像遅延時間に基づいて画像待機時間を設定する。ここで、画像待機時間は、画像遅延時間から、端末用ゲーム画像がゲーム装置3から出力されてからテレビ2に表示されるまでの時間を減算した時間として算出される(図13参照)。本実施形態においては、端末装置7に端末用ゲーム画像が表示されるまでの時間を無視できる程度の時間であるとし、画像待機時間を画像遅延時間と等しい時間として設定する。CPU10は、設定された画像待機時間を表すデータを画像待機時間データ93としてメインメモリに記憶する。なお、設定された画像待機時間が継続的に用いられる場合には、画像待機時間データ93はフラッシュメモリ17に記憶されてもよい。ステップS18の次にステップS19の処理が実行される。
【0179】
ステップS19において、CPU10は、画像遅延時間の測定(画像待機時間の設定)が終了した旨をプレイヤに対して通知する。具体的には、例えば「設定が終了しました。ゲームを開始してください」等のメッセージを表す画像を表示する。この画像は、テレビ2に表示されてもよいし、端末装置7に表示されてもよいし、両方に表示されてもよい。なお、ステップS19において画像をテレビ2または端末装置7へ出力する動作は上記ステップS11と同様である。ステップS19の後、CPU10は画像遅延測定処理を終了する。
【0180】
上記画像遅延測定処理によって、ゲーム装置3は画像遅延時間を測定し、画像遅延時間に応じた画像待機時間を設定することができる。なお、本実施形態においては、画像遅延時間を測定するためには、プレイヤに端末装置7のカメラ56をテレビ2の方へ向けさせる必要がある。ここで、もし仮にテスト画像が表示された後でカメラ56がテレビ2の方へ向けられたとすれば、上記計測時間として正確な時間を計測することができず、正確な画像遅延時間を測定することができなくなる。
【0181】
そこで、本実施形態においては、CPU10は、カメラ56をテレビ2の画面の方へ向ける旨の通知を表す画像を生成し、当該画像が表示された(ステップS11)の後で、テスト画像をテレビ2に表示させる(ステップS12)。これによれば、テスト画像が表示されるよりも先にカメラ56をテレビ2の方へ向けさせることができ、画像遅延時間を正確に算出することができる。なお、上記ステップS12の処理は、ステップS11において通知が行われてから所定時間が経過した後で実行されてもよい。
【0182】
また、他の実施形態においては、CPU10は、カメラ56がテレビ2の画面の方を向いているか否かを判定する処理を実行するようにしてもよい。このとき、CPU10は、カメラ56がテレビ2の画面の方を向いていると判定された場合に、テレビ2にテスト画像を表示する。これによれば、テスト画像が表示される前により確実にカメラ56をテレビ2の方へ向けさせることができる。なお、上記の判定方法としては、例えば、カメラ56を向けた後でプレイヤに所定の操作(例えば、端末装置7の所定のボタンを押下する操作)を行わせ、当該所定の操作が行われたか否かを判定する方法が考えられる。また、例えば、所定の画像をテレビ2に表示させ、当該所定の画像がカメラ56で撮像されたか否かを判定する方法が考えられる。なお、この所定の画像は、テスト画像と同じであってもよい。すなわち、CPU10は、テスト画像を一定時間毎に繰り返し(断続的に)表示させ、最初にテスト画像がカメラ56によって撮像された場合には画像遅延時間を測定せず、その後に再度表示されたテスト画像がカメラ56によって撮像された場合に画像遅延時間を算出するようにしてもよい。また、例えば、CPU10は、一連の動画(ゲームのタイトル画面等)を構成する複数の画像のうちの所定の画像がカメラ56によって撮像された場合、その後に表示される画像をテスト画像として用いて画像遅延時間を算出するようにしてもよい。
【0183】
また、CPU10は、画像遅延時間を算出する処理を所定回数実行するようにしてもよい。具体的には、CPU10は、ステップS12〜S17の一連の処理を所定回数実行し、画像遅延時間を複数個算出するようにしてもよい。そして、複数個の画像遅延時間の平均値を最終的な画像遅延時間として算出するようにしてもよい。これによれば、画像遅延時間をより正確に算出することができる。
【0184】
次に、音声遅延測定処理について説明する。図16は、ゲーム装置3において実行される音声遅延測定処理の流れを示すフローチャートである。音声遅延測定処理は、音声遅延時間を測定し、音声遅延時間に応じた音声待機時間を設定する処理である。音声遅延測定処理は、画像遅延測定処理と同様、どのようなタイミングで実行されてもよく、例えば、画像遅延測定処理の後に続けて実行されてもよい。また、音声遅延測定処理は、画像遅延測定処理とは異なり、端末装置7のカメラ56をテレビ2の方へ向ける必要がないので、CPU10は、例えばゲームのプレイ中(ゲーム操作中)において音声遅延測定処理を実行することも可能である。また、CPU10は、音声遅延測定処理を画像遅延測定処理と同時に(並行して)実行することも可能である。
【0185】
図16においては、まずステップS21において、CPU10は、テレビ2のスピーカ2aにテスト音声の出力を開始する。すなわち、CPU10の指示に応じて所定のテスト音声のデータがDSP11cによって生成されてAV−IC15へ送られる。これに応じて、AV−IC15はテスト音声のデータをAVコネクタ16を介してテレビ2へ出力する。これによって、テスト音声がスピーカ2aから出力される。また、CPU10は、ステップS21の処理時点から時間の計測を開始する。ステップS21の次にステップS22の処理が実行される。
【0186】
ステップS22において、CPU10は、端末装置7からの検出音を取得する。ここで、端末装置7は、端末操作データと撮像画像データと検出音データとをゲーム装置3へ繰り返し送信する。ゲーム装置3はこれらのデータを逐次受信する。ゲーム装置3においては、端末通信モジュール28がこれらのデータを逐次受信し、撮像画像データおよび検出音データについてはコーデックLSI27によって伸張処理が逐次施される。そして、入出力プロセッサ11aが端末操作データと撮像画像データと検出音データとをメインメモリに逐次記憶する。ステップS22においては、CPU10は、最新の端末操作データに含まれる検出音データ85をメインメモリから読み出す。ステップS22の次にステップS23の処理が実行される。
【0187】
ステップS23において、CPU10は、ステップS22で取得された検出音に対して音声認識処理を実行する。具体的には、CPU10は、検出音に含まれる上記テスト音声を識別する処理を実行する。なお、テスト音声を識別するための具体的な方法はどのような方法であってもよく、例えば検出音とテスト音声との波形や周波数スペクトルを比較することによって検出音に含まれるテスト音声を識別することができる。ステップS23の次にステップS24の処理が実行される。
【0188】
ステップS24において、CPU10は、ステップS23の音声認識処理が成功したか否か、すなわち、音声認識処理によってテスト音声を識別することができたか否かを判定する。ステップS24の判定処理は、ステップS23で取得された検出音にテスト音声が含まれるか否かを判定するための処理であり、換言すれば、テレビ2のスピーカ2aからテスト音声が出力されたか否かを判定するための処理である。ステップS24の判定結果が肯定である場合、ステップS25の処理が実行される。一方、ステップS24の判定結果が否定である場合、ステップS22の処理が再度実行される。したがって、ステップS22〜S24の一連の処理は、音声認識処理が成功するまで繰り返し実行される。なお、ステップS22〜S24の一連の処理ループは、1フレーム時間に1回の割合で実行されることが好ましいが、当該処理ループが実行される間隔は、音声認識処理に要する時間によっては1フレーム時間よりも長くてもよい。
【0189】
ステップS25において、CPU10は、ゲーム装置3がテスト音声をテレビ2へ出力してから音声認識処理が完了するまでの音声計測時間を算出する。具体的には、CPU10は、ステップS21の処理時点からステップS25の処理時点までの経過時間を計測し、計測した時間を表すデータを音声計測時間データ90としてメインメモリに記憶する。ステップS25の次にステップS26の処理が実行される。
【0190】
ステップS26において、CPU10は音声遅延時間を算出する。具体的には、CPU10は、音声処理時間データ88および音声計測時間データ90をメインメモリから読み出し、音声計測時間から音声処理時間を引いた差分として音声遅延時間を算出する。そして、算出された音声遅延時間を表すデータを音声遅延時間データ92としてメインメモリに記憶する。ステップS26の次にステップS27の処理が実行される。
【0191】
ステップS27において、CPU10は、音声遅延時間に基づいて音声待機時間を設定する。ここで、音声待機時間は、音声遅延時間から、ゲーム装置3において端末用ゲーム音声が生成されてから端末装置7において出力されるまでの時間を減算した時間として算出される。本実施形態においては、端末装置7において端末用ゲーム音声が出力されるまでの時間を無視できる程度の時間であるとし、音声待機時間を音声遅延時間と等しい時間として設定する。CPU10は、設定された音声待機時間を表すデータを音声待機時間データ94としてメインメモリに記憶する。なお、設定された音声待機時間が継続的に用いられる場合には、音声待機時間データ94はフラッシュメモリ17に記憶されてもよい。ステップS27の後、CPU10は音声遅延測定処理を終了する。
【0192】
上記音声遅延測定処理によって、ゲーム装置3は音声遅延時間を測定し、音声遅延時間に応じた音声待機時間を設定することができる。なお、音声遅延測定処理は、プレイヤに特別な操作を行わせる必要がないので、プレイヤに対する通知処理(ステップS11およびS19)を実行しなくてもよい。ただし、他の実施形態においては、テスト音の検出をより確実に行うべく、プレイヤに音を立てさせない目的で、CPU10は通知処理を行うようにしてもよい。
【0193】
また、CPU10は、音声遅延時間を算出する処理を所定回数実行するようにしてもよい。具体的には、CPU10は、ステップS21〜S26の一連の処理を所定回数実行し、音声遅延時間を複数個算出するようにしてもよい。そして、複数個の音声遅延時間の平均値を最終的な音声遅延時間として算出するようにしてもよい。これによれば、音声遅延時間をより正確に算出することができる。
【0194】
次に、ゲーム装置3において実行されるゲーム処理について説明する。図17は、ゲーム装置3において実行されるゲーム処理の流れを示すフローチャートである。ゲーム装置3の電源が投入されると、ゲーム装置3のCPU10は、図示しないブートROMに記憶されている起動プログラムを実行し、これによってメインメモリ等の各ユニットが初期化される。そして、光ディスク4に記憶されたゲームプログラムがメインメモリに読み込まれ、CPU10によって当該ゲームプログラムの実行が開始される。なお、ゲーム装置3においては、電源投入後に光ディスク4に記憶されたゲームプログラムがすぐに実行される構成であってもよいし、電源投入後にまず所定のメニュー画面を表示する内蔵プログラムが実行され、その後ユーザによってゲームの開始が指示されたときに光ディスク4に記憶されたゲームプログラムが実行される構成であってもよい。図17に示すフローチャートは、以上の処理が完了した後に行われる処理を示すフローチャートである。
【0195】
まずステップS31において、CPU10は初期処理を実行する。初期処理は、例えば、ゲーム処理で用いる各種パラメータの初期値を設定する処理である。また、各待機時間データ93および94がフラッシュメモリ17に記憶されている場合には、当該待機時間データ93および94がメインメモリに読み込まれてもよい。ステップS31の次にステップS32の処理が実行される。
【0196】
以上のステップS31の次にステップS32の処理が実行される。以降、ステップS32〜S40の一連の処理からなる処理ループが所定時間(1フレーム時間)に1回の割合で繰り返し実行される。
【0197】
ステップS32において、CPU10は、コントローラ5および端末装置7から送信されてくる各操作データを取得する。コントローラ5はコントローラ操作データをゲーム装置3へ繰り返し送信するので、ゲーム装置3においては、コントローラ通信モジュール19が当該コントローラ操作データを逐次受信し、受信されたコントローラ操作データが入出力プロセッサ11aによってメインメモリに逐次記憶される。送受信の間隔はゲームの処理時間よりも短い方が好ましく、例えば200分の1秒である。また、上記ステップS13で述べたように、端末操作データとカメラ画像データとマイク音データとがメインメモリに逐次記憶される。ステップS32においては、CPU10は、最新のコントローラ操作データ82および端末操作データ83をメインメモリから読み出す。ステップS32の次にステップS33の処理が実行される。
【0198】
ステップS33において、CPU10はゲーム制御処理を実行する。ゲーム制御処理は、上記各操作データを入力として用いて、ゲーム空間内のオブジェクトを動作させる処理等を実行し、ゲームを進行させる処理である。本実施形態においては、ゲーム制御処理の具体的な内容はどのようなものであってもよい。ステップS33の次にステップS34の処理が実行される。
【0199】
ステップS34において、テレビ2に表示するためのテレビ用ゲーム画像がCPU10およびGPU11bによって生成される。すなわち、CPU10およびGPU11bは、ステップS33のゲーム制御処理の結果を表すデータをメインメモリから読み出し、また、ゲーム画像を生成するために必要なデータをVRAM11dから読み出し、ゲーム画像を生成する。ゲーム画像は、ステップS33のゲーム制御処理の結果を表すものであればよく、どのような方法で生成されてもよい。例えば、ゲーム画像の生成方法は、仮想のゲーム空間内に仮想カメラを配置して、仮想カメラから見たゲーム空間を計算することによって3次元のCG画像を生成する方法であってもよいし、(仮想カメラを用いずに)2次元の画像を生成する方法であってもよい。生成されたテレビ用ゲーム画像はVRAM11dに記憶される。上記ステップS34の次にステップS35の処理が実行される。
【0200】
ステップS35において、端末装置7に表示するための端末用ゲーム画像がCPU10およびGPU11bによって生成される。端末用ゲーム画像も上記テレビ用ゲーム画像と同様、ステップS33のゲーム制御処理の結果を表すものであればよく、どのような方法で生成されてもよい。また、端末用ゲーム画像は、上記テレビ用ゲーム画像と同様の方法で生成されてもよいし、異なる方法で生成されてもよい。生成された端末用ゲーム画像はVRAM11dに記憶される。なお、ゲームの内容によってはテレビ用ゲーム画像と端末用ゲーム画像とは同一であってもよく、この場合、ステップS35においてゲーム画像の生成処理は実行されなくてもよい。上記ステップS35の次にステップS36の処理が実行される。
【0201】
ステップS36においては、テレビ2のスピーカ2aに出力するためのテレビ用ゲーム音声が生成される。すなわち、CPU10は、ステップS33のゲーム制御処理の結果に応じたゲーム音声をDSP11cに生成させる。なお、生成されるゲーム音声は、例えばゲームの効果音や、ゲームに登場するキャラクタの声や、BGM等であってもよい。上記ステップS36の次にステップS37の処理が実行される。
【0202】
ステップS37においては、端末装置7のスピーカ67に出力するための端末用ゲーム音声を生成するための音声生成指示が作成される。作成された音声生成指示は、音声生成指示データ95としてメインメモリに記憶される。なお、端末用ゲーム音声は、上記テレビ用ゲーム音声と同じであってもよいし、異なっていてもよい。また、例えば効果音は異なるが、BGMは同じである、というように、一部のみが異なっていてもよい。上記ステップS37の次にステップS38の処理が実行される。
【0203】
ステップS38において、CPU10は、テレビ2へゲーム画像およびゲーム音声を出力する。具体的には、CPU10は、VRAM11dに記憶された最新のテレビ用ゲーム画像のデータと、ステップS36でDSP11cによって生成されたテレビ用ゲーム音声のデータとをAV−IC15へ送る。これに応じて、AV−IC15は画像および音声のデータをAVコネクタ16を介してテレビ2へ出力する。これによって、テレビ2において行われる所定の映像処理の後、テレビ用ゲーム画像がテレビ2に表示されるとともに、テレビ用ゲーム音声がスピーカ2aから出力される。ステップS38の次にステップS39の処理が実行される。
【0204】
ステップS39において、CPU10は、各待機時間に応じたゲーム画像およびゲーム音声を端末装置7へ送信する。具体的には、CPU10は、ステップS35で生成されてVRAM11dに記憶されてから画像待機時間が経過した端末用ゲーム画像を端末装置7へ送信する。また、CPU10は、ステップS37で記憶されてから音声待機時間が経過した音声生成指示をDSP11cに送り、DSP11cに端末用ゲーム音声を生成させる。なお、画像待機時間および音声待機時間は、メインメモリに記憶されている画像待機時間データ93および音声待機時間データ94を参照することによって知ることができる。上記端末用ゲーム画像のデータおよび端末用ゲーム音声のデータは、コーデックLSI27に送られ、コーデックLSI27によって所定の圧縮処理が行われる。さらに、圧縮処理が施された画像および音声のデータは、端末通信モジュール28によってアンテナ29を介して端末装置7へ送信される。端末装置7は、ゲーム装置3から送信されてくる画像および音声のデータを無線モジュール70によって受信し、コーデックLSI66によって所定の伸張処理が行われる。伸張処理が行われた画像データはLCD51に出力され、伸張処理が行われた音声データはサウンドIC68に出力される。これによって、画像待機時間だけ遅れて端末用ゲーム画像がLCD51に表示されるとともに、音声待機時間だけ遅れて端末用ゲーム音声がスピーカ67から出力される。したがって、テレビ用ゲーム画像と端末用ゲーム画像との表示タイミングを同期させることができるとともに、テレビ用ゲーム音声と端末用ゲーム音声との出力タイミングを同期させることができる。ステップS39の次にステップS40の処理が実行される。
【0205】
ステップS40において、CPU10は、ゲームを終了するか否かを判定する。ステップS40の判定は、例えば、ゲームオーバーになったか否か、あるいは、ユーザがゲームを中止する指示を行ったか否か等によって行われる。ステップS40の判定結果が否定の場合、ステップS32の処理が再度実行される。一方、ステップS40の判定結果が肯定の場合、CPU10は図17に示すゲーム処理を終了する。以降、ステップS32〜S40の一連の処理は、ステップS40でゲームを終了すると判定されるまで繰り返し実行される。
【0206】
以上のように、上記ゲーム処理によれば、端末用ゲーム画像が端末装置7へ送信されるタイミングは、上記画像遅延測定処理で設定された画像待機時間だけ遅らされる。また、端末用ゲーム音声が端末装置7へ送信されるタイミングは、上記音声遅延測定処理で設定された音声待機時間だけ遅らされる。これによって、テレビ2と端末装置7との間でゲーム画像の表示およびゲーム音声の出力の同期をとることができる。
【0207】
なお、上記実施形態においては、端末用ゲーム画像の送信タイミングを遅らせるために、生成されたゲーム画像が一時記憶された(ステップS35)。ここで、他の実施形態においては、CPU10は、ゲーム画像自体ではなく、ゲーム画像を生成するために必要なデータを一時記憶してもよい。このとき、CPU10は、画像待機時間が経過した時点で端末用ゲーム画像を生成して送信する。また、他の実施形態においては、圧縮されたゲーム画像が一時記憶されてもよい。
【0208】
また、上記実施形態においては、端末用ゲーム音声の送信タイミングを遅らせるために、音声生成指示データが一時記憶された(ステップS36)。ここで、他の実施形態においては、CPU10は、ステップS36において音声データを生成し、音声データを一時記憶してもよい。さらに、他の実施形態においては、圧縮されたゲーム音声が一時記憶されてもよい。
【0209】
[7.変形例]
上記実施形態は本発明を実施する一例であり、他の実施形態においては例えば以下に説明する構成で本発明を実施することも可能である。
【0210】
(画像および音声に対する同期に関する変形例)
上記実施形態においては、ゲーム画像およびゲーム音声の両方について、テレビ2と端末装置7との間で同期をとるようにした。ここで、ゲームの内容によっては、ゲーム画像のみ同期をとれば十分である場合や、ゲーム音声のみ同期を取れば十分である場合がある。したがって、他の実施形態においては、ゲーム装置3は、ゲーム画像とゲーム音声のいずれか一方のみについて同期をとるようにしてもよい。
【0211】
(一方の遅延から他方の遅延を推測する変形例)
また、テレビ2の機種によっては、画面に表示される画像とスピーカ2aから出力される音声との間で同期をとることが可能な種類のものもある。このような種類のテレビが用いられる場合、ゲーム装置3は、画像遅延時間および音声遅延時間の一方のみを測定し、他方の遅延時間を、測定した遅延時間と同じ値として推測してもよい。すなわち、ゲーム装置3は、音声遅延時間を測定せず、画像遅延時間に基づいて音声待機時間(または音声遅延時間)を設定することで、端末用ゲーム音声が端末装置7へ出力されるタイミングを遅らせるようにしてもよい。また、ゲーム装置3は、画像遅延時間を測定せず、音声遅延時間に基づいて画像待機時間(または画像遅延時間)を設定することで、端末用ゲーム画像が端末装置7へ出力されるタイミングを遅らせるようにしてもよい。
【0212】
(テレビ画像とテレビ音声とを同期させる変形例)
また、上記実施形態においては、テレビ2と端末装置7との間の同期をとる目的で、テレビ2の画像遅延時間および音声遅延時間を測定した。ここで、他の実施形態においては、上記実施形態における遅延測定方法は、テレビ2と端末装置7との間の同期をとる用途に限らず、他の用途に用いることも可能である。例えば、テレビ2の機種によっては、画面に表示される画像とスピーカ2aから出力される音声との間で同期がとられておらず、対応する画像と音声が別のタイミングで出力されるテレビもある。このようなテレビが用いられる場合には、ゲーム装置3は、上記画像遅延時間および音声遅延時間を用いて、テレビ用ゲーム画像とテレビ用ゲーム音声との間の同期をとるようにしてもよい。
【0213】
図18は、本実施形態の変形例においてテレビ用ゲーム画像およびテレビ用ゲーム音声が出力される際の処理の流れを示す図である。図18においては、テレビ用ゲーム音声の出力タイミングに対してテレビ用ゲーム画像の表示タイミングが遅れる場合を例として、テレビ用ゲーム音声とテレビ用ゲーム画像との同期を取るための処理を説明する。
【0214】
図18においては、画像遅延時間T11は音声遅延時間T12よりも長い。そのため、仮にゲーム装置3からゲーム音声とゲーム画像とを同時に出力するとすれば、テレビ2においてゲーム音声とゲーム画像との出力(表示)タイミングはずれてしまう。ゲーム画像とゲーム音声とがずれることによって、プレイヤが違和感を抱くおそれがある。そこで、本変形例では、図18に示すように、ゲーム装置3は、画像遅延時間T11から音声遅延時間T12を引いた差の時間(差分時間と呼ぶ)を算出し、テレビ用ゲーム音声の出力タイミングを差分時間だけ遅らせる。これによって、テレビ用ゲーム画像の表示タイミングとテレビ用ゲーム音声の出力タイミングを合わせることができ、プレイヤが違和感を抱くことを防止することができる。
【0215】
図19は、図18に示す変形例におけるゲーム処理の流れを示すフローチャートである。なお、図19において、図17に示す処理と同じ処理については図17と同じステップ番号を付し、詳細な説明を省略する。
【0216】
図19においては、上記実施形態と同様にステップS31〜S35の処理が実行される。そして、ステップS37の次にステップS50の処理が実行される。ステップS50において、CPU10は、テレビ2のスピーカ2aに出力するためのテレビ用ゲーム音声を生成するための音声生成指示が作成される。作成された音声生成指示のデータはメインメモリに記憶される。上記ステップS50の次にステップS37の処理が実行される。
【0217】
また、本変形例においては、ステップS37の処理の次にステップS51の処理が実行される。ステップS51において、CPU10は、画像待機時間および音声待機時間に応じたゲーム画像およびゲーム音声をテレビ2へ送信する。具体的には、ゲーム画像に関しては、CPU10は、ステップS34で生成された最新のテレビ用ゲーム画像をテレビ2へ出力する。一方、ゲーム音声に関しては、CPU10は、ステップS50で記憶されてから上記差分時間が経過した音声生成指示をDSP11cに送り、DSP11cにテレビ用ゲーム音声を生成させる。これによって、テレビ2においては、画面に表示されるゲーム画像とスピーカ2aから出力されるゲーム音声との同期がとられることになる。なお、テレビ用ゲーム画像およびテレビ用ゲーム音声をゲーム装置3からテレビ2へ出力する際の処理は、上記実施形態と同様である。ステップS51の次にステップS39の処理が実行される。
【0218】
なお、本変形例におけるステップS39においては、CPU10は、上記実施形態と同様の処理を実行してもよいが、テレビ用ゲーム音声が遅れて出力されることに対応するべく、テレビ用ゲーム音声との同期をとるように端末用ゲーム音声の出力タイミングを調整してもよい。具体的には、CPU10は、ステップS37で記憶されてから画像待機時間(音声待機時間と差分時間との和)が経過した音声生成指示をDSP11cに送り、DSP11cに端末用ゲーム音声を生成させるようにしてもよい。これによれば、本変形例においてもテレビ用ゲーム音声と端末用ゲーム音声との同期をとることができる。
【0219】
なお、上記の変形例においては、テレビ用ゲーム音声の出力タイミングに対してテレビ用ゲーム画像の表示タイミングが遅れる場合を例として説明したが、テレビ用ゲーム画像の表示タイミングに対してテレビ用ゲーム音声の出力タイミングが遅れる場合も、上記の変形例に準じた処理で同期をとることができる。すなわち、テレビ用ゲーム画像の表示タイミングに対してテレビ用ゲーム音声の出力タイミングが遅れる場合、上記ステップS51において、CPU10は、ステップS35で生成されてVRAM11dに記憶されてから差分時間が経過したテレビ用ゲーム画像をテレビ2へ出力すればよい。このとき、ゲーム音声については、CPU10は、上記実施形態と同様、ステップS35の次のステップS36においてテレビ用ゲーム音声を生成し、ステップS51においてテレビ用ゲーム音声をテレビ2へ出力すればよい。以上のように、CPU10は、テレビ2に表示されるゲーム画像と、テレビ2のスピーカ2aに出力させるためのゲーム音声とが同期するように、当該ゲーム音声をゲーム装置3が出力するタイミングと、当該ゲーム画像をゲーム装置3が出力するタイミングとの少なくともいずれかを画像遅延時間および音声遅延時間に基づいて遅らせるようにしてもよい。
【0220】
また、上記の変形例においては、ゲーム装置3は、テレビ2におけるゲーム画像とゲーム音声との同期をとるだけでなく、テレビ2と端末装置7との間で同期をとるようにした。ここで、他の実施形態においては、テレビ2におけるゲーム画像とゲーム音声との同期をとり、テレビ2と端末装置7との間では同期をとらないようにしてもよい。つまり、本実施形態における遅延測定方法は、テレビ2におけるゲーム画像とゲーム音声との同期をとるのみの目的で用いられてもよい。
【0221】
(遅延測定方法の用途に関する変形例)
ゲームにおいては、ゲーム画像の表示やゲーム音声の出力に応じてシビアなタイミングでゲーム操作を行うことが要求されることがある。そのため、上記実施形態における遅延測定方法は、特にゲーム装置やゲームシステム、ゲームプログラム等、ゲーム用途に適用することが特に有効である。ただし、上記実施形態における遅延測定方法は、ゲーム用途に限らず、任意の画像および/または音声をテレビ2と端末装置7に表示(出力)させる場合に適用可能である。また、上記実施形態においては、入力された画像に対して画質向上等のための映像処理が行われる表示装置の例としてテレビ2を挙げて説明したが、上記実施形態における遅延測定方法は、当該映像処理を行う任意の表示装置に対して適用することができる。
【0222】
(遅延測定システムの構成に関する変形例)
上記実施形態においては、表示装置における表示遅延を測定するための遅延測定システムの例として、2つの表示装置(テレビ2および端末装置7)と、1つのゲーム装置3と、1つのコントローラ5とを含むゲームシステム1を挙げて説明した。ここで、ゲームシステム1は、ゲーム装置3および可搬型表示装置(端末装置7)を含んでいればよい。すなわち、テレビ2は汎用のものでよいので、ゲーム装置3および端末装置7とともにゲームシステム1として提供されなくてもよい。また、ゲームシステム1は、操作装置として複数のコントローラ5を含んでいてもよいし、コントローラ5を含まない構成であってもよい。
【0223】
また、他の実施形態においては、ゲーム装置は複数であってもよい。このとき、ゲームシステム1において実行される一連の情報処理は、特定の1つのゲーム装置によって実行されてもよいし、各ゲーム装置によって情報処理が分担されて実行されてもよい。また、各表示装置(テレビ2および端末装置7)は、特定の1つのゲーム装置と通信を行うようにしてもよいし、それぞれ別個のゲーム装置と通信を行うようにしてもよい。
【0224】
(ゲーム処理を実行する情報処理装置に関する変形例)
上記実施形態においては、ゲームシステム1において実行される一連の情報処理をゲーム装置3が実行したが、当該情報処理の一部は他の装置によって実行されてもよい。例えば、他の実施形態においては、ゲーム処理の一部(例えば、端末用ゲーム画像の生成処理)を端末装置7が実行するようにしてもよい。また、他の実施形態では、互いに通信可能な複数の情報処理装置を有するゲームシステムにおいて、当該複数の情報処理装置が上記情報処理を分担して実行するようにしてもよい。
【産業上の利用可能性】
【0225】
以上のように、本発明は、テレビ等の表示装置に画像や音声を出力する場合に生じる遅延を測定すること、あるいは、遅延により生じる問題を解消または低減すること等を目的として、例えばゲームシステムやゲーム装置、ゲームプログラム等として利用することが可能である。
【符号の説明】
【0226】
1 ゲームシステム
2 テレビ
2a スピーカ
3 ゲーム装置
4 光ディスク
5 コントローラ
6 マーカ装置
7 端末装置
10 CPU
11e 内部メインメモリ
12 外部メインメモリ
51 LCD
56 カメラ
67 スピーカ
69 マイク
【技術分野】
【0001】
本発明は、テレビジョン受像器等の表示装置における表示遅延または音声出力遅延を測定する遅延測定システムおよび遅延測定方法に関する。
【背景技術】
【0002】
従来、テレビジョン受像器(以下、単に「テレビ」と記載する)を表示装置として用いるゲームシステムがある。例えば、特許文献1には、テレビと、テレビに接続されるゲーム装置とを含むゲームシステムが記載されている。このゲームシステムにおいては、ゲーム装置によって生成されたゲーム画像がテレビに表示されるとともに、ゲーム装置によって生成されたゲーム音がテレビのスピーカから出力される。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2009−297221号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
上記のような、テレビを表示装置に用いるゲームシステムにおいては、ゲーム画像の表示遅延が生じるおそれがあった。すなわち、近年のデジタルテレビにおいては、画質向上等の目的で、入力される画像に対して種々の映像処理が行われ、映像処理が施された画像が表示される。この映像処理は一般的に時間を要するため、ゲーム装置からテレビへゲーム画像が出力されてから、テレビにゲーム画像が表示されるまでに遅延が生じるおそれがあった。そのため、テレビを表示装置に用いるゲームシステムにおいては、ゲーム操作に対するゲーム表示の応答性が悪くなるという問題があった。
【0005】
また、テレビおよびゲーム装置を含むゲームシステムに対してさらに別の表示装置を追加することによって、複数の表示装置にそれぞれゲーム画像を表示させることを可能にしたゲームシステムを考える。このようなゲームシステムにおいて、別の表示装置に関しては上記のような映像処理が実行されないために表示遅延が(ほとんど)生じないとすれば、上記の遅延の問題が顕著になる。つまり、上記のゲームシステムでは、プレイヤは、表示遅延が生じないゲーム画像を別の表示装置によって見ることができるので、テレビにおいて表示遅延が生じていることを視認することができる。そのため、両方のゲーム画像を見るプレイヤにとっては違和感が顕著になるおそれが考えられる。また、ゲーム操作にシビアなタイミングが要求される種類のゲームにおいては、両方のゲーム画像を見るプレイヤがどちらの表示を基準に操作をすればわからなくなったり、複数人でゲームを行う場合において各ゲーム画像を見るプレイヤ毎に有利不利が生じたりする等、ゲーム操作に支障をきたしたりするおそれが考えられる。
【0006】
上記のように、テレビにおける表示遅延は、単にゲーム表示の応答性が悪くなるといった問題を生じさせる他、別の表示装置にもゲーム画像が表示される場合には、プレイヤが抱く違和感が顕著になったり、ゲーム操作に支障をきたしたりするといった問題を生じさせるおそれがある。なお、表示遅延の時間は、テレビの機種や映像モード(どのような映像処理が行われるか)によって異なるので、表示遅延の時間を個々に測定し、遅延に応じた処理を行う必要がある。
【0007】
それ故、本発明の目的は、テレビ等の表示装置に画像や音声を出力する場合に生じる遅延を測定することである。また、本発明の他の目的は、上記の遅延により生じる問題を解消または低減することである。
【課題を解決するための手段】
【0008】
本発明は、上記の課題を解決するために、以下の(1)〜(13)の構成を採用した。
【0009】
(1)
本発明の一例は、ゲーム装置と、可搬型表示装置とを含むゲームシステムである。
ゲーム装置は、画像生成部と、画像出力部と、画像圧縮部と、画像送信部とを備える。画像生成部は、ゲーム処理に基づいて第1ゲーム画像および第2ゲーム画像を逐次生成する。画像出力部は、可搬型表示装置とは異なる所定の表示装置へ第1ゲーム画像を逐次出力する。画像圧縮部は、第2ゲーム画像を逐次圧縮して圧縮画像データを逐次生成する。画像送信部は、圧縮画像データを可搬型表示装置へ無線で逐次送信する。
可搬型表示装置は、撮像部と、画像受信部と、画像伸張部と、表示部と、撮像データ送信部とを備える。画像受信部は、ゲーム装置から圧縮画像データを逐次受信する。画像伸張部は、圧縮画像データを逐次伸張して第2ゲーム画像を得る。表示部は、画像伸張部によって伸張された第2ゲーム画像を逐次表示する。撮像データ送信部は、撮像部が撮像した撮像画像を圧縮した圧縮撮像データをゲーム装置へ送信する。
ゲーム装置はさらに、撮像データ受信部と、画像判定部と、画像遅延算出部と、画像送信制御部とを備える。撮像データ受信部は、圧縮撮像データを受信して伸張して撮像画像を得る。画像判定部は、撮像データ受信部によって伸張された撮像画像に所定の第1ゲーム画像が含まれるか否かを判定する。画像遅延算出部は、撮像画像に所定の第1ゲーム画像が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、画像出力部が所定の第1ゲーム画像を出力したタイミングと、撮像部が当該撮像画像を撮像してから当該判定が行われるまでの処理時間とに基づいて、画像出力部が所定の第1ゲーム画像を出力してから所定の表示装置に当該所定の第1ゲーム画像が表示されるまでの画像遅延時間を算出する。画像送信制御部は、画像遅延時間に基づいて、第2ゲーム画像が可搬型表示装置へ送信されるタイミングを遅らせる。
【0010】
上記「ゲーム装置」は、ゲーム処理を実行し、ゲーム処理に基づいてゲーム画像を生成する情報処理装置であればどのようなものであってもよい。上記ゲーム装置は、ゲーム専用の情報処理装置であってもよいし、一般的なパーソナルコンピュータのような多用途の情報処理装置であってもよい。
上記「可搬型表示装置」は、後述する実施形態においては端末装置7であるが、上記各部を備える装置であればどのようなものであってもよい。なお、上記「可搬型」とは、プレイヤが手に持って動かしたり、任意の位置に配置を変更したりすることができる程度の大きさである意味である。
上記「ゲームシステム」は、ゲーム装置と可搬型表示装置とを含んでいればよく、第1ゲーム画像を表示する所定の表示装置を含んでいなくともよいし、含んでいてもよい。すなわち、ゲームシステムは、当該所定の表示装置を含まない形態で提供されてもよいし、含む形態で提供されてもよい。
上記「所定の表示装置」は、後述する実施形態におけるテレビ等、入力された画像に対して何らかの映像処理を行ってから表示する任意の表示装置を含む。
上記「所定の第1ゲーム画像」は、第1ゲーム画像のうちで、画像遅延時間の算出に用いられる第1ゲーム画像である。なお、所定の第1ゲーム画像の具体的な内容はどのようなものであってもよく、静止画であってもよいし、動画を構成する複数の画像のうちの1つであってもよい。
【0011】
上記(1)の構成によれば、所定の表示装置に表示された第1ゲーム画像を可搬型表示装置が撮像し、撮像画像を用いて画像遅延時間が算出される。これによれば、実際に表示された画像に基づいて遅延を測定するので、画像遅延時間を正確に算出することができる。また、ゲーム装置は、第2ゲーム画像が可搬型表示装置へ送信されるタイミングを画像遅延時間に基づいて遅らせるので、各ゲーム画像が表示されるタイミングを、所定の表示装置と可搬型表示装置とで合わせることができる。したがって、上記(1)の構成によれば、所定の表示装置と可搬型表示装置との間でゲーム画像の表示タイミングの同期をとることができ、所定の表示装置における表示遅延により生じる問題を解消することができる。
【0012】
(2)
所定の表示装置はスピーカを備えていてもよい。
このとき、ゲーム装置はさらに、音声生成部と、音声出力部と、音声送信部とを備える。音声生成部は、ゲーム処理に基づいて第1ゲーム音声および第2ゲーム音声を生成する。音声出力部は、所定の表示装置へ第1ゲーム音声を出力する。音声送信部は、第2ゲーム音声を可搬型表示装置へ無線で送信する。
可搬型表示装置は、音声受信部と、スピーカと、マイクと、検出音送信部とを備える。音声受信部は、ゲーム装置から第2ゲーム音声を受信する。スピーカは、第2ゲーム音声を出力する。検出音送信部は、マイクによる検出音をゲーム装置へ送信する。
ゲーム装置はさらに、検出音受信部と、音判定部と、音声遅延算出部と、音声送信制御部とを備える。検出音受信部は、検出音を受信する。音判定部は、検出音受信部によって受信された検出音に所定の第1ゲーム音声が含まれるか否かを判定する。音声遅延算出部は、検出音に所定の第1ゲーム音声が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、音声出力部が所定の第1ゲーム音声を出力したタイミングと、音検出部が当該検出音を検出してから当該判定が行われるまでの処理時間とに基づいて、音声出力部が所定の第1ゲーム音声を出力してから所定の表示装置のスピーカによって当該第1ゲーム音声が出力されるまでの音声遅延時間を算出する。音声送信制御部は、音声遅延時間に基づいて、第2ゲーム音声が可搬型表示装置へ送信されるタイミングを遅らせる。
【0013】
上記(2)の構成によれば、所定の表示装置に表示された第1ゲーム音声を可搬型表示装置が検出し、検出音を用いて音声遅延時間が算出される。これによれば、実際に出力された音声に基づいて遅延を測定するので、画像遅延時間を正確に算出することができる。また、ゲーム装置は、第2ゲーム音声が可搬型表示装置へ送信されるタイミングを音声遅延時間に基づいて遅らせるので、各ゲーム音声が出力されるタイミングを、所定の表示装置と可搬型表示装置とで合わせることができる。したがって、上記(2)の構成によれば、所定の表示装置と可搬型表示装置との間でゲーム音声の表示タイミングの同期をとることができ、所定の表示装置における音声出力遅延により生じる問題を解消することができる。
【0014】
(3)
画像生成部は、可搬型表示装置の撮像部を所定の表示装置の画面の方へ向ける旨の通知を表す画像を第1ゲーム画像または第2ゲーム画像として生成し、所定の表示装置または可搬型表示装置に当該画像が表示された後で、所定の第1ゲーム画像を生成して所定の表示装置に表示させてもよい。
【0015】
上記(3)の構成によれば、画像遅延時間の測定に用いられる所定の第1ゲーム画像を表示する前に、可搬型表示装置の撮像部を所定の表示装置の画面の方へ向ける旨の通知が行われる。これによれば、所定の第1ゲーム画像が表示された時点で撮像部が所定の表示装置の画面の方を向いていない事態が生じることを防止することができ、不正確な画像遅延時間が測定されることを防止することができる。
【0016】
(4)
ゲーム装置はさらに、複数の第2ゲーム画像を記憶可能な記憶部を備えていてもよい。このとき、画像送信制御部は、画像生成部によって生成された第2ゲーム画像を記憶部に記憶し、生成から画像遅延時間に基づく待機時間が経過した第2ゲーム画像を画像送信部に送信させる。
【0017】
上記「記憶部」は、後述する実施形態におけるメインメモリやフラッシュメモリ等、ゲーム装置がアクセス可能な記憶手段であればどのようなものであってもよい。なお、記憶部に記憶される第2ゲーム画像は、画像圧縮部によって圧縮された画像データであってもうよいし、圧縮前の画像データであってもよい。
【0018】
上記(4)の構成によれば、ゲーム装置は、第2ゲーム画像を記憶しておき、待機時間が経過した後で第2ゲーム画像を送信する。これによれば、第2ゲーム画像の送信タイミングを容易に調整することができる。
【0019】
(5)
画像送信制御部は、画像遅延時間と、第2ゲーム画像が生成されてから可搬型表示装置に表示されるまでの時間とに基づいて、第2ゲーム画像を可搬型表示装置へ送信するまでの待機時間を算出してもよい。
【0020】
上記(5)の構成によれば、画像遅延時間に加え、第2ゲーム画像が生成されてから可搬型表示装置に表示されるまでの時間を考慮して待機時間が決定される。これによれば、第1ゲーム画像と第2ゲーム画像との表示タイミングをより正確に同期させることができる。
【0021】
(6)
また、本発明の他の一例は、ゲーム装置と、可搬型表示装置とを含むゲームシステムである。
ゲーム装置は、音声生成部と、音声出力部と、音声送信部とを備える。音声生成部は、ゲーム処理に基づいて第1ゲーム音声および第2ゲーム音声を生成する。音声出力部は、スピーカを備える表示装置であって、可搬型表示装置とは異なる所定の表示装置へ第1ゲーム音声を出力する。音声送信部は、第2ゲーム音声を可搬型表示装置へ無線で送信する。
可搬型表示装置は、マイクと、音声受信部と、スピーカと、検出音送信部とを備える。音声受信部は、ゲーム装置から第2ゲーム音声を受信する。スピーカは、第2ゲーム音声を出力する。検出音送信部は、マイクによる検出音をゲーム装置へ送信する。
ゲーム装置はさらに、検出音受信部と、音判定部と、遅延算出部と、音声送信制御部とを備える。検出音受信部は、検出音を受信する。音判定部は、検出音受信部によって受信された検出音に所定の第1ゲーム音声が含まれるか否かを判定する。遅延算出部は、検出音に所定の第1ゲーム音声が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、音声出力部が所定の第1ゲーム音声を出力したタイミングと、音検出部が当該検出音を検出してから当該判定が行われるまでの処理時間とに基づいて、音声出力部が所定の第1ゲーム音声を出力してから所定の表示装置のスピーカによって当該第1ゲーム音声が出力されるまでの音声遅延時間を算出する。音声送信制御部は、音声遅延時間に基づいて、第2ゲーム音声が可搬型表示装置へ送信されるタイミングを遅らせる。
【0022】
上記「所定の第1ゲーム音声」は、第1ゲーム音声のうちで、音声遅延時間の算出に用いられる第1ゲーム音声である。なお、所定の第1ゲーム音声の具体的な内容はどのようなものであってもよい。
【0023】
上記(6)の構成によれば、上記(2)の構成と同様、所定の表示装置に表示された第1ゲーム音声を可搬型表示装置が検出し、検出音を用いて音声遅延時間が算出される。これによれば、実際に出力された音声に基づいて遅延を測定するので、画像遅延時間を正確に算出することができる。また、ゲーム装置は、第2ゲーム音声が可搬型表示装置へ送信されるタイミングを音声遅延時間に基づいて遅らせるので、各ゲーム音声が出力されるタイミングを、所定の表示装置と可搬型表示装置とで合わせることができる。したがって、上記(6)の構成によれば、所定の表示装置と可搬型表示装置との間でゲーム音声の表示タイミングの同期をとることができ、所定の表示装置における音声出力遅延により生じる問題を解消することができる。
【0024】
(7)
本発明の他の一例は、入力された画像に対して所定の映像処理を行ってから当該画像を表示する所定の表示装置の表示遅延を測定する遅延測定システムである。遅延測定システムは、所定の表示装置と通信可能な情報処理装置と、当該情報処理装置と無線通信可能な可搬型の端末装置とを含む。
情報処理装置は、画像生成部と、第1画像出力部とを備える。画像生成部は、所定の画像を生成する。第1画像出力部は、所定の表示装置へ所定の画像を出力する。
端末装置は、撮像部と、撮像画像送信部とを備える。撮像画像送信部は、撮像部が撮像した撮像画像を送信する。
情報処理装置はさらに、撮像画像受信部と、画像判定部と、画像遅延算出部とを備える。撮像画像受信部は、撮像画像を受信する。画像判定部は、撮像画像に所定の画像が含まれるか否かを判定する。画像遅延算出部は、撮像画像に所定の画像が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、第1画像出力部が所定の画像を出力したタイミングと、撮像部が当該撮像画像を撮像してから当該判定が行われるまでの処理時間とに基づいて、第1画像出力部が所定の画像を出力してから所定の表示装置に当該所定の画像が表示されるまでの画像遅延時間を算出する。
【0025】
上記「情報処理装置」は、画像を生成する機能を有する情報処理装置であればどのようなものであってもよい。上記情報処理装置は、後述する実施形態のようなゲーム装置であってもよいし、一般的なパーソナルコンピュータのような多用途の情報処理装置であってもよい。
上記「可搬型の端末装置」は、後述する実施形態においては、画像を表示する機能や操作装置としての機能を有する端末装置であるが、上記各部を備える装置であればどのようなものであってもよい。なお、上記「可搬型」とは、プレイヤが手に持って動かしたり、任意の位置に配置を変更したりすることができる程度の大きさである意味である。
上記「遅延測定システム」は、情報装置と端末装置とを含んでいればよく、第1画像を表示する所定の表示装置を含んでいなくともよいし、含んでいてもよい。すなわち、遅延測定システムは、当該所定の表示装置を含まない形態で提供されてもよいし、含む形態で提供されてもよい。
上記「所定の画像」は、画像遅延時間の算出に用いられる画像である。なお、所定の画像の具体的な内容はどのようなものであってもよく、静止画であってもよいし、動画を構成する複数の画像のうちの1つであってもよい。
【0026】
上記(7)の構成によれば、所定の表示装置に表示された所定の画像を可搬型表示装置が撮像し、撮像画像を用いて画像遅延時間が算出される。これによれば、実際に表示された所定の画像に基づいて遅延を測定するので、画像遅延時間を正確に算出することができる。
【0027】
(8)
画像生成部は、所定の表示装置に表示するための第1画像と、端末装置に表示するための第2画像とを逐次生成してもよい。このとき、第1画像出力部は、所定の表示装置へ第1画像を逐次出力する。情報処理装置はさらに、第2画像を端末装置へ逐次出力する第2画像出力部とを備える。
また、端末装置はさらに、画像受信部と、表示部とを備える。画像受信部は、情報処理装置から第2画像を逐次受信する。表示部は、受信された第2画像を逐次表示する。
情報処理装置は、画像遅延時間に基づいて、第2画像が端末装置へ出力されるタイミングを遅らせる画像出力制御部をさらに備える。
【0028】
上記(8)の構成によれば、情報処理装置は、第2画像が可搬型表示装置へ送信されるタイミングを画像遅延時間に基づいて遅らせるので、各画像が表示されるタイミングを、所定の表示装置と可搬型表示装置とで合わせることができる。したがって、上記(8)の構成によれば、所定の表示装置と可搬型表示装置との間で画像の表示タイミングの同期をとることができ、所定の表示装置における表示遅延により生じる問題を解消することができる。
【0029】
(9)
情報処理装置はさらに、音声生成部と、第1音声出力部と、第2音声出力部とを備えていてもよい。音声生成部は、所定の表示装置に出力するための第1音声と、端末装置に出力するための第2音声とを生成する。第1音声出力部は、所定の表示装置へ第1音声を出力する。第2音声出力部は、端末装置へ第2音声を出力する。
また、端末装置はさらに、音声受信部と、スピーカとを備える。音声受信部は、情報処理装置から第2音声を受信する。スピーカは、第2音声を出力する。
情報処理装置は、画像遅延時間に基づいて、第2音声が端末装置へ出力されるタイミングを遅らせる音声出力制御部をさらに備える。
【0030】
上記(9)の構成によれば、画像遅延時間に基づいて、第2音声が端末装置へ出力されるタイミングが調整される。これによれば、所定の表示装置と可搬型表示装置との間で画像の表示タイミングの同期をとることができるとともに、音声の出力タイミングの同期をとることができる。しかも、上記(9)の構成によれば、音声については遅延時間を測定する必要がないので、簡易な処理で画像および音声の両方について同期をとることができる。
【0031】
(10)
所定の表示装置はスピーカを備えていてもよい。このとき、情報処理装置はさらに、音声生成部と、音声出力部とを備えている。音声生成部は、所定の音を生成する。音声出力部は、所定の表示装置へ所定の音を出力する。
端末装置は、マイクと、マイクによる検出音を情報処理装置へ送信する検出音送信部とを備える。
情報処理装置はさらに、検出音受信部と、音判定部と、音声遅延算出部と、出力制御部とを備える。検出音受信部は、検出音を受信する。音判定部は、検出音受信部によって受信された検出音に所定の音が含まれるか否かを判定する。音声遅延算出部は、検出音に所定の音が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、音声出力部が所定の音を出力したタイミングと、音検出部が当該検出音を検出してから当該判定が行われるまでの処理時間とに基づいて、音声出力部が所定の音を出力してから所定の表示装置のスピーカによって当該所定の音が出力されるまでの音声遅延時間を算出する。出力制御部は、所定の表示装置に表示される画像と、当該所定の表示装置のスピーカに出力させるための音とが同期するように、当該音を音声出力部が出力するタイミングと、当該画像を画像出力部が出力するタイミングとの少なくともいずれかを画像遅延時間および音声遅延時間に基づいて遅らせる。
【0032】
上記(10)の構成によれば、情報処理装置は、画像遅延時間および音声遅延時間を算出し、これらの遅延時間に基づいて、所定の表示装置における画像の表示タイミングと、当該所定の表示装置のスピーカにおける音声の出力タイミングとを調整する。これによれば、所定の表示装置において上記2つのタイミングを同期させることができ、所定の表示装置における表示遅延あるいは音声出力遅延によりユーザが違和感を抱くことを防止することができる。
【0033】
(11)
また、本発明の他の一例は、所定の表示装置が備えるスピーカの音声出力遅延を測定する遅延測定システムである。遅延測定システムは、所定の表示装置と通信可能な情報処理装置と、当該情報処理装置と無線通信可能な可搬型の端末装置とを含む。
情報処理装置は、音声生成部と、第1音声出力部とを備える。音声生成部は、所定の音を生成する。第1音声出力部は、所定の表示装置へ所定の音を出力する。
端末装置は、マイクと、マイクによる検出音を情報処理装置へ送信する検出音送信部とを備える。
情報処理装置はさらに、検出音受信部と、音判定部と、音声遅延算出部とを備える。検出音受信部は、検出音を受信する。音判定部は、検出音受信部によって受信された検出音に所定の音が含まれるか否かを判定する。音声遅延算出部は、検出音に所定の音が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、音声出力部が所定の音を出力したタイミングと、音検出部が当該検出音を検出してから当該判定が行われるまでの処理時間とに基づいて、音声出力部が所定の音を出力してから所定の表示装置のスピーカによって当該所定の音が出力されるまでの音声遅延時間を算出する。
【0034】
上記(11)の構成によれば、所定の表示装置のスピーカから出力された所定の音を可搬型表示装置が検出し、検出音を用いて音声遅延時間が算出される。これによれば、実際に表示された所定の音に基づいて遅延を測定するので、音声遅延時間を正確に算出することができる。
【0035】
(12)
音声生成部は、所定の表示装置に出力するための第1音声と、端末装置に出力するための第2音声とを生成してもよい。このとき、第1音声出力部は、所定の表示装置へ第1音声を出力する。情報処理装置はさらに、第2音声を端末装置へ出力する第2音声出力部とを備える。
端末装置はさらに、音声受信部と、スピーカとを備える。音声受信部は、情報処理装置から第2音声を受信する。スピーカは、受信された第2音声を出力する。
情報処理装置は、音声遅延時間に基づいて、第2音声が端末装置へ出力されるタイミングを遅らせる音声出力制御部をさらに備える。
【0036】
上記(12)の構成によれば、情報処理装置は、第2音声が可搬型表示装置へ送信されるタイミングを音声遅延時間に基づいて遅らせるので、各音声が出力されるタイミングを、所定の表示装置と可搬型表示装置とで合わせることができる。したがって、上記(12)の構成によれば、所定の表示装置と可搬型表示装置との間で音声の出力タイミングの同期をとることができ、所定の表示装置における音声出力遅延により生じる問題を解消することができる。
【0037】
(13)
情報処理装置はさらに、画像生成部と、第1画像出力部と、第2画像出力部とを備えていてもよい。画像生成部は、所定の表示装置に表示するための第1画像と、端末装置に表示するための第2画像とを逐次生成する。第1画像出力部は、所定の表示装置へ第1画像を逐次出力する。第2画像出力部は、端末装置へ第2画像を逐次出力する。
端末装置はさらに、画像受信部と、表示部とを備える。画像受信部は、情報処理装置から第2画像を逐次受信する。表示部は、受信された第2画像を逐次表示する。
情報処理装置は、画像遅延時間に基づいて、第2画像が端末装置へ出力されるタイミングを遅らせる画像出力制御部をさらに備える。
【0038】
上記(13)の構成によれば、音声遅延時間に基づいて、第2画像が端末装置へ出力されるタイミングが調整される。これによれば、所定の表示装置と可搬型表示装置との間で音声の出力タイミングの同期をとることができるとともに、画像の表示タイミングの同期をとることができる。しかも、上記(13)の構成によれば、画像については遅延時間を測定する必要がないので、簡易な処理で画像および音声の両方について同期をとることができる。
【0039】
本発明の別の一例は、上記(1)〜(13)のゲームシステムまたは遅延測定システムの各部(撮像部を除く)を備える情報処理装置(ゲーム装置)であってもよい。また、本発明の別の一例は、情報処理装置のコンピュータを上記各部と同等の手段として機能させるゲームプログラムの形態であってもよい。さらに、本発明の別の一例は、上記(1)〜(13)のゲームシステムまたは遅延測定システムにおいて行われる画像表示方法、音声出力方法、または遅延測定方法の形態であってもよい。
【発明の効果】
【0040】
本発明によれば、所定の表示装置において生じる表示遅延および/または音声出力遅延を算出することができる。さらに、算出された遅延を用いることによって、所定の表示装置と可搬型の表示装置との間で同期をとったり、所定の表示装置における画像の表示と音声の出力との同期をとったりすることができる。
【図面の簡単な説明】
【0041】
【図1】ゲームシステム1の外観図
【図2】ゲーム装置3の内部構成を示すブロック図
【図3】コントローラ5の外観構成を示す斜視図
【図4】コントローラ5の外観構成を示す斜視図
【図5】コントローラ5の内部構造を示す図
【図6】コントローラ5の内部構造を示す図
【図7】コントローラ5の構成を示すブロック図
【図8】端末装置7の外観構成を示す図
【図9】ユーザが端末装置7を把持した様子を示す図
【図10】端末装置7の内部構成を示すブロック図
【図11】ゲームシステム1において各ゲーム画像が出力されてから表示されるまでの時間を示す図
【図12】ゲームシステム1において画像遅延時間の測定するための処理の流れを示すタイミングチャート
【図13】ゲームシステム1において端末用ゲーム画像が送信される際の処理の流れを示す図
【図14】ゲームシステム1における処理において用いられる各種データを示す図
【図15】ゲーム装置3において実行される画像遅延測定処理の流れを示すフローチャート
【図16】ゲーム装置3において実行される音声遅延測定処理の流れを示すフローチャート
【図17】ゲーム装置3において実行されるゲーム処理の流れを示すフローチャート
【図18】本実施形態の変形例においてテレビ用ゲーム画像およびテレビ用ゲーム音声が出力される際の処理の流れを示す図
【図19】図18に示す変形例におけるゲーム処理の流れを示すフローチャート
【発明を実施するための形態】
【0042】
[1.ゲームシステムの全体構成]
以下、図面を参照して、本発明の一実施形態に係るゲームシステム1について説明する。図1は、ゲームシステム1の外観図である。図1において、ゲームシステム1は、テレビジョン受像器等に代表される据置型のディスプレイ装置(以下、「テレビ」と記載する)2、据置型のゲーム装置3、光ディスク4、コントローラ5、マーカ装置6、および、端末装置7を含む。ゲームシステム1は、コントローラ5を用いたゲーム操作に基づいてゲーム装置3においてゲーム処理を実行し、ゲーム処理によって得られるゲーム画像をテレビ2および/または端末装置7に表示するものである。
【0043】
ゲーム装置3には、当該ゲーム装置3に対して交換可能に用いられる情報記憶媒体の一例である光ディスク4が脱着可能に挿入される。光ディスク4には、ゲーム装置3において実行されるための情報処理プログラム(典型的にはゲームプログラム)が記憶されている。ゲーム装置3の前面には光ディスク4の挿入口が設けられている。ゲーム装置3は、挿入口に挿入された光ディスク4に記憶されている情報処理プログラムを読み出して実行することによってゲーム処理を実行する。
【0044】
ゲーム装置3には、テレビ2が接続コードを介して接続される。テレビ2は、ゲーム装置3において実行されるゲーム処理によって得られるゲーム画像を表示する。テレビ2はスピーカ2a(図2)を有しており、スピーカ2aは、上記ゲーム処理の結果得られるゲーム音声を出力する。なお、他の実施形態においては、ゲーム装置3と据置型の表示装置とは一体となっていてもよい。また、ゲーム装置3とテレビ2との通信は無線通信であってもよい。
【0045】
テレビ2の画面の周辺(図1では画面の上側)には、マーカ装置6が設置される。詳細は後述するが、ユーザ(プレイヤ)はコントローラ5を動かすゲーム操作を行うことができ、マーカ装置6は、コントローラ5の動きや位置や姿勢等をゲーム装置3が算出するために用いられる。マーカ装置6は、その両端に2つのマーカ6Rおよび6Lを備えている。マーカ6R(マーカ6Lも同様)は、具体的には1以上の赤外LED(Light Emitting Diode)であり、テレビ2の前方に向かって赤外光を出力する。マーカ装置6はゲーム装置3に接続されており、ゲーム装置3はマーカ装置6が備える各赤外LEDの点灯を制御することが可能である。なお、マーカ装置6は可搬型であり、ユーザはマーカ装置6を自由な位置に設置することができる。図1ではマーカ装置6がテレビ2の上に設置された態様を表しているが、マーカ装置6を設置する位置および向きは任意である。
【0046】
コントローラ5は、自機に対して行われた操作の内容を表す操作データをゲーム装置3に与えるものである。コントローラ5とゲーム装置3とは無線通信によって通信可能である。本実施形態では、コントローラ5とゲーム装置3との間の無線通信には例えばBluetooth(ブルートゥース)(登録商標)の技術が用いられる。なお、他の実施形態においてはコントローラ5とゲーム装置3とは有線で接続されてもよい。また、本実施形態では、ゲームシステム1に含まれるコントローラ5は1つとするが、ゲーム装置3は複数のコントローラと通信可能であり、所定台数のコントローラを同時に使用することによって複数人でゲームをプレイすることが可能である。コントローラ5の詳細な構成については後述する。
【0047】
端末装置7は、ユーザが把持可能な程度の大きさであり、ユーザは端末装置7を手に持って動かしたり、あるいは、端末装置7を自由な位置に配置したりして使用することが可能である。詳細な構成は後述するが、端末装置7は、表示手段であるLCD(Liquid Crystal Display:液晶表示装置)51、および、入力手段(後述するタッチパネル52やジャイロセンサ64等)を備える。端末装置7とゲーム装置3とは無線(有線であってもよい)によって通信可能である。端末装置7は、ゲーム装置3で生成された画像(例えばゲーム画像)のデータをゲーム装置3から受信し、画像をLCD51に表示する。なお、本実施形態では表示装置としてLCDを用いているが、端末装置7は、例えばEL(Electro Luminescence:電界発光)を利用した表示装置等、他の任意の表示装置を有していてもよい。また、端末装置7は、自機に対して行われた操作の内容を表す操作データをゲーム装置3に送信する。
【0048】
[2.ゲーム装置3の内部構成]
次に、図2を参照して、ゲーム装置3の内部構成について説明する。図2は、ゲーム装置3の内部構成を示すブロック図である。ゲーム装置3は、CPU(Central Processing Unit)10、システムLSI11、外部メインメモリ12、ROM/RTC13、ディスクドライブ14、およびAV−IC15等を有する。
【0049】
CPU10は、光ディスク4に記憶されたゲームプログラムを実行することによってゲーム処理を実行するものであり、ゲームプロセッサとして機能する。CPU10は、システムLSI11に接続される。システムLSI11には、CPU10の他、外部メインメモリ12、ROM/RTC13、ディスクドライブ14およびAV−IC15が接続される。システムLSI11は、それに接続される各構成要素間におけるデータ転送の制御、表示すべき画像の生成、外部装置からのデータの取得等の処理を行う。なお、システムLSI11の内部構成については後述する。揮発性の外部メインメモリ12は、光ディスク4から読み出されたゲームプログラムや、フラッシュメモリ17から読み出されたゲームプログラム等のプログラムを記憶したり、各種データを記憶したりするものであり、CPU10のワーク領域やバッファ領域として用いられる。ROM/RTC13は、ゲーム装置3の起動用のプログラムが組み込まれるROM(いわゆるブートROM)と、時間をカウントするクロック回路(RTC:Real Time Clock)とを有する。ディスクドライブ14は、光ディスク4からプログラムデータやテクスチャデータ等を読み出し、後述する内部メインメモリ11eまたは外部メインメモリ12に読み出したデータを書き込む。
【0050】
システムLSI11には、入出力プロセッサ(I/Oプロセッサ)11a、GPU(Graphics Processor Unit)11b、DSP(Digital Signal Processor)11c、VRAM(Video RAM)11d、および内部メインメモリ11eが設けられる。図示は省略するが、これらの構成要素11a〜11eは内部バスによって互いに接続される。
【0051】
GPU11bは、描画手段の一部を形成し、CPU10からのグラフィクスコマンド(作画命令)に従って画像を生成する。VRAM11dは、GPU11bがグラフィクスコマンドを実行するために必要なデータ(ポリゴンデータやテクスチャデータ等のデータ)を記憶する。画像が生成される際には、GPU11bは、VRAM11dに記憶されたデータを用いて画像データを作成する。なお、本実施形態においては、ゲーム装置3は、テレビ2に表示するゲーム画像と、端末装置7に表示するゲーム画像との両方を生成する。以下では、テレビ2に表示されるゲーム画像を「テレビ用ゲーム画像」と呼び、端末装置7に表示されるゲーム画像を「端末用ゲーム画像」と呼ぶことがある。
【0052】
DSP11cは、オーディオプロセッサとして機能し、内部メインメモリ11eや外部メインメモリ12に記憶されるサウンドデータや音波形(音色)データを用いて、音声データを生成する。なお、本実施形態においては、ゲーム音声についてもゲーム画像と同様、テレビ2のスピーカから出力するゲーム音声と、端末装置7のスピーカから出力するゲーム音声との両方が生成される。以下では、テレビ2から出力されるゲーム音声を「テレビ用ゲーム音声」と呼び、端末装置7から出力されるゲーム音声を「端末用ゲーム音声」と呼ぶことがある。
【0053】
上記のようにゲーム装置3において生成される画像および音声のうちで、テレビ2において出力される画像および音声のデータは、AV−IC15によって読み出される。AV−IC15は、読み出した画像データをAVコネクタ16を介してテレビ2に出力するとともに、読み出した音声データを、テレビ2に内蔵されるスピーカ2aに出力する。これによって、テレビ2に画像が表示されるとともにスピーカ2aから音が出力される。
【0054】
また、ゲーム装置3において生成される画像および音声のうちで、端末装置7において出力される画像および音声のデータは、入出力プロセッサ11a等によって端末装置7へ送信される。入出力プロセッサ11a等による端末装置7へのデータの送信については後述する。
【0055】
入出力プロセッサ11aは、それに接続される構成要素との間でデータの送受信を実行したり、外部装置からのデータのダウンロードを実行したりする。入出力プロセッサ11aは、フラッシュメモリ17、ネットワーク通信モジュール18、コントローラ通信モジュール19、拡張コネクタ20、メモリカード用コネクタ21、コーデックLSI27に接続される。また、ネットワーク通信モジュール18にはアンテナ22が接続される。コントローラ通信モジュール19にはアンテナ23が接続される。コーデックLSI27は端末通信モジュール28に接続され、端末通信モジュール28にはアンテナ29が接続される。
【0056】
ゲーム装置3は、インターネット等のネットワークに接続して外部情報処理装置(例えば他のゲーム装置や、各種サーバ等)と通信を行うことが可能である。すなわち、入出力プロセッサ11aは、ネットワーク通信モジュール18およびアンテナ22を介してインターネット等のネットワークに接続し、ネットワークに接続される外部情報処理装置と通信することができる。入出力プロセッサ11aは、定期的にフラッシュメモリ17にアクセスし、ネットワークへ送信する必要があるデータの有無を検出し、当該データが有る場合には、ネットワーク通信モジュール18およびアンテナ22を介してネットワークに送信する。また、入出力プロセッサ11aは、外部情報処理装置から送信されてくるデータやダウンロードサーバからダウンロードしたデータを、ネットワーク、アンテナ22およびネットワーク通信モジュール18を介して受信し、受信したデータをフラッシュメモリ17に記憶する。CPU10はゲームプログラムを実行することにより、フラッシュメモリ17に記憶されたデータを読み出してゲームプログラムで利用する。フラッシュメモリ17には、ゲーム装置3と外部情報処理装置との間で送受信されるデータの他、ゲーム装置3を利用してプレイしたゲームのセーブデータ(ゲームの結果データまたは途中データ)が記憶されてもよい。また、フラッシュメモリ17にはゲームプログラムが記憶されてもよい。
【0057】
また、ゲーム装置3は、コントローラ5からの操作データを受信することが可能である。すなわち、入出力プロセッサ11aは、コントローラ5から送信される操作データをアンテナ23およびコントローラ通信モジュール19を介して受信し、内部メインメモリ11eまたは外部メインメモリ12のバッファ領域に記憶(一時記憶)する。
【0058】
また、ゲーム装置3は、端末装置7との間で画像や音声等のデータを送受信することが可能である。入出力プロセッサ11aは、端末装置7へゲーム画像(端末用ゲーム画像)を送信する場合、GPU11bが生成したゲーム画像のデータをコーデックLSI27へ出力する。コーデックLSI27は、入出力プロセッサ11aからの画像データに対して所定の圧縮処理を行う。端末通信モジュール28は、端末装置7との間で無線通信を行う。したがって、コーデックLSI27によって圧縮された画像データは、端末通信モジュール28によってアンテナ29を介して端末装置7へ送信される。なお、本実施形態では、ゲーム装置3から端末装置7へ送信される画像データはゲームに用いるものであり、ゲームにおいては表示される画像に遅延が生じるとゲームの操作性に悪影響が出る。そのため、ゲーム装置3から端末装置7への画像データの送信に関しては、できるだけ遅延が生じないようにすることが好ましい。したがって、本実施形態では、コーデックLSI27は、例えばH.264規格といった高効率の圧縮技術を用いて画像データを圧縮する。なお、それ以外の圧縮技術を用いてもよいし、通信速度が十分である場合には無圧縮で画像データを送信する構成であってもよい。また、端末通信モジュール28は、例えばWi−Fiの認証を受けた通信モジュールであり、例えばIEEE802.11n規格で採用されるMIMO(Multiple Input Multiple Output)の技術を用いて端末装置7との間の無線通信を高速に行うようにしてもよいし、他の通信方式を用いてもよい。
【0059】
また、ゲーム装置3は、画像データの他、音声データを端末装置7へ送信する。すなわち、入出力プロセッサ11aは、DSP11cが生成した音声データを、コーデックLSI27を介して端末通信モジュール28へ出力する。コーデックLSI27は、音声データに対しても画像データと同様に圧縮処理を行う。音声データに対する圧縮の方式は、どのような方式であってもよいが、圧縮率が高く、音声の劣化が少ない方式が好ましい。また、他の実施形態においては、音声データは圧縮されずに送信されてもよい。端末通信モジュール28は、圧縮された画像データおよび音声データを、アンテナ29を介して端末装置7へ送信する。
【0060】
さらに、ゲーム装置3は、上記画像データおよび音声データの他に、必要に応じて各種の制御データを端末装置7へ送信する。制御データは、端末装置7が備える構成要素に対する制御指示を表すデータであり、例えばマーカ部(図10に示すマーカ部55)の点灯を制御する指示や、カメラ(図10に示すカメラ56)の撮像を制御する指示等を表す。入出力プロセッサ11aは、CPU10の指示に応じて制御データを端末装置7へ送信する。なお、この制御データに関して、本実施形態ではコーデックLSI27はデータの圧縮処理を行わないが、他の実施形態においては圧縮処理を行うようにしてもよい。なお、ゲーム装置3から端末装置7へ送信される上述のデータは、必要に応じて暗号化がされていてもよいし、されていなくともよい。
【0061】
また、ゲーム装置3は、端末装置7から各種データを受信可能である。詳細は後述するが、本実施形態では、端末装置7は、操作データ、画像データ、および音声データを送信する。端末装置7から送信される各データはアンテナ29を介して端末通信モジュール28によって受信される。ここで、端末装置7からの画像データおよび音声データは、ゲーム装置3から端末装置7への画像データおよび音声データと同様の圧縮処理が施されている。したがって、これら画像データおよび音声データについては、端末通信モジュール28からコーデックLSI27に送られ、コーデックLSI27によって伸張処理が施されて入出力プロセッサ11aに出力される。一方、端末装置7からの操作データに関しては、画像や音声に比べてデータ量が少ないので、圧縮処理が施されていなくともよい。また、必要に応じて暗号化がされていてもよいし、されていなくともよい。したがって、操作データは、端末通信モジュール28で受信された後、コーデックLSI27を介して入出力プロセッサ11aに出力される。入出力プロセッサ11aは、端末装置7から受信したデータを、内部メインメモリ11eまたは外部メインメモリ12のバッファ領域に記憶(一時記憶)する。
【0062】
また、ゲーム装置3は、他の機器や外部記憶媒体に接続することが可能である。すなわち、入出力プロセッサ11aには、拡張コネクタ20およびメモリカード用コネクタ21が接続される。拡張コネクタ20は、USBやSCSIのようなインターフェースのためのコネクタである。拡張コネクタ20に対しては、外部記憶媒体のようなメディアを接続したり、他のコントローラ等の周辺機器を接続したり、有線の通信用コネクタを接続することによってネットワーク通信モジュール18に替えてネットワークとの通信を行ったりすることができる。メモリカード用コネクタ21は、メモリカードのような外部記憶媒体を接続するためのコネクタである。例えば、入出力プロセッサ11aは、拡張コネクタ20やメモリカード用コネクタ21を介して外部記憶媒体にアクセスし、外部記憶媒体にデータを保存したり、外部記憶媒体からデータを読み出したりすることができる。
【0063】
ゲーム装置3には、電源ボタン24、リセットボタン25、およびイジェクトボタン26が設けられる。電源ボタン24およびリセットボタン25は、システムLSI11に接続される。電源ボタン24がオンされると、図示しないACアダプタによって外部の電源からゲーム装置3の各構成要素に対して電力が供給される。リセットボタン25が押されると、システムLSI11は、ゲーム装置3の起動プログラムを再起動する。イジェクトボタン26は、ディスクドライブ14に接続される。イジェクトボタン26が押されると、ディスクドライブ14から光ディスク4が排出される。
【0064】
なお、他の実施形態においては、ゲーム装置3が備える各構成要素のうちでいくつかの構成要素は、ゲーム装置3とは別体の拡張機器として構成されてもよい。このとき、拡張機器は、例えば上記拡張コネクタ20を介してゲーム装置3と接続されるようにしてもよい。具体的には、拡張機器は、例えば上記コーデックLSI27、端末通信モジュール28およびアンテナ29の各構成要素を備えており、拡張コネクタ20に対して着脱可能であってもよい。これによれば、上記各構成要素を備えていないゲーム装置に対して上記拡張機器を接続することによって、当該ゲーム装置を端末装置7と通信可能な構成とすることができる。
【0065】
[3.コントローラ5の構成]
次に、図3〜図7を参照して、コントローラ5について説明する。図3は、コントローラ5の外観構成を示す斜視図である。図4は、コントローラ5の外観構成を示す斜視図である。図3は、コントローラ5の上側後方から見た斜視図であり、図4は、コントローラ5を下側前方から見た斜視図である。
【0066】
図3および図4において、コントローラ5は、例えばプラスチック成型によって形成されたハウジング31を有している。ハウジング31は、その前後方向(図3に示すZ軸方向)を長手方向とした略直方体形状を有しており、全体として大人や子供の片手で把持可能な大きさである。ユーザは、コントローラ5に設けられたボタンを押下すること、および、コントローラ5自体を動かしてその位置や姿勢(傾き)を変えることによってゲーム操作を行うことができる。
【0067】
ハウジング31には、複数の操作ボタンが設けられる。図3に示すように、ハウジング31の上面には、十字ボタン32a、1番ボタン32b、2番ボタン32c、Aボタン32d、マイナスボタン32e、ホームボタン32f、プラスボタン32g、および電源ボタン32hが設けられる。本明細書では、これらのボタン32a〜32hが設けられるハウジング31の上面を「ボタン面」と呼ぶことがある。一方、図4に示すように、ハウジング31の下面には凹部が形成されており、当該凹部の後面側傾斜面にはBボタン32iが設けられる。これらの各操作ボタン32a〜32iには、ゲーム装置3が実行する情報処理プログラムに応じた機能が適宜割り当てられる。また、電源ボタン32hは遠隔からゲーム装置3本体の電源をオン/オフするためのものである。ホームボタン32fおよび電源ボタン32hは、その上面がハウジング31の上面に埋没している。これによって、ユーザがホームボタン32fまたは電源ボタン32hを誤って押下することを防止することができる。
【0068】
ハウジング31の後面にはコネクタ33が設けられている。コネクタ33は、コントローラ5に他の機器(例えば、他のセンサユニットやコントローラ)を接続するために利用される。また、ハウジング31の後面におけるコネクタ33の両側には、上記他の機器が容易に離脱することを防止するために係止穴33aが設けられている。
【0069】
ハウジング31上面の後方には複数(図3では4つ)のLED34a〜34dが設けられる。ここで、コントローラ5には、他のコントローラと区別するためにコントローラ種別(番号)が付与される。各LED34a〜34dは、コントローラ5に現在設定されている上記コントローラ種別をユーザに通知したり、コントローラ5の電池残量をユーザに通知したりする等の目的で用いられる。具体的には、コントローラ5を用いてゲーム操作が行われる際、上記コントローラ種別に応じて複数のLED34a〜34dのいずれか1つが点灯する。
【0070】
また、コントローラ5は撮像情報演算部35(図6)を有しており、図4に示すように、ハウジング31前面には撮像情報演算部35の光入射面35aが設けられる。光入射面35aは、マーカ6Rおよび6Lからの赤外光を少なくとも透過する材質で構成される。
【0071】
ハウジング31上面における1番ボタン32bとホームボタン32fとの間には、コントローラ5に内蔵されるスピーカ47(図5)からの音を外部に放出するための音抜き孔31aが形成されている。
【0072】
次に、図5および図6を参照して、コントローラ5の内部構造について説明する。図5および図6は、コントローラ5の内部構造を示す図である。なお、図5は、コントローラ5の上筐体(ハウジング31の一部)を外した状態を示す斜視図である。図6は、コントローラ5の下筐体(ハウジング31の一部)を外した状態を示す斜視図である。図6に示す斜視図は、図5に示す基板30を裏面から見た斜視図となっている。
【0073】
図5において、ハウジング31の内部には基板30が固設されており、当該基板30の上主面上に各操作ボタン32a〜32h、各LED34a〜34d、加速度センサ37、アンテナ45、およびスピーカ47等が設けられる。これらは、基板30等に形成された配線(図示せず)によってマイクロコンピュータ(Micro Computer:マイコン)42(図6参照)に接続される。本実施形態では、加速度センサ37は、X軸方向に関してコントローラ5の中心からずれた位置に配置されている。これによって、コントローラ5をZ軸回りに回転させたときのコントローラ5の動きが算出しやすくなる。また、加速度センサ37は、長手方向(Z軸方向)に関してコントローラ5の中心よりも前方に配置されている。また、無線モジュール44(図6)およびアンテナ45によって、コントローラ5がワイヤレスコントローラとして機能する。
【0074】
一方、図6において、基板30の下主面上の前端縁に撮像情報演算部35が設けられる。撮像情報演算部35は、コントローラ5の前方から順に赤外線フィルタ38、レンズ39、撮像素子40、および画像処理回路41を備えている。これらの部材38〜41はそれぞれ基板30の下主面に取り付けられる。
【0075】
さらに、基板30の下主面上には、上記マイコン42およびバイブレータ46が設けられている。バイブレータ46は、例えば振動モータやソレノイドであり、基板30等に形成された配線によってマイコン42と接続される。マイコン42の指示によりバイブレータ46が作動することによってコントローラ5に振動が発生する。これによって、コントローラ5を把持しているユーザの手にその振動が伝達される、いわゆる振動対応ゲームを実現することができる。本実施形態では、バイブレータ46は、ハウジング31のやや前方寄りに配置される。つまり、バイブレータ46がコントローラ5の中心よりも端側に配置することによって、バイブレータ46の振動によりコントローラ5全体を大きく振動させることができる。また、コネクタ33は、基板30の下主面上の後端縁に取り付けられる。なお、図5および図6に示す他、コントローラ5は、マイコン42の基本クロックを生成する水晶振動子、スピーカ47に音声信号を出力するアンプ等を備えている。
【0076】
なお、図3〜図6に示したコントローラ5の形状や、各操作ボタンの形状、加速度センサやバイブレータの数および設置位置等は単なる一例に過ぎず、他の形状、数、および設置位置であってもよい。また、本実施形態では、撮像手段による撮像方向はZ軸正方向であるが、撮像方向はいずれの方向であってもよい。すなわち、コントローラ5における撮像情報演算部35の位置(撮像情報演算部35の光入射面35a)は、ハウジング31の前面でなくてもよく、ハウジング31の外部から光を取り入れることができれば他の面に設けられてもかまわない。
【0077】
図7は、コントローラ5の構成を示すブロック図である。コントローラ5は、操作部32(各操作ボタン32a〜32i)、撮像情報演算部35、通信部36、加速度センサ37、およびジャイロセンサ48を備えている。コントローラ5は、自機に対して行われた操作内容を表すデータを操作データとしてゲーム装置3へ送信するものである。なお、以下では、コントローラ5が送信する操作データを「コントローラ操作データ」と呼び、端末装置7が送信する操作データを「端末操作データ」と呼ぶことがある。
【0078】
操作部32は、上述した各操作ボタン32a〜32iを含み、各操作ボタン32a〜32iに対する入力状態(各操作ボタン32a〜32iが押下されたか否か)を表す操作ボタンデータを通信部36のマイコン42へ出力する。
【0079】
撮像情報演算部35は、撮像手段が撮像した画像データを解析してその中で輝度が高い領域を判別してその領域の重心位置やサイズなどを算出するためのシステムである。撮像情報演算部35は、例えば最大200フレーム/秒程度のサンプリング周期を有するので、比較的高速なコントローラ5の動きでも追跡して解析することができる。
【0080】
撮像情報演算部35は、赤外線フィルタ38、レンズ39、撮像素子40、および画像処理回路41を含んでいる。赤外線フィルタ38は、コントローラ5の前方から入射する光から赤外線のみを通過させる。レンズ39は、赤外線フィルタ38を透過した赤外線を集光して撮像素子40へ入射させる。撮像素子40は、例えばCMOSセンサやあるいはCCDセンサのような固体撮像素子であり、レンズ39が集光した赤外線を受光して画像信号を出力する。ここで、撮像対象となる端末装置7のマーカ部55およびマーカ装置6は、赤外光を出力するマーカで構成される。したがって、赤外線フィルタ38を設けることによって、撮像素子40は、赤外線フィルタ38を通過した赤外線だけを受光して画像データを生成するので、撮像対象(マーカ部55および/またはマーカ装置6)の画像をより正確に撮像することができる。以下では、撮像素子40によって撮像された画像を撮像画像と呼ぶ。撮像素子40によって生成された画像データは、画像処理回路41で処理される。画像処理回路41は、撮像画像内における撮像対象の位置を算出する。画像処理回路41は、算出された位置を示す座標を通信部36のマイコン42へ出力する。この座標のデータは、マイコン42によって操作データとしてゲーム装置3に送信される。以下では、上記座標を「マーカ座標」と呼ぶ。マーカ座標はコントローラ5自体の向き(傾斜角度)や位置に対応して変化するので、ゲーム装置3はこのマーカ座標を用いてコントローラ5の向きや位置を算出することができる。
【0081】
なお、他の実施形態においては、コントローラ5は画像処理回路41を備えていない構成であってもよく、撮像画像自体がコントローラ5からゲーム装置3へ送信されてもよい。このとき、ゲーム装置3は、画像処理回路41と同様の機能を有する回路あるいはプログラムを有しており、上記マーカ座標を算出するようにしてもよい。
【0082】
加速度センサ37は、コントローラ5の加速度(重力加速度を含む)を検出する、すなわち、コントローラ5に加わる力(重力を含む)を検出する。加速度センサ37は、当該加速度センサ37の検出部に加わっている加速度のうち、センシング軸方向に沿った直線方向の加速度(直線加速度)の値を検出する。例えば、2軸以上の多軸加速度センサの場合には、加速度センサの検出部に加わっている加速度として、各軸に沿った成分の加速度をそれぞれ検出する。なお、加速度センサ37は、例えば静電容量式のMEMS(Micro Electro Mechanical System)型加速度センサであるとするが、他の方式の加速度センサを用いるようにしてもよい。
【0083】
本実施形態では、加速度センサ37は、コントローラ5を基準とした上下方向(図3に示すY軸方向)、左右方向(図3に示すX軸方向)および前後方向(図3に示すZ軸方向)の3軸方向に関してそれぞれ直線加速度を検出する。加速度センサ37は、各軸に沿った直線方向に関する加速度を検出するものであるため、加速度センサ37からの出力は3軸それぞれの直線加速度の値を表すものとなる。すなわち、検出された加速度は、コントローラ5を基準に設定されるXYZ座標系(コントローラ座標系)における3次元のベクトルとして表される。
【0084】
加速度センサ37が検出した加速度を表すデータ(加速度データ)は、通信部36へ出力される。なお、加速度センサ37が検出した加速度は、コントローラ5自体の向き(傾斜角度)や動きに対応して変化するので、ゲーム装置3は取得された加速度データを用いてコントローラ5の向きや動きを算出することができる。本実施形態では、ゲーム装置3は、取得された加速度データに基づいてコントローラ5の姿勢や傾斜角度等を算出する。
【0085】
なお、加速度センサ37(後述する加速度センサ63についても同様)から出力される加速度の信号に基づいて、ゲーム装置3のプロセッサ(例えばCPU10)またはコントローラ5のプロセッサ(例えばマイコン42)等のコンピュータが処理を行うことによって、コントローラ5に関するさらなる情報を推測または算出(判定)することができることは、当業者であれば本明細書の説明から容易に理解できるであろう。例えば、加速度センサ37を搭載するコントローラ5が静止状態であることを前提としてコンピュータ側の処理が実行される場合(すなわち、加速度センサによって検出される加速度が重力加速度のみであるとして処理が実行される場合)、コントローラ5が現実に静止状態であれば、検出された加速度に基づいてコントローラ5の姿勢が重力方向に対して傾いているか否かまたはどの程度傾いているかを知ることができる。具体的には、加速度センサ37の検出軸が鉛直下方向を向いている状態を基準としたとき、1G(重力加速度)がかかっているか否かによって、コントローラ5が基準に対して傾いているか否かを知ることができるし、その大きさによって基準に対してどの程度傾いているかも知ることができる。また、多軸の加速度センサ37の場合には、さらに各軸の加速度の信号に対して処理を施すことによって、重力方向に対してコントローラ5がどの程度傾いているかをより詳細に知ることができる。この場合において、プロセッサは、加速度センサ37からの出力に基づいてコントローラ5の傾斜角度を算出してもよいし、当該傾斜角度を算出せずに、コントローラ5の傾斜方向を算出するようにしてもよい。このように、加速度センサ37をプロセッサと組み合わせて用いることによって、コントローラ5の傾斜角度または姿勢を判定することができる。
【0086】
一方、コントローラ5が動的な状態(コントローラ5が動かされている状態)であることを前提とする場合には、加速度センサ37は重力加速度に加えてコントローラ5の動きに応じた加速度を検出するので、検出された加速度から重力加速度の成分を所定の処理により除去することによってコントローラ5の動き方向を知ることができる。また、コントローラ5が動的な状態であることを前提とする場合であっても、検出された加速度から、加速度センサの動きに応じた加速度の成分を所定の処理により除去することによって、重力方向に対するコントローラ5の傾きを知ることが可能である。なお、他の実施例では、加速度センサ37は、内蔵の加速度検出手段で検出された加速度信号をマイコン42に出力する前に当該加速度信号に対して所定の処理を行うための、組込み式の処理装置または他の種類の専用の処理装置を備えていてもよい。組込み式または専用の処理装置は、例えば、加速度センサ37が静的な加速度(例えば、重力加速度)を検出するために用いられる場合、加速度信号を傾斜角(あるいは、他の好ましいパラメータ)に変換するものであってもよい。
【0087】
ジャイロセンサ48は、3軸(本実施形態では、XYZ軸)回りの角速度を検出する。本明細書では、コントローラ5の撮像方向(Z軸正方向)を基準として、X軸回りの回転方向をピッチ方向、Y軸回りの回転方向をヨー方向、Z軸回りの回転方向をロール方向と呼ぶ。ジャイロセンサ48は、3軸回りの角速度を検出することができればよく、用いるジャイロセンサの数および組み合わせはどのようなものであってもよい。例えば、ジャイロセンサ48は、3軸ジャイロセンサであってもよいし、2軸ジャイロセンサと1軸ジャイロセンサとを組み合わせて3軸周りの角速度を検出するものであってもよい。ジャイロセンサ48で検出された角速度を表すデータは、通信部36へ出力される。また、ジャイロセンサ48は1軸または2軸回りの角速度を検出するものであってもよい。
【0088】
通信部36は、マイコン42、メモリ43、無線モジュール44、およびアンテナ45を含んでいる。マイコン42は、処理を行う際にメモリ43を記憶領域として用いながら、マイコン42が取得したデータをゲーム装置3へ無線送信する無線モジュール44を制御する。
【0089】
操作部32、撮像情報演算部35、加速度センサ37、およびジャイロセンサ48からマイコン42へ出力されたデータは、一時的にメモリ43に格納される。これらのデータは、操作データ(コントローラ操作データ)としてゲーム装置3へ送信される。すなわち、マイコン42は、ゲーム装置3のコントローラ通信モジュール19への送信タイミングが到来すると、メモリ43に格納されている操作データを無線モジュール44へ出力する。無線モジュール44は、例えばBluetooth(ブルートゥース)(登録商標)の技術を用いて、所定周波数の搬送波を操作データで変調し、その微弱電波信号をアンテナ45から放射する。つまり、操作データは、無線モジュール44で微弱電波信号に変調されてコントローラ5から送信される。微弱電波信号はゲーム装置3側のコントローラ通信モジュール19で受信される。受信された微弱電波信号について復調や復号を行うことによって、ゲーム装置3は操作データを取得することができる。そして、ゲーム装置3のCPU10は、コントローラ5から取得した操作データを用いてゲーム処理を行う。なお、通信部36からコントローラ通信モジュール19への無線送信は所定の周期毎に逐次行われるが、ゲームの処理は1/60秒を単位として(1フレーム時間として)行われることが一般的であるので、この時間以下の周期で送信を行うことが好ましい。コントローラ5の通信部36は、例えば1/200秒に1回の割合で操作データをゲーム装置3のコントローラ通信モジュール19へ出力する。
【0090】
以上のように、コントローラ5は、自機に対する操作を表す操作データとして、マーカ座標データ、加速度データ、角速度データ、および操作ボタンデータを送信可能である。また、ゲーム装置3は、上記操作データをゲーム入力として用いてゲーム処理を実行する。したがって、上記コントローラ5を用いることによって、ユーザは、各操作ボタンを押下する従来の一般的なゲーム操作に加えて、コントローラ5自体を動かすゲーム操作を行うことができる。例えば、コントローラ5を任意の姿勢に傾ける操作、コントローラ5によって画面上の任意の位置を指示する操作、および、コントローラ5自体を動かす操作等を行うことが可能となる。
【0091】
また、本実施形態において、コントローラ5は、ゲーム画像を表示する表示手段を有しないが、例えば電池残量を表す画像等を表示するための表示手段を有していてもよい。
【0092】
[4.端末装置7の構成]
次に、図8〜図10を参照して、端末装置7の構成について説明する。図8は、端末装置7の外観構成を示す図である。図8における(a)図は端末装置7の正面図であり、(b)図は上面図であり、(c)図は右側面図であり、(d)図は下面図である。また、図9は、ユーザが端末装置7を把持した様子を示す図である。
【0093】
図8に示されるように、端末装置7は、大略的には横長の長方形の板状形状であるハウジング50を備える。ハウジング50は、ユーザが把持することができる程度の大きさである。したがって、ユーザは、端末装置7を持って動かしたり、端末装置7の配置位置を変更したりすることができる。
【0094】
端末装置7は、ハウジング50の表面にLCD51を有する。LCD51は、ハウジング50の表面の中央付近に設けられる。したがって、ユーザは、図9に示すようにLCD51の両側部分のハウジング50を持つことによって、LCD51の画面を見ながら端末装置を持って動かすことができる。なお、図9ではユーザがLCD51の左右両側の部分のハウジング50を持つことで端末装置7を横持ちで(横に長い向きにして)持つ例を示しているが、端末装置7を縦持ちで(縦に長い向きにして)持つことも可能である。
【0095】
図8の(a)図に示すように、端末装置7は、操作手段として、LCD51の画面上にタッチパネル52を有する。本実施形態では、タッチパネル52は抵抗膜方式のタッチパネルである。ただし、タッチパネルは抵抗膜方式に限らず、例えば静電容量方式等、任意の方式のタッチパネルを用いることができる。また、タッチパネル52はシングルタッチ方式でもよいし、マルチタッチ方式であってもよい。本実施形態では、タッチパネル52として、LCD51の解像度と同解像度(検出精度)のものを利用する。ただし、必ずしもタッチパネル52の解像度とLCD51の解像度が一致している必要はない。タッチパネル52に対する入力は通常タッチペンを用いて行われるが、タッチペンに限らずユーザの指でタッチパネル52に対する入力をすることも可能である。なお、ハウジング50には、タッチパネル52に対する操作を行うために用いられるタッチペンを収納するための収納穴が設けられていてもよい。このように、端末装置7はタッチパネル52を備えるので、ユーザは、端末装置7を動かしながらタッチパネル52を操作することができる。つまりユーザは、LCD51の画面を動かしつつ、その画面に対して直接(タッチパネル52によって)入力を行うことができる。
【0096】
図8に示すように、端末装置7は、操作手段として、2つのアナログスティック53Aおよび53Bと、複数のボタン54A〜54Lとを備えている。各アナログスティック53Aおよび53Bは、方向を指示するデバイスである。各アナログスティック53Aおよび53Bは、ユーザの指で操作されるスティック部がハウジング50の表面に対して任意の方向(上下左右および斜め方向の任意の角度)にスライド(または傾倒)することができるように構成されている。また、左アナログスティック53AはLCD51の画面の左側に、右アナログスティック53BはLCD51の画面の右側にそれぞれ設けられる。したがって、ユーザは、左右いずれの手でもアナログスティックを用いて方向を指示する入力を行うことができる。また、図9に示すように、各アナログスティック53Aおよび53Bは、ユーザが端末装置7の左右部分を把持した状態で操作可能な位置に設けられるので、ユーザは、端末装置7を持って動かす場合においても各アナログスティック53Aおよび53Bを容易に操作することができる。
【0097】
各ボタン54A〜54Lは、所定の入力を行うための操作手段である。以下に示すように、各ボタン54A〜54Lは、ユーザが端末装置7の左右部分を把持した状態で操作可能な位置に設けられる(図9参照)。したがって、ユーザは、端末装置7を持って動かす場合においてもこれらの操作手段を容易に操作することができる。
【0098】
図8の(a)図に示すように、ハウジング50の表面には、各操作ボタン54A〜54Lのうち、十字ボタン(方向入力ボタン)54Aと、ボタン54B〜54Hとが設けられる。つまり、これらのボタン54A〜54Gは、ユーザの親指で操作可能な位置に配置されている(図9参照)。
【0099】
十字ボタン54Aは、LCD51の左側であって、左アナログスティック53Aの下側に設けられる。つまり、十字ボタン54Aはユーザの左手で操作可能な位置に配置されている。十字ボタン54Aは、十字の形状を有しており、上下左右の方向を指示することが可能なボタンである。また、ボタン54B〜54Dは、LCD51の下側に設けられる。これら3つのボタン54B〜54Dは、左右両方の手で操作可能な位置に配置されている。また、4つのボタン54E〜54Hは、LCD51の右側であって、右アナログスティック53Bの下側に設けられる。つまり、4つのボタン54E〜54Hはユーザの右手で操作可能な位置に配置されている。さらに、4つのボタン54E〜54Hは、(4つのボタン54E〜54Hの中心位置に対して)上下左右の位置関係となるように配置されている。したがって、端末装置7は、ユーザに上下左右の方向を指示させるためのボタンとして4つのボタン54E〜54Hを機能させることも可能である。
【0100】
また、図8の(a)図、(b)図、および(c)図に示すように、第1Lボタン54Iおよび第1Rボタン54Jは、ハウジング50の斜め上部分(左上部分および右上部分)に設けられる。具体的には、第1Lボタン54Iは、板状のハウジング50における上側の側面の左端に設けられ、上側および左側の側面から露出している。また、第1Rボタン54Jは、ハウジング50における上側の側面の右端に設けられ、上側および右側の側面から露出している。このように、第1Lボタン54Iは、ユーザの左手人差し指で操作可能な位置に配置され、第1Rボタン54Jは、ユーザの右手人差し指で操作可能な位置に配置される(図9参照)。
【0101】
また、図8の(b)図および(c)図に示すように、第2Lボタン54Kおよび第2Rボタン54Lは、板状のハウジング50の裏面(すなわちLCD51が設けられる表面の反対側の面)に突起して設けられる足部59Aおよび59Bに配置される。具体的には、第2Lボタン54Kは、ハウジング50の裏面の左側(表面側から見たときの左側)のやや上方に設けられ、第2Rボタン54Lは、ハウジング50の裏面の右側(表面側から見たときの右側)のやや上方に設けられる。換言すれば、第2Lボタン54Kは、表面に設けられる左アナログスティック53Aの概ね反対側の位置に設けられ、第2Rボタン54Lは、表面に設けられる右アナログスティック53Bの概ね反対側の位置に設けられる。このように、第2Lボタン54Kは、ユーザの左手中指で操作可能な位置に配置され、第2Rボタン54Lは、ユーザの右手中指で操作可能な位置に配置される(図9参照)。また、第2Lボタン54Kおよび第2Rボタン54Lは、図8の(c)図に示すように、上記足部59Aおよび59Bの斜め上方を向く面に設けられ、斜め上方を向くボタン面を有する。ユーザが端末装置7を把持した場合には中指は上下方向に動くと考えられるので、ボタン面を上方に向けることで、ユーザは第2Lボタン54Kおよび第2Rボタン54Lを押下しやすくなる。また、ハウジング50の裏面に足部が設けられることにより、ユーザはハウジング50を把持しやすくなり、かつ、足部にボタンが設けられることで、ハウジング50を把持したまま操作しやすくなる。
【0102】
なお、図8に示す端末装置7に関しては、第2Lボタン54Kおよび第2Rボタン54Lが裏面に設けられるので、LCD51の画面(ハウジング50の表面)が上を向いた状態で端末装置7を載置させる場合、画面が完全に水平にはならない場合がある。そのため、他の実施形態においては、ハウジング50の裏面に3つ以上の足部が形成されてもよい。これによれば、LCD51の画面が上を向いた状態では足部が床面に接することで床面に載置できるので、画面が水平になるように端末装置7を載置することができる。また、着脱可能な足部を追加することで端末装置7を水平に載置するようにしてもよい。
【0103】
各ボタン54A〜54Lには、ゲームプログラムに応じた機能が適宜割り当てられる。例えば、十字ボタン54Aおよびボタン54E〜54Hは方向指示操作や選択操作等に用いられてもよいし、各ボタン54B〜54Eは決定操作やキャンセル操作等に用いられてもよい。
【0104】
なお、図示しないが、端末装置7は、端末装置7の電源をオン/オフするための電源ボタンを有している。また、端末装置7は、LCD51の画面表示をオン/オフするためのボタンや、ゲーム装置3との接続設定(ペアリング)を行うためのボタンや、スピーカ(図10に示すスピーカ67)の音量を調節するためのボタンを有していてもよい。
【0105】
図8の(a)図に示すように、端末装置7は、マーカ55Aおよびマーカ55Bからなるマーカ部(図10に示すマーカ部55)をハウジング50の表面に備えている。マーカ部55は、LCD51の上側に設けられる。各マーカ55Aおよびマーカ55Bは、マーカ装置6の各マーカ6Rおよび6Lと同様、1以上の赤外LEDで構成される。マーカ部55は、上述のマーカ装置6と同様、コントローラ5の動き等をゲーム装置3が算出するために用いられる。また、ゲーム装置3はマーカ部55が備える各赤外LEDの点灯を制御することが可能である。
【0106】
端末装置7は、撮像手段であるカメラ56を備えている。カメラ56は、所定の解像度を有する撮像素子(例えば、CCDイメージセンサやCMOSイメージセンサ等)と、レンズとを含む。図8に示すように、本実施形態では、カメラ56はハウジング50の表面に設けられる。したがって、カメラ56は、端末装置7を持っているユーザの顔を撮像することができ、例えばLCD51を見ながらゲームを行っている時のユーザを撮像することができる。
【0107】
なお、端末装置7は、音声入力手段であるマイク(図10に示すマイク69)を備えている。ハウジング50の表面には、マイクロフォン用孔60が設けられる。マイク69はこのマイクロフォン用孔60の奥のハウジング50内部に設けられる。マイクは、ユーザの音声等、端末装置7の周囲の音を検出する。
【0108】
端末装置7は、音声出力手段であるスピーカ(図10に示すスピーカ67)を備えている。図8の(d)図に示すように、ハウジング50の下側側面にはスピーカ孔57が設けられる。スピーカ67の出力音はこのスピーカ孔57から出力される。本実施形態では、端末装置7は2つのスピーカを備えており、左スピーカおよび右スピーカのそれぞれの位置にスピーカ孔57が設けられる。
【0109】
また、端末装置7は、他の装置を端末装置7に接続するための拡張コネクタ58を備えている。本実施形態においては、図8の(d)図に示すように、拡張コネクタ58は、ハウジング50の下側側面に設けられる。なお、拡張コネクタ58に接続される他の装置はどのようなものであってもよく、例えば、特定のゲームに用いるコントローラ(銃型のコントローラ等)やキーボード等の入力装置であってもよい。他の装置を接続する必要がなければ、拡張コネクタ58は設けられていなくともよい。
【0110】
なお、図8に示した端末装置7に関して、各操作ボタンやハウジング50の形状や、各構成要素の数および設置位置等は単なる一例に過ぎず、他の形状、数、および設置位置であってもよい。
【0111】
次に、図10を参照して、端末装置7の内部構成について説明する。図10は、端末装置7の内部構成を示すブロック図である。図10に示すように、端末装置7は、図8に示した構成の他、タッチパネルコントローラ61、磁気センサ62、加速度センサ63、ジャイロセンサ64、ユーザインタフェースコントローラ(UIコントローラ)65、コーデックLSI66、スピーカ67、サウンドIC68、マイク69、無線モジュール70、アンテナ71、赤外線通信モジュール72、フラッシュメモリ73、電源IC74、および電池75を備える。これらの電子部品は、電子回路基板上に実装されてハウジング50内に収納される。
【0112】
UIコントローラ65は、各種の入出力部に対するデータの入出力を制御するための回路である。UIコントローラ65は、タッチパネルコントローラ61、アナログスティック53(アナログスティック53Aおよび53B)、操作ボタン54(各操作ボタン54A〜54L)、マーカ部55、磁気センサ62、加速度センサ63、およびジャイロセンサ64に接続される。また、UIコントローラ65は、コーデックLSI66と拡張コネクタ58に接続される。また、UIコントローラ65には電源IC74が接続され、UIコントローラ65を介して各部に電力が供給される。電源IC74には内蔵の電池75が接続され、電力が供給される。また、電源IC74には、コネクタ等を介して外部電源から電力を取得可能な充電器76またはケーブルを接続することが可能であり、端末装置7は、当該充電器76またはケーブルを用いて外部電源からの電力供給と充電を行うことができる。なお、端末装置7は、図示しない充電機能を有するクレイドルに端末装置7を装着することで充電を行うようにしてもよい。
【0113】
タッチパネルコントローラ61は、タッチパネル52に接続され、タッチパネル52の制御を行う回路である。タッチパネルコントローラ61は、タッチパネル52からの信号に基づいて所定の形式のタッチ位置データを生成してUIコントローラ65へ出力する。タッチ位置データは、タッチパネル52の入力面において入力が行われた位置の座標を表す。なお、タッチパネルコントローラ61は、タッチパネル52からの信号の読み込み、および、タッチ位置データの生成を所定時間に1回の割合で行う。また、UIコントローラ65からタッチパネルコントローラ61へは、タッチパネル52に対する各種の制御指示が出力される。
【0114】
アナログスティック53は、ユーザの指で操作されるスティック部がスライドした(または傾倒した)方向および量を表すスティックデータをUIコントローラ65へ出力する。また、操作ボタン54は、各操作ボタン54A〜54Lに対する入力状況(押下されたか否か)を表す操作ボタンデータをUIコントローラ65へ出力する。
【0115】
磁気センサ62は、磁界の大きさおよび方向を検知することで方位を検出する。検出された方位を示す方位データは、UIコントローラ65へ出力される。また、UIコントローラ65から磁気センサ62へは、磁気センサ62に対する制御指示が出力される。磁気センサ62に関しては、MI(磁気インピーダンス)素子、フラックスゲートセンサ、ホール素子、GMR(巨大磁気抵抗)素子、TMR(トンネル磁気抵抗)素子、あるいはAMR(異方性磁気抵抗)素子等を用いたセンサがあるが、方位を検出することができればどのようなものが用いられてもよい。なお、厳密には、地磁気以外に磁界が発生している場所においては、得られた方位データは方位を示さないことになるが、そのような場合であっても、端末装置7が動いた場合には方位データが変化するため、端末装置7の姿勢の変化を算出することができる。
【0116】
加速度センサ63は、ハウジング50の内部に設けられ、3軸(図8の(a)図に示すxyz軸)方向に沿った直線加速度の大きさを検出する。具体的には、加速度センサ63は、ハウジング50の長辺方向をx軸、ハウジング50の短辺方向をy軸、ハウジング50の表面に対して垂直な方向をz軸として、各軸の直線加速度の大きさを検出する。検出された加速度を表す加速度データはUIコントローラ65へ出力される。また、UIコントローラ65から加速度センサ63へは、加速度センサ63に対する制御指示が出力される。加速度センサ63は、本実施形態では例えば静電容量式のMEMS型加速度センサであるとするが、他の実施形態においては他の方式の加速度センサを用いるようにしてもよい。また、加速度センサ63は1軸または2軸方向を検出する加速度センサであってもよい。
【0117】
ジャイロセンサ64は、ハウジング50の内部に設けられ、上記x軸、y軸およびz軸の3軸周りの角速度を検出する。検出された角速度を表す角速度データは、UIコントローラ65へ出力される。また、UIコントローラ65からジャイロセンサ64へは、ジャイロセンサ64に対する制御指示が出力される。なお、3軸の角速度を検出するために用いられるジャイロセンサの数および組み合わせはどのようなものであってもよく、ジャイロセンサ64はジャイロセンサ48と同様、2軸ジャイロセンサと1軸ジャイロセンサとで構成されてもよい。また、ジャイロセンサ64は1軸または2軸方向を検出するジャイロセンサであってもよい。
【0118】
UIコントローラ65は、上記の各構成要素から受け取ったタッチ位置データ、スティックデータ、操作ボタンデータ、方位データ、加速度データ、および角速度データを含む操作データをコーデックLSI66に出力する。なお、拡張コネクタ58を介して端末装置7に他の装置が接続される場合には、当該他の装置に対する操作を表すデータが上記操作データにさらに含まれていてもよい。
【0119】
コーデックLSI66は、ゲーム装置3へ送信するデータに対する圧縮処理、および、ゲーム装置3から送信されたデータに対する伸張処理を行う回路である。コーデックLSI66には、LCD51、カメラ56、サウンドIC68、無線モジュール70、フラッシュメモリ73、および赤外線通信モジュール72が接続される。また、コーデックLSI66はCPU77と内部メモリ78を含む。端末装置7はゲーム処理自体を行なわない構成であるが、端末装置7の管理や通信のための最小限のプログラムを実行する必要がある。電源投入時にフラッシュメモリ73に格納されたプログラムを内部メモリ78に読み出してCPU77が実行することで、端末装置7が起動する。また、内部メモリ78の一部の領域はLCD51のためのVRAMとして使用される。
【0120】
カメラ56は、ゲーム装置3からの指示に従って画像を撮像し、撮像した画像データをコーデックLSI66へ出力する。また、コーデックLSI66からカメラ56へは、画像の撮像指示等、カメラ56に対する制御指示が出力される。なお、カメラ56は動画の撮影も可能である。すなわち、カメラ56は、繰り返し撮像を行って画像データをコーデックLSI66へ繰り返し出力することも可能である。
【0121】
サウンドIC68は、スピーカ67およびマイク69に接続され、スピーカ67およびマイク69への音声データの入出力を制御する回路である。すなわち、コーデックLSI66から音声データを受け取った場合、サウンドIC68は当該音声データに対してD/A変換を行って得られる音声信号をスピーカ67へ出力し、スピーカ67から音を出力させる。また、マイク69は、端末装置7に伝わる音(ユーザの音声等)を検知して、当該音を示す音声信号をサウンドIC68へ出力する。サウンドIC68は、マイク69からの音声信号に対してA/D変換を行い、所定の形式の音声データをコーデックLSI66へ出力する。
【0122】
コーデックLSI66は、カメラ56からの画像データと、マイク69からの音声データと、UIコントローラ65からの端末操作データとを無線モジュール70を介してゲーム装置3へ送信する。本実施形態では、コーデックLSI66は、画像データおよび音声データに対して、コーデックLSI27と同様の圧縮処理を行う。上記端末操作データ、ならびに、圧縮された画像データおよび音声データは、送信データとして無線モジュール70に出力される。無線モジュール70にはアンテナ71が接続されており、無線モジュール70はアンテナ71を介してゲーム装置3へ上記送信データを送信する。無線モジュール70は、ゲーム装置3の端末通信モジュール28と同様の機能を有している。すなわち、無線モジュール70は、例えばIEEE802.11nの規格に準拠した方式により、無線LANに接続する機能を有する。送信されるデータは必要に応じて暗号化されていてもよいし、されていなくともよい。
【0123】
以上のように、端末装置7からゲーム装置3へ送信される送信データには、操作データ(端末操作データ)、画像データ、および音声データが含まれる。なお、拡張コネクタ58を介して端末装置7に他の装置が接続される場合には、当該他の装置から受け取ったデータが上記送信データにさらに含まれていてもよい。また、赤外線通信モジュール72は、他の装置との間で例えばIRDAの規格に従った赤外線通信を行う。コーデックLSI66は、赤外線通信によって受信したデータを、必要に応じて上記送信データに含めてゲーム装置3へ送信してもよい。
【0124】
また、上述のように、ゲーム装置3から端末装置7へは、圧縮された画像データおよび音声データが送信される。これらのデータはアンテナ71および無線モジュール70を介してコーデックLSI66に受信される。コーデックLSI66は、受信した画像データおよび音声データを伸張する。伸張された画像データはLCD51へ出力され、画像がLCD51に表示される。また、伸張された音声データはサウンドIC68へ出力され、サウンドIC68はスピーカ67から音を出力させる。
【0125】
また、ゲーム装置3から受信されるデータに制御データが含まれる場合、コーデックLSI66およびUIコントローラ65は、制御データに従った制御指示を各部に行う。上述のように、制御データは、端末装置7が備える各構成要素(本実施形態では、カメラ56、タッチパネルコントローラ61、マーカ部55、各センサ62〜64、および赤外線通信モジュール72)に対する制御指示を表すデータである。本実施形態では、制御データが表す制御指示としては、上記各構成要素を動作させたり、動作を休止(停止)させたりする指示が考えられる。すなわち、ゲームで使用しない構成要素については電力消費を抑えるために休止させてもよく、その場合、端末装置7からゲーム装置3へ送信される送信データには、休止した構成要素からのデータが含まれないようにする。なお、マーカ部55は赤外LEDであるので、制御は単に電力の供給のON/OFFでよい。
【0126】
以上のように、端末装置7は、タッチパネル52、アナログスティック53、および操作ボタン54といった操作手段を備えるが、他の実施形態においては、これらの操作手段に代えて、または、これらの操作手段とともに、他の操作手段を備える構成であってもよい。
【0127】
また、端末装置7は、端末装置7の動き(位置や姿勢、あるいは、位置や姿勢の変化を含む)を算出するためのセンサとして、磁気センサ62、加速度センサ63、およびジャイロセンサ64を備えるが、他の実施形態においては、これらのセンサのうち1つまたは2つのみを備える構成であってもよい。また、他の実施形態においては、これらのセンサに代えて、または、これらのセンサとともに、他のセンサを備える構成であってもよい。
【0128】
また、端末装置7は、カメラ56およびマイク69を備える構成であるが、他の実施形態においては、カメラ56およびマイク69を備えていなくてもよく、また、いずれか一方のみを備えていてもよい。
【0129】
また、端末装置7は、端末装置7とコントローラ5との位置関係(コントローラ5から見た端末装置7の位置および/または姿勢等)を算出するための構成としてマーカ部55を備える構成であるが、他の実施形態ではマーカ部55を備えていない構成としてもよい。また、他の実施形態では、端末装置7は、上記位置関係を算出するための構成として他の手段を備えていてもよい。例えば、他の実施形態においては、コントローラ5がマーカ部を備え、端末装置7が撮像素子を備える構成としてもよい。さらにこの場合、マーカ装置6は赤外LEDに代えて、撮像素子を備える構成としてもよい。
【0130】
[5.ゲームシステムにおける処理の概要]
次に、本実施形態のゲームシステム1において実行される処理の概要について説明する。ゲームシステム1は、テレビ2と端末装置7という複数の表示装置にそれぞれゲーム画像を表示することによって、プレイヤにより見やすいゲーム画像を提供したり、ゲームの操作性や興趣性を向上したりすることができる。ここで、2つの表示装置のうちの一方であるテレビ2においては、画質向上等の目的で行われる種々の映像処理のために表示遅延が生じるおそれがあり、表示遅延に起因する種々の問題が生じるおそれがある。ゲームシステム1は、表示遅延の時間を測定し、遅延時間に応じた処理を行うことによって、種々の問題を防止するものである。
【0131】
(テレビ2における表示遅延)
図11は、ゲームシステム1において各ゲーム画像が出力されてから表示されるまでの時間を示す図である。なお、図11では、(実施形態における実際の動作とは異なるが)仮に、テレビ2に表示されるテレビ用ゲーム画像と、端末装置7に表示される端末用ゲーム画像とについてほぼ同時にゲーム画像が出力される場合を想定する。
【0132】
図11において、テレビ用ゲーム画像に関しては、テレビ2に入力されると、所定の映像処理が実行された後、画面に表示される。本実施形態においては、ゲーム装置3によってテレビ用ゲーム画像が出力されてから、テレビ2にテレビ用ゲーム画像が表示されるまでの時間T1を、「(テレビ2の)画像遅延時間」と呼ぶ。
【0133】
一方、端末用ゲーム画像は、ゲーム装置3において出力指示が行われると、圧縮処理が施されてから端末装置7へ無線送信され、端末装置7において、圧縮された端末用ゲーム画像に対して伸張処理が施された後、伸張された端末用ゲーム画像がLCD51に表示される。なお、本実施形態においては、端末装置7においては上記のような映像処理は実行されない。そのため、端末用ゲーム画像の出力指示が行われてから、端末装置7に端末用ゲーム画像が表示されるまでの時間T2は、テレビ2の画像遅延時間T1よりも短くなる。また、本実施形態においては、高効率の圧縮処理等により、1/60秒の1フレーム時間を処理単位として見た場合には時間T2をほとんど無視できる程度の時間とすることができる。
【0134】
以上のように、ゲームシステム1においては、テレビ用ゲーム画像が表示されるまでの時間(画像遅延時間)T1と、端末用ゲーム画像が表示されるまでの時間T2とが異なる。そのため、図11に示すように、テレビ用ゲーム画像と端末用ゲーム画像とを同時に出力してしまうと、各ゲーム画像が画面に表示されるタイミングがずれてしまう。各ゲーム画像の表示タイミングがずれると、例えば次のような問題が生じるおそれがある。すなわち、プレイヤがテレビ2と端末装置7との両方の画面を見てゲームを行う場合には、各ゲーム画像の表示タイミングがずれることによって、プレイヤが違和感を抱いたり、どちらのゲーム画像に合わせてゲーム操作を行うべきかわからないためにゲーム操作に支障をきたしたりするおそれがある。また、複数(例えば2人)のプレイヤのうちの一方がテレビ2を見て、他方のプレイヤが端末装置7を見てゲームを行う場合には、各ゲーム画像の表示タイミングがずれることによって、プレイヤ間に有利不利が生じたり、協力してゲームプレイを行う際に支障をきたしたりするおそれがある。なお、例えば、適切なタイミングでゲーム操作を行うことによって音楽を演奏するゲーム等、シビアな操作タイミングが要求されるゲームにおいては、上記の問題が顕著になる。
【0135】
以上より、本実施形態においては、ゲームシステム1は、以下に示す方法で上記画像遅延時間を測定する。そして、端末用ゲーム画像の出力タイミングを画像遅延時間に応じて遅らせるようにすることで、テレビ用ゲーム画像と端末用ゲーム画像との表示タイミングを合わせる。以下、画像遅延時間の測定方法と、端末用ゲーム画像の出力タイミングを遅らせる処理とについて説明する。
【0136】
(遅延時間の測定)
図12は、ゲームシステム1において画像遅延時間の測定するための処理の流れを示すタイミングチャートである。画像遅延時間を測定する際、ゲーム装置3はまず、テスト画像をテレビ2へ出力する(ステップS1)。テスト画像とは、画像遅延時間の測定用に用いられる所定パターンの画像(または動画)である。詳細は後述するが、テスト画像に関しては、テレビ2に表示されたテスト画像が端末装置7のカメラ56によって撮像される。テスト画像は、カメラ56による撮像画像に含まれるテスト画像が後述する認識処理によって認識可能なものであれば、どのような画像であってもよい。
【0137】
テスト画像を入力したテレビ2は、テスト画像に対して映像処理を行った後、テスト画像を表示する(ステップS2)。上記ステップS1の処理からステップS2の処理までの時間T1が上記画像遅延時間である。なお、テレビ2における映像処理は、テレビの機種や、その時点で選択されている映像モード(どのような映像処理を行うか)によって異なる。
【0138】
端末装置7は、テレビ2に表示されているテスト画像をカメラ56によって撮像する(ステップS3)。したがって、画像遅延時間を測定する際には、端末装置7は、カメラ56がテレビ2の画面の方を向いた姿勢とされている必要がある。また、カメラ56によって撮像された画像(撮像画像)には、テスト画像が含まれることとなる。端末装置7は、撮像画像をゲーム装置3へ無線送信する(ステップS4)。なお、本実施形態においては、撮像画像は圧縮されて送信される。
【0139】
圧縮された撮像画像は、ゲーム装置3において受信される(ステップS5)。このとき、ゲーム装置3は、圧縮された撮像画像に対して伸張処理を行う。さらに、ゲーム装置3は、撮像画像に対して所定の画像認識処理を行う(ステップS6)。この画像認識処理は、撮像画像内のテスト画像を識別する処理であり、撮像画像内にテスト画像が含まれるか否か、換言すれば、テレビ2の画面にテスト画像が表示されたか否かを判定するための処理である。なお、実際には、上記ステップS3〜S6の処理は、それぞれ逐次実行される。つまり、端末装置7は、テレビ2の画面を撮像して撮像画像を送信する処理を繰り返し実行し、ゲーム装置3は、撮像画像を受信して画像認識処理を実行する処理を繰り返し実行する。
【0140】
上記画像認識処理においてテスト画像を識別することができた場合、ゲーム装置3は、テスト画像をテレビ2へ出力(ステップS1)してから、画像認識処理が完了する(ステップS6)までの時間T4を計測する。なお、画像認識処理が完了する時点とは、撮像画像内にテスト画像が含まれると判定される時点である。
【0141】
ここで、端末装置7のカメラ56が撮像を行ってから(ステップS3)、画像認識処理が完了するまでの時間T5は、予め測定しておくことができ、概ね一定である。ゲーム装置3は、測定によって得られる時間T5を予め記憶しておく。したがって、ゲーム装置3は、上記時間T4から時間T5を引いた差分として画像遅延時間T1を算出することができる。
【0142】
以上のように、本実施形態においては、画像認識処理(ステップS6)において撮像画像にテスト画像が含まれるとの判定が行われた場合、画像遅延時間T1は、当該判定が行われたタイミング(ステップS6)と、ゲーム装置3がテスト画像を出力したタイミング(ステップS1)と、カメラ56が当該撮像画像を撮像してから当該判定が行われるまでの所要時間(時間T5)とに基づいて算出される。本実施形態によれば、プレイヤは、端末装置7のカメラ56をテレビ2の画面の方へ向けるだけでよいので、画像遅延時間を容易に算出することができる。また、上記の測定は任意のタイミングで行うことができるので、プレイヤは、例えばゲームシステム1の初期設置時の他、テレビ2の映像モードが変更された場合に測定を行うこともできる。そのため、映像モードの変更等によって画像遅延時間が変化しても当該時間をその都度正確に測定することができる。
【0143】
本実施形態においては、ゲームシステム1は、上記の方法によって画像遅延時間を予め測定しておき、ゲーム処理を実行する際には、測定しておいた画像遅延時間に応じて端末用ゲーム画像の送信タイミングを遅らせる。以下、図13を参照して、端末用ゲーム画像の送信タイミングを遅らせる処理について説明する。
【0144】
(送信タイミングの調整)
図13は、ゲームシステム1において端末用ゲーム画像が送信される際の処理の流れを示す図である。図13に示すように、ゲーム装置3は、各ゲーム画像(テレビ用ゲーム画像および端末用ゲーム画像)をほぼ同じタイミングで生成する。テレビ用ゲーム画像については、ゲーム装置3は、生成されたゲーム画像をすぐにテレビ2へ出力する。一方、端末用ゲーム画像については、ゲーム装置3は、生成されたゲーム画像をゲーム装置3内に一時記憶し、端末装置7への画像の送信を待機する。ここで、テレビ用ゲーム画像の送信を待機する時間(待機時間)T3は、上記画像遅延時間に応じて決められる。具体的には図13に示すように、待機時間T3は、画像遅延時間T1から、端末装置7に端末用ゲーム画像が表示されるまでの時間T2を減算した時間である。なお、本実施形態においては、時間T2はほとんど無視できる程度の時間であるとし、待機時間T3が画像遅延時間T1と同じ長さに決定されてもよい。
【0145】
端末用ゲーム画像が生成されてから待機時間T3が経過すると、ゲーム装置3は、当該端末用ゲーム画像を端末装置7へ送信する。すなわち、当該端末用ゲーム画像が圧縮されて端末装置7へ送信され、端末装置7は、圧縮された端末用ゲーム画像を伸張してLCD51に表示する。これによって、テレビ用ゲーム画像と端末用ゲーム画像の表示タイミングを同期させることができる。
【0146】
以上のように、本実施形態においては、ゲーム装置3は、画像遅延時間に基づいて、端末用ゲーム画像が端末装置7へ送信されるタイミングを遅らせる。これによって、ゲーム装置3は、画像遅延時間に応じた適切なタイミングで端末用ゲーム画像を送信することができ、テレビ用ゲーム画像と端末用ゲーム画像の表示タイミングを確実に同期させることができる。
【0147】
(ゲーム音に関する処理)
上記ゲーム画像の場合と同様、テレビ2のスピーカ2aに出力されるゲーム音声(テレビ用ゲーム音声)についても、音声出力に遅延が生じる場合がある。例えば、テレビ2において表示する画像とスピーカ2aから出力される音声との間で同期がとられる場合には、画像の表示遅延に伴って音声出力にも遅延が生じる。このようにテレビ用ゲーム音声に遅延が生じ、端末装置7において出力されるゲーム音声(端末用ゲーム音声)とテレビ用ゲーム音声との出力タイミングがずれる場合には、各ゲーム画像の表示タイミングがずれる場合と同様、プレイヤが違和感を抱いたり、ゲーム操作に支障をきたしたりするおそれがある。
【0148】
したがって、本実施形態においては、ゲーム装置3は、ゲーム音声についてもゲーム画像と同様、遅延時間を測定し、遅延時間に応じた処理を実行する。すなわち、テレビ用ゲーム音声の遅延時間(音声遅延時間)を測定し、端末用ゲーム音声の出力タイミングを音声遅延時間に応じて遅らせるようにすることで、テレビ用ゲーム音声と端末用ゲーム音声との出力タイミングを合わせるようにする。
【0149】
詳細は後述するが、音声遅延時間の測定は、画像遅延時間の測定方法に準じた方法で行うことができる。すなわち、音声遅延時間を測定する際、ゲーム装置3はまず、音声遅延時間の測定用に用いられる所定パターンの音声であるテスト音声をテレビ2へ出力する。テスト音声を入力したテレビ2は、テスト音声をスピーカ2aから出力する。ゲーム装置3がテスト音声を出力してからスピーカ2aがテスト音声を出力するまでの時間が上記音声遅延時間である。音声遅延時間は、テレビの機種や、その時点で選択されている映像モードや、テレビ2が画像と音声とを同期して出力する機能を有するか否か等によって異なる。
【0150】
さらに、端末装置7は、スピーカ2aから出力されるテスト音声をマイク69によって検出する。また、マイク69によって検出された音声(検出音)には、テスト音声が含まれることとなる。端末装置7は、検出音を圧縮してゲーム装置3へ無線送信する。圧縮された検出音は、ゲーム装置3において受信されて伸張される。さらに、ゲーム装置3は、検出音に対して所定の音声認識処理を行う。この音声認識処理は、検出音からテスト音声を識別する処理であり、検出音にテスト音声が含まれるか否か、換言すれば、テレビ2のスピーカ2aからテスト音声が出力されたか否かを判定するための処理である。なお、端末装置7は、スピーカ2aからの音を検出して検出音を送信する処理を繰り返し実行し、ゲーム装置3は、検出音を受信して音声認識処理を実行する処理を繰り返し実行する。
【0151】
上記音声認識処理においてテスト音声を識別することができた場合、ゲーム装置3は、テスト音声をテレビ2へ出力してから、音声認識処理が完了するまでの時間(計測時間)を計測する。なお、音声認識処理が完了する時点とは、検出音にテスト音声が含まれると判定される時点である。また、端末装置7のマイク69が音声を検出してから音声認識処理が完了するまでの処理時間は、予め測定されて記憶される。したがって、ゲーム装置3は、上記計測時間から処理時間を引いた差分として音声遅延時間を算出することができる。
【0152】
また、音声についても画像と同様、ゲーム装置3は、音声遅延時間に応じた音声待機時間だけ遅らせて端末用ゲーム音声を端末装置7へ出力する。これによって、テレビ用ゲーム音声と端末用ゲーム音声の出力タイミングを同期させることができる。
【0153】
[6.ゲームシステムにおける処理の詳細]
次に、本ゲームシステムにおいて実行される処理の詳細を説明する。まず、ゲームシステム1における処理において用いられる各種データについて説明する。図14は、ゲームシステム1における処理において用いられる各種データを示す図である。図14において、ゲーム装置3のメインメモリ(外部メインメモリ12または内部メインメモリ11e)に記憶される主なデータを示す図である。図14に示すように、ゲーム装置3のメインメモリには、ゲームプログラム80、受信データ81、および処理用データ86が記憶される。なお、メインメモリには、図14に示すデータの他、ゲームに登場する各種オブジェクトの画像データやゲームに使用される音声データ等、ゲームに必要なデータが記憶される。
【0154】
ゲームプログラム80は、ゲーム装置3に電源が投入された後の適宜のタイミングで光ディスク4からその一部または全部が読み込まれてメインメモリに記憶される。なお、ゲームプログラム80は、光ディスク4に代えて、フラッシュメモリ17やゲーム装置3の外部装置から(例えばインターネットを介して)取得されてもよい。また、ゲームプログラム80に含まれる一部(例えば、コントローラ5および/または端末装置7の姿勢を算出するためのプログラム)については、ゲーム装置3内に予め記憶されていてもよい。ゲームプログラム80には、後述する画像遅延測定処理(図15)、音声遅延測定処理(図16)、およびゲーム処理(図17)を実行するためのプログラムが含まれる。
【0155】
受信データ81は、コントローラ5および端末装置7から受信される各種のデータである。受信データ81は、コントローラ操作データ82、端末操作データ83、撮像画像データ84、および、検出音データ85を含む。コントローラ5が複数接続される場合には、複数のコントローラ操作データ82が記憶される。端末装置7が複数接続される場合には、それぞれ複数の端末操作データ83、撮像画像データ84、および、検出音データ85が記憶される。
【0156】
コントローラ操作データ82は、コントローラ5に対するユーザ(プレイヤ)の操作を表すデータである。コントローラ操作データ82は、コントローラ5から送信されてゲーム装置3において取得され、メインメモリに記憶される。上述のように、コントローラ操作データ82は、上記加速度センサ37およびジャイロセンサ48の検出結果を表すデータ、各操作ボタン32a〜32iに対する入力状態を表すデータ、および、上記マーカ座標を表すデータを含む。メインメモリには、最新の(最後に取得された)ものから順に所定個数のコントローラ操作データが記憶されてもよい。
【0157】
なお、コントローラ操作データ82は、コントローラ5を操作するユーザの操作を表すものであればよく、上記の各データの一部のみを含むものであってもよい。また、コントローラ5が他の入力手段(例えば、タッチパネルやアナログスティック等)を有する場合には、コントローラ操作データ82は、当該他の入力手段に対する操作を表すデータを含んでいてもよい。
【0158】
端末操作データ83は、端末装置7に対するユーザの操作を表すデータである。端末操作データ83は、端末装置7から送信されてゲーム装置3において取得され、メインメモリに記憶される。上述のように、端末操作データ83は、タッチ位置データ、スティックデータ、操作ボタンデータ、方位データ、加速度データ、および角速度データを含む。なお、メインメモリには、最新の(最後に取得された)ものから順に所定個数の端末操作データが記憶されてもよい。
【0159】
なお、端末操作データ83は、端末装置7を操作するユーザの操作を表すものであればよく、上記各データのいずれか1つのみを含むものであってもよい。また、端末装置7が他の入力手段(例えば、タッチパッドや、コントローラ5の撮像情報演算部35等)を有する場合には、端末操作データ83は、当該他の入力手段に対する操作を表すデータを含んでいてもよい。
【0160】
撮像画像データ84は、端末装置7のカメラ56によって撮像された画像(カメラ画像)を表すデータである。撮像画像データ84は、端末装置7からの圧縮された画像データがコーデックLSI27によって伸張された画像データであり、入出力プロセッサ11aによってメインメモリに記憶される。なお、メインメモリには、最新の(最後に取得された)ものから順に所定個数の撮像画像データが記憶されてもよい。
【0161】
検出音データ85は、端末装置7のマイク69によって検出された音声(検出音)を表すデータである。検出音データ85は、端末装置7から送信されてくる圧縮された音声データがコーデックLSI27によって伸張された音声データであり、入出力プロセッサ11aによってメインメモリに記憶される。
【0162】
処理用データ86は、ゲームシステム1における情報処理(図15〜図17)において用いられるデータである。処理用データ86は、画像処理時間データ87、音声処理時間データ88、画像計測時間データ89、音声計測時間データ90、画像遅延時間データ91、音声遅延時間データ92、画像待機時間データ93、音声待機時間データ94、および音声生成指示データ95を含む。なお、図14に示すデータの他、処理用データ86は、ゲームに登場する各種オブジェクトに設定される各種パラメータを表すデータ等、ゲーム処理において用いられる各種データを含む。
【0163】
画像処理時間データ87は、画像遅延時間の測定の際に、画像を撮像してから当該画像内におけるテスト画像を認識するまでに要する処理時間(画像処理時間と呼ぶ)を表すデータである。具体的には、画像処理時間は、端末装置7のカメラ56が撮像を行ってから画像認識処理が完了するまでの時間T5である(図12参照)。画像処理時間は予め測定され、測定された時間を表すデータは予めゲームプログラム80とともに光ディスク4に記憶される。ゲーム装置3において画像遅延測定処理が実行される場合には、当該データが適宜のタイミングで光ディスク4から読み込まれて画像処理時間データ87としてメインメモリに記憶される。
【0164】
音声処理時間データ88は、音声遅延時間の測定の際に、スピーカ2aからの音声を検出してから後述するテスト音声を認識するまでに要する処理時間(音声処理時間)を表すデータである。具体的には、音声処理時間は、端末装置7のマイク69が上記音声を検出してから音声認識処理が完了するまでの時間である。音声処理時間は予め測定され、測定された時間を表すデータは予めゲームプログラム80とともに光ディスク4に記憶される。ゲーム装置3において音声遅延測定処理が実行される場合には、当該データが適宜のタイミングで光ディスク4から読み込まれて音声処理時間データ88としてメインメモリに記憶される。
【0165】
画像計測時間データ89は、画像遅延測定処理に要する時間、すなわち、ゲーム装置3がテスト画像をテレビ2へ出力してから、画像認識処理が完了するまでの時間(画像計測時間)T4を表すデータである。また、音声計測時間データ90は、音声遅延測定処理に要する時間、すなわち、ゲーム装置3がテスト音声をテレビ2へ出力してから、音声認識処理が完了するまでの時間(音声計測時間)を表すデータである。
【0166】
画像遅延時間データ91は、ゲーム装置3によってテレビ用ゲーム画像が出力されてから、テレビ2にテレビ用ゲーム画像が表示されるまでの時間、すなわち、上記画像遅延時間を表すデータである。また、音声遅延時間データ92は、ゲーム装置3によってテレビ用ゲーム音声が出力されてから、テレビ2のスピーカ2aからテレビ用ゲーム音声が出力されるまでの時間、すなわち、上記音声遅延時間を表すデータである。
【0167】
画像待機時間データ93は、端末用ゲーム画像が生成されてから出力されるまでの待機時間(画像待機時間)を表すデータである。画像待機時間は、上記画像遅延時間に基づいて設定される。また、音声待機時間データ94は、生成されるべき端末用ゲーム音声が確定してから実際に生成されて出力されるまでの待機時間(音声待機時間)を表すデータである。
【0168】
音声生成指示データ95は、CPU10がDSP11cに対して音声を生成するための指示(音声生成指示)を表すデータである。本実施形態においては、端末用ゲーム音声の出力タイミングを遅らせるために、音声生成指示がメインメモリに一時記憶される。一時記憶されていた音声生成指示は、端末用ゲーム音声を端末装置7へ実際に出力するタイミングでDSP11cに送られ、当該音声生成指示を受けたDSP11cによって端末用ゲーム音声が生成されて端末装置7へ送信される。
【0169】
次に、図15〜図17を参照して、ゲーム装置3において行われる処理の詳細を説明する。図15は、ゲーム装置3において実行される画像遅延測定処理の流れを示すフローチャートである。画像遅延測定処理は、画像遅延時間を測定し、画像遅延時間に応じた画像待機時間を設定する処理である。画像遅延測定処理は、どのようなタイミングで実行されてもよいが、例えば、ゲームシステム1の初期設置時や、ゲームプログラム80の実行開始時に実行される。
【0170】
なお、図15〜図17に示すフローチャートの各ステップの処理は、単なる一例に過ぎず、同様の結果が得られるのであれば、各ステップの処理順序を入れ替えてもよい。また、変数の値や、判断ステップで利用される閾値も、単なる一例に過ぎず、必要に応じて他の値を採用してもよい。また、本実施形態では、上記フローチャートの各ステップの処理をCPU10が実行するものとして説明するが、CPU10以外のプロセッサや専用回路が上記各ステップの一部のステップの処理を実行するようにしてもよい。
【0171】
図15においては、まずステップS11において、CPU10は、端末装置7のカメラ56をテレビ2の方へ向ける旨を表す画像を表示させる。この画像は、テレビ2に表示されてもよいし、端末装置7に表示されてもよいし、両方に表示されてもよい。具体的には、例えば「端末装置のカメラをテレビの方へ向けて下さい」等のメッセージを表す画像がCPU10およびGPU11bによって生成され、VRAM11dに記憶される。そして、上記画像をテレビ2へ出力する場合には、CPU10は、VRAM11dに記憶された上記画像のデータをAV−IC15へ送り、AV−IC15は当該画像のデータをAVコネクタ16を介してテレビ2へ出力する。これによって、上記画像がテレビ2に表示される。また、上記画像を端末装置7へ出力する場合には、VRAM11dに記憶された上記画像データは、CPU10によってコーデックLSI27に送られ、コーデックLSI27によって所定の圧縮処理が行われる。さらに、圧縮処理が施された上記画像のデータは、端末通信モジュール28によってアンテナ29を介して端末装置7へ送信される。端末装置7は、ゲーム装置3から送信されてくる画像のデータを無線モジュール70によって受信し、コーデックLSI66によって所定の伸張処理が行われる。伸張処理が行われた画像データはLCD51に出力され、上記画像がLCD51に表示される。上記ステップS11の次にステップS12の処理が実行される。
【0172】
ステップS12において、CPU10は、テレビ2にテスト画像の出力を開始する。すなわち、所定のテスト画像がCPU10およびGPU11bによって生成されてテレビ2へ出力される。ステップS12において画像をテレビ2へ出力する動作は上記ステップS11と同様である。また、CPU10は、ステップS12の処理時点から時間の計測を開始する。なお、ステップS12の処理以降、画像遅延測定処理が終了するまで、テスト画像は1フレーム時間(ここでは1/60秒)に1回の割合で繰り返し出力される。また、テスト画像は、静止画であってもよいし、動画であってもよいし、後述するように静止画が一定時間毎に繰り返し表示される画像であってもよい。ステップS12の次にステップS13の処理が実行される。
【0173】
ステップS13において、CPU10は、端末装置7からの撮像画像を取得する。ここで、端末装置7は、端末操作データと撮像画像データと検出音データとをゲーム装置3へ繰り返し送信する。ゲーム装置3はこれらのデータを逐次受信する。ゲーム装置3においては、端末通信モジュール28がこれらのデータを逐次受信し、撮像画像データおよび検出音データについてはコーデックLSI27によって伸張処理が逐次施される。そして、入出力プロセッサ11aが端末操作データと撮像画像データと検出音データとをメインメモリに逐次記憶する。ステップS13においては、CPU10は、最新の端末操作データに含まれる撮像画像データ84をメインメモリから読み出す。ステップS13の次にステップS14の処理が実行される。
【0174】
ステップS14において、CPU10は、ステップS13で取得された撮像画像に対して画像認識処理を実行する。具体的には、CPU10は、撮像画像内から上記テスト画像を識別する処理を実行する。なお、テスト画像を識別するための具体的な方法はどのような方法であってもよく、例えばパターンマッチングの手法によって撮像画像内からテスト画像を識別することができる。ステップS14の次にステップS15の処理が実行される。
【0175】
ステップS15において、CPU10は、ステップS14の画像認識処理が成功したか否か、すなわち、画像認識処理によってテスト画像を識別することができたか否かを判定する。ステップS15の判定処理は、ステップS13で取得された撮像画像内にテスト画像が含まれるか否かを判定するための処理であり、換言すれば、テレビ2の画面にテスト画像が表示されたか否かを判定するための処理である。ステップS15の判定結果が肯定である場合、ステップS16の処理が実行される。一方、ステップS15の判定結果が否定である場合、ステップS13の処理が再度実行される。したがって、ステップS13〜S15の一連の処理は、画像認識処理が成功するまで繰り返し実行される。なお、ステップS13〜S15の一連の処理ループは、1フレーム時間に1回の割合で実行されることが好ましいが、当該処理ループが実行される間隔は、画像認識処理に要する時間によっては1フレーム時間よりも長くてもよい。
【0176】
ステップS16において、CPU10は、ゲーム装置3がテスト画像をテレビ2へ出力してから画像認識処理が完了するまでの画像計測時間を算出する。具体的には、CPU10は、ステップS12の処理時点からステップS16の処理時点までの経過時間を計測し、計測した時間を表すデータを画像計測時間データ89としてメインメモリに記憶する。ステップS16の次にステップS17の処理が実行される。
【0177】
ステップS17において、CPU10は画像遅延時間を算出する。具体的には、CPU10は、画像処理時間データ87および画像計測時間データ89をメインメモリから読み出し、画像計測時間から画像処理時間を引いた差分として画像遅延時間を算出する。そして、算出された画像遅延時間を表すデータを画像遅延時間データ91としてメインメモリに記憶する。ステップS17の次にステップS18の処理が実行される。
【0178】
ステップS18において、CPU10は、画像遅延時間に基づいて画像待機時間を設定する。ここで、画像待機時間は、画像遅延時間から、端末用ゲーム画像がゲーム装置3から出力されてからテレビ2に表示されるまでの時間を減算した時間として算出される(図13参照)。本実施形態においては、端末装置7に端末用ゲーム画像が表示されるまでの時間を無視できる程度の時間であるとし、画像待機時間を画像遅延時間と等しい時間として設定する。CPU10は、設定された画像待機時間を表すデータを画像待機時間データ93としてメインメモリに記憶する。なお、設定された画像待機時間が継続的に用いられる場合には、画像待機時間データ93はフラッシュメモリ17に記憶されてもよい。ステップS18の次にステップS19の処理が実行される。
【0179】
ステップS19において、CPU10は、画像遅延時間の測定(画像待機時間の設定)が終了した旨をプレイヤに対して通知する。具体的には、例えば「設定が終了しました。ゲームを開始してください」等のメッセージを表す画像を表示する。この画像は、テレビ2に表示されてもよいし、端末装置7に表示されてもよいし、両方に表示されてもよい。なお、ステップS19において画像をテレビ2または端末装置7へ出力する動作は上記ステップS11と同様である。ステップS19の後、CPU10は画像遅延測定処理を終了する。
【0180】
上記画像遅延測定処理によって、ゲーム装置3は画像遅延時間を測定し、画像遅延時間に応じた画像待機時間を設定することができる。なお、本実施形態においては、画像遅延時間を測定するためには、プレイヤに端末装置7のカメラ56をテレビ2の方へ向けさせる必要がある。ここで、もし仮にテスト画像が表示された後でカメラ56がテレビ2の方へ向けられたとすれば、上記計測時間として正確な時間を計測することができず、正確な画像遅延時間を測定することができなくなる。
【0181】
そこで、本実施形態においては、CPU10は、カメラ56をテレビ2の画面の方へ向ける旨の通知を表す画像を生成し、当該画像が表示された(ステップS11)の後で、テスト画像をテレビ2に表示させる(ステップS12)。これによれば、テスト画像が表示されるよりも先にカメラ56をテレビ2の方へ向けさせることができ、画像遅延時間を正確に算出することができる。なお、上記ステップS12の処理は、ステップS11において通知が行われてから所定時間が経過した後で実行されてもよい。
【0182】
また、他の実施形態においては、CPU10は、カメラ56がテレビ2の画面の方を向いているか否かを判定する処理を実行するようにしてもよい。このとき、CPU10は、カメラ56がテレビ2の画面の方を向いていると判定された場合に、テレビ2にテスト画像を表示する。これによれば、テスト画像が表示される前により確実にカメラ56をテレビ2の方へ向けさせることができる。なお、上記の判定方法としては、例えば、カメラ56を向けた後でプレイヤに所定の操作(例えば、端末装置7の所定のボタンを押下する操作)を行わせ、当該所定の操作が行われたか否かを判定する方法が考えられる。また、例えば、所定の画像をテレビ2に表示させ、当該所定の画像がカメラ56で撮像されたか否かを判定する方法が考えられる。なお、この所定の画像は、テスト画像と同じであってもよい。すなわち、CPU10は、テスト画像を一定時間毎に繰り返し(断続的に)表示させ、最初にテスト画像がカメラ56によって撮像された場合には画像遅延時間を測定せず、その後に再度表示されたテスト画像がカメラ56によって撮像された場合に画像遅延時間を算出するようにしてもよい。また、例えば、CPU10は、一連の動画(ゲームのタイトル画面等)を構成する複数の画像のうちの所定の画像がカメラ56によって撮像された場合、その後に表示される画像をテスト画像として用いて画像遅延時間を算出するようにしてもよい。
【0183】
また、CPU10は、画像遅延時間を算出する処理を所定回数実行するようにしてもよい。具体的には、CPU10は、ステップS12〜S17の一連の処理を所定回数実行し、画像遅延時間を複数個算出するようにしてもよい。そして、複数個の画像遅延時間の平均値を最終的な画像遅延時間として算出するようにしてもよい。これによれば、画像遅延時間をより正確に算出することができる。
【0184】
次に、音声遅延測定処理について説明する。図16は、ゲーム装置3において実行される音声遅延測定処理の流れを示すフローチャートである。音声遅延測定処理は、音声遅延時間を測定し、音声遅延時間に応じた音声待機時間を設定する処理である。音声遅延測定処理は、画像遅延測定処理と同様、どのようなタイミングで実行されてもよく、例えば、画像遅延測定処理の後に続けて実行されてもよい。また、音声遅延測定処理は、画像遅延測定処理とは異なり、端末装置7のカメラ56をテレビ2の方へ向ける必要がないので、CPU10は、例えばゲームのプレイ中(ゲーム操作中)において音声遅延測定処理を実行することも可能である。また、CPU10は、音声遅延測定処理を画像遅延測定処理と同時に(並行して)実行することも可能である。
【0185】
図16においては、まずステップS21において、CPU10は、テレビ2のスピーカ2aにテスト音声の出力を開始する。すなわち、CPU10の指示に応じて所定のテスト音声のデータがDSP11cによって生成されてAV−IC15へ送られる。これに応じて、AV−IC15はテスト音声のデータをAVコネクタ16を介してテレビ2へ出力する。これによって、テスト音声がスピーカ2aから出力される。また、CPU10は、ステップS21の処理時点から時間の計測を開始する。ステップS21の次にステップS22の処理が実行される。
【0186】
ステップS22において、CPU10は、端末装置7からの検出音を取得する。ここで、端末装置7は、端末操作データと撮像画像データと検出音データとをゲーム装置3へ繰り返し送信する。ゲーム装置3はこれらのデータを逐次受信する。ゲーム装置3においては、端末通信モジュール28がこれらのデータを逐次受信し、撮像画像データおよび検出音データについてはコーデックLSI27によって伸張処理が逐次施される。そして、入出力プロセッサ11aが端末操作データと撮像画像データと検出音データとをメインメモリに逐次記憶する。ステップS22においては、CPU10は、最新の端末操作データに含まれる検出音データ85をメインメモリから読み出す。ステップS22の次にステップS23の処理が実行される。
【0187】
ステップS23において、CPU10は、ステップS22で取得された検出音に対して音声認識処理を実行する。具体的には、CPU10は、検出音に含まれる上記テスト音声を識別する処理を実行する。なお、テスト音声を識別するための具体的な方法はどのような方法であってもよく、例えば検出音とテスト音声との波形や周波数スペクトルを比較することによって検出音に含まれるテスト音声を識別することができる。ステップS23の次にステップS24の処理が実行される。
【0188】
ステップS24において、CPU10は、ステップS23の音声認識処理が成功したか否か、すなわち、音声認識処理によってテスト音声を識別することができたか否かを判定する。ステップS24の判定処理は、ステップS23で取得された検出音にテスト音声が含まれるか否かを判定するための処理であり、換言すれば、テレビ2のスピーカ2aからテスト音声が出力されたか否かを判定するための処理である。ステップS24の判定結果が肯定である場合、ステップS25の処理が実行される。一方、ステップS24の判定結果が否定である場合、ステップS22の処理が再度実行される。したがって、ステップS22〜S24の一連の処理は、音声認識処理が成功するまで繰り返し実行される。なお、ステップS22〜S24の一連の処理ループは、1フレーム時間に1回の割合で実行されることが好ましいが、当該処理ループが実行される間隔は、音声認識処理に要する時間によっては1フレーム時間よりも長くてもよい。
【0189】
ステップS25において、CPU10は、ゲーム装置3がテスト音声をテレビ2へ出力してから音声認識処理が完了するまでの音声計測時間を算出する。具体的には、CPU10は、ステップS21の処理時点からステップS25の処理時点までの経過時間を計測し、計測した時間を表すデータを音声計測時間データ90としてメインメモリに記憶する。ステップS25の次にステップS26の処理が実行される。
【0190】
ステップS26において、CPU10は音声遅延時間を算出する。具体的には、CPU10は、音声処理時間データ88および音声計測時間データ90をメインメモリから読み出し、音声計測時間から音声処理時間を引いた差分として音声遅延時間を算出する。そして、算出された音声遅延時間を表すデータを音声遅延時間データ92としてメインメモリに記憶する。ステップS26の次にステップS27の処理が実行される。
【0191】
ステップS27において、CPU10は、音声遅延時間に基づいて音声待機時間を設定する。ここで、音声待機時間は、音声遅延時間から、ゲーム装置3において端末用ゲーム音声が生成されてから端末装置7において出力されるまでの時間を減算した時間として算出される。本実施形態においては、端末装置7において端末用ゲーム音声が出力されるまでの時間を無視できる程度の時間であるとし、音声待機時間を音声遅延時間と等しい時間として設定する。CPU10は、設定された音声待機時間を表すデータを音声待機時間データ94としてメインメモリに記憶する。なお、設定された音声待機時間が継続的に用いられる場合には、音声待機時間データ94はフラッシュメモリ17に記憶されてもよい。ステップS27の後、CPU10は音声遅延測定処理を終了する。
【0192】
上記音声遅延測定処理によって、ゲーム装置3は音声遅延時間を測定し、音声遅延時間に応じた音声待機時間を設定することができる。なお、音声遅延測定処理は、プレイヤに特別な操作を行わせる必要がないので、プレイヤに対する通知処理(ステップS11およびS19)を実行しなくてもよい。ただし、他の実施形態においては、テスト音の検出をより確実に行うべく、プレイヤに音を立てさせない目的で、CPU10は通知処理を行うようにしてもよい。
【0193】
また、CPU10は、音声遅延時間を算出する処理を所定回数実行するようにしてもよい。具体的には、CPU10は、ステップS21〜S26の一連の処理を所定回数実行し、音声遅延時間を複数個算出するようにしてもよい。そして、複数個の音声遅延時間の平均値を最終的な音声遅延時間として算出するようにしてもよい。これによれば、音声遅延時間をより正確に算出することができる。
【0194】
次に、ゲーム装置3において実行されるゲーム処理について説明する。図17は、ゲーム装置3において実行されるゲーム処理の流れを示すフローチャートである。ゲーム装置3の電源が投入されると、ゲーム装置3のCPU10は、図示しないブートROMに記憶されている起動プログラムを実行し、これによってメインメモリ等の各ユニットが初期化される。そして、光ディスク4に記憶されたゲームプログラムがメインメモリに読み込まれ、CPU10によって当該ゲームプログラムの実行が開始される。なお、ゲーム装置3においては、電源投入後に光ディスク4に記憶されたゲームプログラムがすぐに実行される構成であってもよいし、電源投入後にまず所定のメニュー画面を表示する内蔵プログラムが実行され、その後ユーザによってゲームの開始が指示されたときに光ディスク4に記憶されたゲームプログラムが実行される構成であってもよい。図17に示すフローチャートは、以上の処理が完了した後に行われる処理を示すフローチャートである。
【0195】
まずステップS31において、CPU10は初期処理を実行する。初期処理は、例えば、ゲーム処理で用いる各種パラメータの初期値を設定する処理である。また、各待機時間データ93および94がフラッシュメモリ17に記憶されている場合には、当該待機時間データ93および94がメインメモリに読み込まれてもよい。ステップS31の次にステップS32の処理が実行される。
【0196】
以上のステップS31の次にステップS32の処理が実行される。以降、ステップS32〜S40の一連の処理からなる処理ループが所定時間(1フレーム時間)に1回の割合で繰り返し実行される。
【0197】
ステップS32において、CPU10は、コントローラ5および端末装置7から送信されてくる各操作データを取得する。コントローラ5はコントローラ操作データをゲーム装置3へ繰り返し送信するので、ゲーム装置3においては、コントローラ通信モジュール19が当該コントローラ操作データを逐次受信し、受信されたコントローラ操作データが入出力プロセッサ11aによってメインメモリに逐次記憶される。送受信の間隔はゲームの処理時間よりも短い方が好ましく、例えば200分の1秒である。また、上記ステップS13で述べたように、端末操作データとカメラ画像データとマイク音データとがメインメモリに逐次記憶される。ステップS32においては、CPU10は、最新のコントローラ操作データ82および端末操作データ83をメインメモリから読み出す。ステップS32の次にステップS33の処理が実行される。
【0198】
ステップS33において、CPU10はゲーム制御処理を実行する。ゲーム制御処理は、上記各操作データを入力として用いて、ゲーム空間内のオブジェクトを動作させる処理等を実行し、ゲームを進行させる処理である。本実施形態においては、ゲーム制御処理の具体的な内容はどのようなものであってもよい。ステップS33の次にステップS34の処理が実行される。
【0199】
ステップS34において、テレビ2に表示するためのテレビ用ゲーム画像がCPU10およびGPU11bによって生成される。すなわち、CPU10およびGPU11bは、ステップS33のゲーム制御処理の結果を表すデータをメインメモリから読み出し、また、ゲーム画像を生成するために必要なデータをVRAM11dから読み出し、ゲーム画像を生成する。ゲーム画像は、ステップS33のゲーム制御処理の結果を表すものであればよく、どのような方法で生成されてもよい。例えば、ゲーム画像の生成方法は、仮想のゲーム空間内に仮想カメラを配置して、仮想カメラから見たゲーム空間を計算することによって3次元のCG画像を生成する方法であってもよいし、(仮想カメラを用いずに)2次元の画像を生成する方法であってもよい。生成されたテレビ用ゲーム画像はVRAM11dに記憶される。上記ステップS34の次にステップS35の処理が実行される。
【0200】
ステップS35において、端末装置7に表示するための端末用ゲーム画像がCPU10およびGPU11bによって生成される。端末用ゲーム画像も上記テレビ用ゲーム画像と同様、ステップS33のゲーム制御処理の結果を表すものであればよく、どのような方法で生成されてもよい。また、端末用ゲーム画像は、上記テレビ用ゲーム画像と同様の方法で生成されてもよいし、異なる方法で生成されてもよい。生成された端末用ゲーム画像はVRAM11dに記憶される。なお、ゲームの内容によってはテレビ用ゲーム画像と端末用ゲーム画像とは同一であってもよく、この場合、ステップS35においてゲーム画像の生成処理は実行されなくてもよい。上記ステップS35の次にステップS36の処理が実行される。
【0201】
ステップS36においては、テレビ2のスピーカ2aに出力するためのテレビ用ゲーム音声が生成される。すなわち、CPU10は、ステップS33のゲーム制御処理の結果に応じたゲーム音声をDSP11cに生成させる。なお、生成されるゲーム音声は、例えばゲームの効果音や、ゲームに登場するキャラクタの声や、BGM等であってもよい。上記ステップS36の次にステップS37の処理が実行される。
【0202】
ステップS37においては、端末装置7のスピーカ67に出力するための端末用ゲーム音声を生成するための音声生成指示が作成される。作成された音声生成指示は、音声生成指示データ95としてメインメモリに記憶される。なお、端末用ゲーム音声は、上記テレビ用ゲーム音声と同じであってもよいし、異なっていてもよい。また、例えば効果音は異なるが、BGMは同じである、というように、一部のみが異なっていてもよい。上記ステップS37の次にステップS38の処理が実行される。
【0203】
ステップS38において、CPU10は、テレビ2へゲーム画像およびゲーム音声を出力する。具体的には、CPU10は、VRAM11dに記憶された最新のテレビ用ゲーム画像のデータと、ステップS36でDSP11cによって生成されたテレビ用ゲーム音声のデータとをAV−IC15へ送る。これに応じて、AV−IC15は画像および音声のデータをAVコネクタ16を介してテレビ2へ出力する。これによって、テレビ2において行われる所定の映像処理の後、テレビ用ゲーム画像がテレビ2に表示されるとともに、テレビ用ゲーム音声がスピーカ2aから出力される。ステップS38の次にステップS39の処理が実行される。
【0204】
ステップS39において、CPU10は、各待機時間に応じたゲーム画像およびゲーム音声を端末装置7へ送信する。具体的には、CPU10は、ステップS35で生成されてVRAM11dに記憶されてから画像待機時間が経過した端末用ゲーム画像を端末装置7へ送信する。また、CPU10は、ステップS37で記憶されてから音声待機時間が経過した音声生成指示をDSP11cに送り、DSP11cに端末用ゲーム音声を生成させる。なお、画像待機時間および音声待機時間は、メインメモリに記憶されている画像待機時間データ93および音声待機時間データ94を参照することによって知ることができる。上記端末用ゲーム画像のデータおよび端末用ゲーム音声のデータは、コーデックLSI27に送られ、コーデックLSI27によって所定の圧縮処理が行われる。さらに、圧縮処理が施された画像および音声のデータは、端末通信モジュール28によってアンテナ29を介して端末装置7へ送信される。端末装置7は、ゲーム装置3から送信されてくる画像および音声のデータを無線モジュール70によって受信し、コーデックLSI66によって所定の伸張処理が行われる。伸張処理が行われた画像データはLCD51に出力され、伸張処理が行われた音声データはサウンドIC68に出力される。これによって、画像待機時間だけ遅れて端末用ゲーム画像がLCD51に表示されるとともに、音声待機時間だけ遅れて端末用ゲーム音声がスピーカ67から出力される。したがって、テレビ用ゲーム画像と端末用ゲーム画像との表示タイミングを同期させることができるとともに、テレビ用ゲーム音声と端末用ゲーム音声との出力タイミングを同期させることができる。ステップS39の次にステップS40の処理が実行される。
【0205】
ステップS40において、CPU10は、ゲームを終了するか否かを判定する。ステップS40の判定は、例えば、ゲームオーバーになったか否か、あるいは、ユーザがゲームを中止する指示を行ったか否か等によって行われる。ステップS40の判定結果が否定の場合、ステップS32の処理が再度実行される。一方、ステップS40の判定結果が肯定の場合、CPU10は図17に示すゲーム処理を終了する。以降、ステップS32〜S40の一連の処理は、ステップS40でゲームを終了すると判定されるまで繰り返し実行される。
【0206】
以上のように、上記ゲーム処理によれば、端末用ゲーム画像が端末装置7へ送信されるタイミングは、上記画像遅延測定処理で設定された画像待機時間だけ遅らされる。また、端末用ゲーム音声が端末装置7へ送信されるタイミングは、上記音声遅延測定処理で設定された音声待機時間だけ遅らされる。これによって、テレビ2と端末装置7との間でゲーム画像の表示およびゲーム音声の出力の同期をとることができる。
【0207】
なお、上記実施形態においては、端末用ゲーム画像の送信タイミングを遅らせるために、生成されたゲーム画像が一時記憶された(ステップS35)。ここで、他の実施形態においては、CPU10は、ゲーム画像自体ではなく、ゲーム画像を生成するために必要なデータを一時記憶してもよい。このとき、CPU10は、画像待機時間が経過した時点で端末用ゲーム画像を生成して送信する。また、他の実施形態においては、圧縮されたゲーム画像が一時記憶されてもよい。
【0208】
また、上記実施形態においては、端末用ゲーム音声の送信タイミングを遅らせるために、音声生成指示データが一時記憶された(ステップS36)。ここで、他の実施形態においては、CPU10は、ステップS36において音声データを生成し、音声データを一時記憶してもよい。さらに、他の実施形態においては、圧縮されたゲーム音声が一時記憶されてもよい。
【0209】
[7.変形例]
上記実施形態は本発明を実施する一例であり、他の実施形態においては例えば以下に説明する構成で本発明を実施することも可能である。
【0210】
(画像および音声に対する同期に関する変形例)
上記実施形態においては、ゲーム画像およびゲーム音声の両方について、テレビ2と端末装置7との間で同期をとるようにした。ここで、ゲームの内容によっては、ゲーム画像のみ同期をとれば十分である場合や、ゲーム音声のみ同期を取れば十分である場合がある。したがって、他の実施形態においては、ゲーム装置3は、ゲーム画像とゲーム音声のいずれか一方のみについて同期をとるようにしてもよい。
【0211】
(一方の遅延から他方の遅延を推測する変形例)
また、テレビ2の機種によっては、画面に表示される画像とスピーカ2aから出力される音声との間で同期をとることが可能な種類のものもある。このような種類のテレビが用いられる場合、ゲーム装置3は、画像遅延時間および音声遅延時間の一方のみを測定し、他方の遅延時間を、測定した遅延時間と同じ値として推測してもよい。すなわち、ゲーム装置3は、音声遅延時間を測定せず、画像遅延時間に基づいて音声待機時間(または音声遅延時間)を設定することで、端末用ゲーム音声が端末装置7へ出力されるタイミングを遅らせるようにしてもよい。また、ゲーム装置3は、画像遅延時間を測定せず、音声遅延時間に基づいて画像待機時間(または画像遅延時間)を設定することで、端末用ゲーム画像が端末装置7へ出力されるタイミングを遅らせるようにしてもよい。
【0212】
(テレビ画像とテレビ音声とを同期させる変形例)
また、上記実施形態においては、テレビ2と端末装置7との間の同期をとる目的で、テレビ2の画像遅延時間および音声遅延時間を測定した。ここで、他の実施形態においては、上記実施形態における遅延測定方法は、テレビ2と端末装置7との間の同期をとる用途に限らず、他の用途に用いることも可能である。例えば、テレビ2の機種によっては、画面に表示される画像とスピーカ2aから出力される音声との間で同期がとられておらず、対応する画像と音声が別のタイミングで出力されるテレビもある。このようなテレビが用いられる場合には、ゲーム装置3は、上記画像遅延時間および音声遅延時間を用いて、テレビ用ゲーム画像とテレビ用ゲーム音声との間の同期をとるようにしてもよい。
【0213】
図18は、本実施形態の変形例においてテレビ用ゲーム画像およびテレビ用ゲーム音声が出力される際の処理の流れを示す図である。図18においては、テレビ用ゲーム音声の出力タイミングに対してテレビ用ゲーム画像の表示タイミングが遅れる場合を例として、テレビ用ゲーム音声とテレビ用ゲーム画像との同期を取るための処理を説明する。
【0214】
図18においては、画像遅延時間T11は音声遅延時間T12よりも長い。そのため、仮にゲーム装置3からゲーム音声とゲーム画像とを同時に出力するとすれば、テレビ2においてゲーム音声とゲーム画像との出力(表示)タイミングはずれてしまう。ゲーム画像とゲーム音声とがずれることによって、プレイヤが違和感を抱くおそれがある。そこで、本変形例では、図18に示すように、ゲーム装置3は、画像遅延時間T11から音声遅延時間T12を引いた差の時間(差分時間と呼ぶ)を算出し、テレビ用ゲーム音声の出力タイミングを差分時間だけ遅らせる。これによって、テレビ用ゲーム画像の表示タイミングとテレビ用ゲーム音声の出力タイミングを合わせることができ、プレイヤが違和感を抱くことを防止することができる。
【0215】
図19は、図18に示す変形例におけるゲーム処理の流れを示すフローチャートである。なお、図19において、図17に示す処理と同じ処理については図17と同じステップ番号を付し、詳細な説明を省略する。
【0216】
図19においては、上記実施形態と同様にステップS31〜S35の処理が実行される。そして、ステップS37の次にステップS50の処理が実行される。ステップS50において、CPU10は、テレビ2のスピーカ2aに出力するためのテレビ用ゲーム音声を生成するための音声生成指示が作成される。作成された音声生成指示のデータはメインメモリに記憶される。上記ステップS50の次にステップS37の処理が実行される。
【0217】
また、本変形例においては、ステップS37の処理の次にステップS51の処理が実行される。ステップS51において、CPU10は、画像待機時間および音声待機時間に応じたゲーム画像およびゲーム音声をテレビ2へ送信する。具体的には、ゲーム画像に関しては、CPU10は、ステップS34で生成された最新のテレビ用ゲーム画像をテレビ2へ出力する。一方、ゲーム音声に関しては、CPU10は、ステップS50で記憶されてから上記差分時間が経過した音声生成指示をDSP11cに送り、DSP11cにテレビ用ゲーム音声を生成させる。これによって、テレビ2においては、画面に表示されるゲーム画像とスピーカ2aから出力されるゲーム音声との同期がとられることになる。なお、テレビ用ゲーム画像およびテレビ用ゲーム音声をゲーム装置3からテレビ2へ出力する際の処理は、上記実施形態と同様である。ステップS51の次にステップS39の処理が実行される。
【0218】
なお、本変形例におけるステップS39においては、CPU10は、上記実施形態と同様の処理を実行してもよいが、テレビ用ゲーム音声が遅れて出力されることに対応するべく、テレビ用ゲーム音声との同期をとるように端末用ゲーム音声の出力タイミングを調整してもよい。具体的には、CPU10は、ステップS37で記憶されてから画像待機時間(音声待機時間と差分時間との和)が経過した音声生成指示をDSP11cに送り、DSP11cに端末用ゲーム音声を生成させるようにしてもよい。これによれば、本変形例においてもテレビ用ゲーム音声と端末用ゲーム音声との同期をとることができる。
【0219】
なお、上記の変形例においては、テレビ用ゲーム音声の出力タイミングに対してテレビ用ゲーム画像の表示タイミングが遅れる場合を例として説明したが、テレビ用ゲーム画像の表示タイミングに対してテレビ用ゲーム音声の出力タイミングが遅れる場合も、上記の変形例に準じた処理で同期をとることができる。すなわち、テレビ用ゲーム画像の表示タイミングに対してテレビ用ゲーム音声の出力タイミングが遅れる場合、上記ステップS51において、CPU10は、ステップS35で生成されてVRAM11dに記憶されてから差分時間が経過したテレビ用ゲーム画像をテレビ2へ出力すればよい。このとき、ゲーム音声については、CPU10は、上記実施形態と同様、ステップS35の次のステップS36においてテレビ用ゲーム音声を生成し、ステップS51においてテレビ用ゲーム音声をテレビ2へ出力すればよい。以上のように、CPU10は、テレビ2に表示されるゲーム画像と、テレビ2のスピーカ2aに出力させるためのゲーム音声とが同期するように、当該ゲーム音声をゲーム装置3が出力するタイミングと、当該ゲーム画像をゲーム装置3が出力するタイミングとの少なくともいずれかを画像遅延時間および音声遅延時間に基づいて遅らせるようにしてもよい。
【0220】
また、上記の変形例においては、ゲーム装置3は、テレビ2におけるゲーム画像とゲーム音声との同期をとるだけでなく、テレビ2と端末装置7との間で同期をとるようにした。ここで、他の実施形態においては、テレビ2におけるゲーム画像とゲーム音声との同期をとり、テレビ2と端末装置7との間では同期をとらないようにしてもよい。つまり、本実施形態における遅延測定方法は、テレビ2におけるゲーム画像とゲーム音声との同期をとるのみの目的で用いられてもよい。
【0221】
(遅延測定方法の用途に関する変形例)
ゲームにおいては、ゲーム画像の表示やゲーム音声の出力に応じてシビアなタイミングでゲーム操作を行うことが要求されることがある。そのため、上記実施形態における遅延測定方法は、特にゲーム装置やゲームシステム、ゲームプログラム等、ゲーム用途に適用することが特に有効である。ただし、上記実施形態における遅延測定方法は、ゲーム用途に限らず、任意の画像および/または音声をテレビ2と端末装置7に表示(出力)させる場合に適用可能である。また、上記実施形態においては、入力された画像に対して画質向上等のための映像処理が行われる表示装置の例としてテレビ2を挙げて説明したが、上記実施形態における遅延測定方法は、当該映像処理を行う任意の表示装置に対して適用することができる。
【0222】
(遅延測定システムの構成に関する変形例)
上記実施形態においては、表示装置における表示遅延を測定するための遅延測定システムの例として、2つの表示装置(テレビ2および端末装置7)と、1つのゲーム装置3と、1つのコントローラ5とを含むゲームシステム1を挙げて説明した。ここで、ゲームシステム1は、ゲーム装置3および可搬型表示装置(端末装置7)を含んでいればよい。すなわち、テレビ2は汎用のものでよいので、ゲーム装置3および端末装置7とともにゲームシステム1として提供されなくてもよい。また、ゲームシステム1は、操作装置として複数のコントローラ5を含んでいてもよいし、コントローラ5を含まない構成であってもよい。
【0223】
また、他の実施形態においては、ゲーム装置は複数であってもよい。このとき、ゲームシステム1において実行される一連の情報処理は、特定の1つのゲーム装置によって実行されてもよいし、各ゲーム装置によって情報処理が分担されて実行されてもよい。また、各表示装置(テレビ2および端末装置7)は、特定の1つのゲーム装置と通信を行うようにしてもよいし、それぞれ別個のゲーム装置と通信を行うようにしてもよい。
【0224】
(ゲーム処理を実行する情報処理装置に関する変形例)
上記実施形態においては、ゲームシステム1において実行される一連の情報処理をゲーム装置3が実行したが、当該情報処理の一部は他の装置によって実行されてもよい。例えば、他の実施形態においては、ゲーム処理の一部(例えば、端末用ゲーム画像の生成処理)を端末装置7が実行するようにしてもよい。また、他の実施形態では、互いに通信可能な複数の情報処理装置を有するゲームシステムにおいて、当該複数の情報処理装置が上記情報処理を分担して実行するようにしてもよい。
【産業上の利用可能性】
【0225】
以上のように、本発明は、テレビ等の表示装置に画像や音声を出力する場合に生じる遅延を測定すること、あるいは、遅延により生じる問題を解消または低減すること等を目的として、例えばゲームシステムやゲーム装置、ゲームプログラム等として利用することが可能である。
【符号の説明】
【0226】
1 ゲームシステム
2 テレビ
2a スピーカ
3 ゲーム装置
4 光ディスク
5 コントローラ
6 マーカ装置
7 端末装置
10 CPU
11e 内部メインメモリ
12 外部メインメモリ
51 LCD
56 カメラ
67 スピーカ
69 マイク
【特許請求の範囲】
【請求項1】
ゲーム装置と、可搬型表示装置とを含むゲームシステムであって、
前記ゲーム装置は、
ゲーム処理に基づいて第1ゲーム画像および第2ゲーム画像を逐次生成する画像生成部と、
前記可搬型表示装置とは異なる所定の表示装置へ前記第1ゲーム画像を逐次出力する画像出力部と、
前記第2ゲーム画像を逐次圧縮して圧縮画像データを逐次生成する画像圧縮部と、
前記圧縮画像データを前記可搬型表示装置へ無線で逐次送信する画像送信部とを備え、
前記可搬型表示装置は、
撮像部と、
前記ゲーム装置から前記圧縮画像データを逐次受信する画像受信部と、
前記圧縮画像データを逐次伸張して前記第2ゲーム画像を得る画像伸張部と、
前記画像伸張部によって伸張された第2ゲーム画像を逐次表示する表示部と、
前記撮像部が撮像した撮像画像を圧縮した圧縮撮像データを前記ゲーム装置へ送信する撮像データ送信部とを備え、
前記ゲーム装置はさらに、
前記圧縮撮像データを受信して伸張して撮像画像を得る撮像データ受信部と、
前記撮像データ受信部によって伸張された撮像画像に所定の第1ゲーム画像が含まれるか否かを判定する画像判定部と、
撮像画像に所定の第1ゲーム画像が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、前記画像出力部が前記所定の第1ゲーム画像を出力したタイミングと、前記撮像部が当該撮像画像を撮像してから当該判定が行われるまでの処理時間とに基づいて、前記画像出力部が前記所定の第1ゲーム画像を出力してから前記所定の表示装置に当該所定の第1ゲーム画像が表示されるまでの画像遅延時間を算出する画像遅延算出部と、
前記画像遅延時間に基づいて、前記第2ゲーム画像が前記可搬型表示装置へ送信されるタイミングを遅らせる画像送信制御部とを備える、ゲームシステム。
【請求項2】
前記所定の表示装置はスピーカを備えており、
前記ゲーム装置はさらに、
前記ゲーム処理に基づいて第1ゲーム音声および第2ゲーム音声を生成する音声生成部と、
前記所定の表示装置へ前記第1ゲーム音声を出力する音声出力部と、
前記第2ゲーム音声を前記可搬型表示装置へ無線で送信する音声送信部とを備え、
前記可搬型表示装置は、
前記ゲーム装置から前記第2ゲーム音声を受信する音声受信部と、
前記第2ゲーム音声を出力するスピーカと、
マイクと、
前記マイクによる検出音を前記ゲーム装置へ送信する検出音送信部とを備え、
前記ゲーム装置はさらに、
前記検出音を受信する検出音受信部と、
前記検出音受信部によって受信された検出音に所定の第1ゲーム音声が含まれるか否かを判定する音判定部と、
検出音に前記所定の第1ゲーム音声が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、前記音声出力部が前記所定の第1ゲーム音声を出力したタイミングと、前記マイクが当該検出音を検出してから当該判定が行われるまでの処理時間とに基づいて、前記音声出力部が前記所定の第1ゲーム音声を出力してから前記所定の表示装置のスピーカによって当該第1ゲーム音声が出力されるまでの音声遅延時間を算出する音声遅延算出部と、
前記音声遅延時間に基づいて、前記第2ゲーム音声が前記可搬型表示装置へ送信されるタイミングを遅らせる音声送信制御部とを備える、請求項1に記載のゲームシステム。
【請求項3】
前記画像生成部は、前記可搬型表示装置の撮像部を前記所定の表示装置の画面の方へ向ける旨の通知を表す画像を前記第1ゲーム画像または前記第2ゲーム画像として生成し、前記所定の表示装置または前記可搬型表示装置に当該画像が表示された後で、前記所定の第1ゲーム画像を生成して前記所定の表示装置に表示させる、請求項1または請求項2に記載のゲームシステム。
【請求項4】
前記ゲーム装置はさらに、複数の第2ゲーム画像を記憶可能な記憶部を備え、
前記画像送信制御部は、前記画像生成部によって生成された第2ゲーム画像を前記記憶部に記憶し、生成から前記画像遅延時間に基づく待機時間が経過した第2ゲーム画像を前記画像送信部に送信させる、請求項1から請求項3のいずれか1項に記載のゲームシステム。
【請求項5】
前記画像送信制御部は、前記画像遅延時間と、前記第2ゲーム画像が生成されてから前記可搬型表示装置に表示されるまでの時間とに基づいて、前記第2ゲーム画像を前記可搬型表示装置へ送信するまでの待機時間を算出する、請求項1から請求項4に記載のゲームシステム。
【請求項6】
ゲーム装置と、可搬型表示装置とを含むゲームシステムであって、
前記ゲーム装置は、
ゲーム処理に基づいて第1ゲーム音声および第2ゲーム音声を生成する音声生成部と、
スピーカを備える表示装置であって、前記可搬型表示装置とは異なる所定の表示装置へ前記第1ゲーム音声を出力する音声出力部と、
前記第2ゲーム音声を前記可搬型表示装置へ無線で送信する音声送信部とを備え、
前記可搬型表示装置は、
マイクと、
前記ゲーム装置から前記第2ゲーム音声を受信する音声受信部と、
前記第2ゲーム音声を出力するスピーカと、
前記マイクによる検出音を前記ゲーム装置へ送信する検出音送信部とを備え、
前記ゲーム装置はさらに、
前記検出音を受信する検出音受信部と、
前記検出音受信部によって受信された検出音に所定の第1ゲーム音声が含まれるか否かを判定する音判定部と、
検出音に前記所定の第1ゲーム音声が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、前記音声出力部が前記所定の第1ゲーム音声を出力したタイミングと、前記マイクが当該検出音を検出してから当該判定が行われるまでの処理時間とに基づいて、前記音声出力部が前記所定の第1ゲーム音声を出力してから前記所定の表示装置のスピーカによって当該第1ゲーム音声が出力されるまでの音声遅延時間を算出する遅延算出部と、
前記音声遅延時間に基づいて、前記第2ゲーム音声が前記可搬型表示装置へ送信されるタイミングを遅らせる音声送信制御部とを備える、ゲームシステム。
【請求項7】
入力された画像に対して所定の映像処理を行ってから当該画像を表示する所定の表示装置の表示遅延を測定する遅延測定システムであって、
前記所定の表示装置と通信可能な情報処理装置と、当該情報処理装置と無線通信可能な可搬型の端末装置とを含み、
前記情報処理装置は、
所定の画像を生成する画像生成部と、
前記所定の表示装置へ前記所定の画像を出力する第1画像出力部とを備え、
前記端末装置は、
撮像部と、
前記撮像部が撮像した撮像画像を送信する撮像画像送信部とを備え、
前記情報処理装置はさらに、
前記撮像画像を受信する撮像画像受信部と、
前記撮像画像に前記所定の画像が含まれるか否かを判定する画像判定部と、
撮像画像に前記所定の画像が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、前記第1画像出力部が前記所定の画像を出力したタイミングと、前記撮像部が当該撮像画像を撮像してから当該判定が行われるまでの処理時間とに基づいて、前記第1画像出力部が前記所定の画像を出力してから前記所定の表示装置に当該所定の画像が表示されるまでの画像遅延時間を算出する画像遅延算出部とを備える、遅延測定システム。
【請求項8】
前記画像生成部は、前記所定の表示装置に表示するための第1画像と、前記端末装置に表示するための第2画像とを逐次生成し、
前記第1画像出力部は、前記所定の表示装置へ前記第1画像を逐次出力し、
前記情報処理装置はさらに、
前記第2画像を前記端末装置へ逐次出力する第2画像出力部とを備え、
前記端末装置はさらに、
前記情報処理装置から前記第2画像を逐次受信する画像受信部と、
前記受信された第2画像を逐次表示する表示部とを備え、
前記情報処理装置は、前記画像遅延時間に基づいて、前記第2画像が前記端末装置へ出力されるタイミングを遅らせる画像出力制御部をさらに備える、請求項7に記載の遅延測定システム。
【請求項9】
前記情報処理装置はさらに、
前記所定の表示装置に出力するための第1音声と、前記端末装置に出力するための第2音声とを生成する音声生成部と、
前記所定の表示装置へ前記第1音声を出力する第1音声出力部と、
前記端末装置へ前記第2音声を出力する第2音声出力部とを備え、
前記端末装置はさらに、
前記情報処理装置から前記第2音声を受信する音声受信部と、
前記第2音声を出力するスピーカとを備え、
前記情報処理装置は、前記画像遅延時間に基づいて、前記第2音声が前記端末装置へ出力されるタイミングを遅らせる音声出力制御部をさらに備える、請求項8に記載の遅延測定システム。
【請求項10】
前記所定の表示装置はスピーカを備えており、
前記情報処理装置はさらに、
所定の音を生成する音声生成部と、
前記所定の表示装置へ前記所定の音を出力する音声出力部とを備え、
前記端末装置は、
マイクと、
前記マイクによる検出音を前記情報処理装置へ送信する検出音送信部とを備え、
前記情報処理装置はさらに、
前記検出音を受信する検出音受信部と、
前記検出音受信部によって受信された検出音に前記所定の音が含まれるか否かを判定する音判定部と、
検出音に前記所定の音が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、前記音声出力部が前記所定の音を出力したタイミングと、前記マイクが当該検出音を検出してから当該判定が行われるまでの処理時間とに基づいて、前記音声出力部が前記所定の音を出力してから前記所定の表示装置のスピーカによって当該所定の音が出力されるまでの音声遅延時間を算出する音声遅延算出部と、
前記所定の表示装置に表示される画像と、当該所定の表示装置のスピーカに出力させるための音とが同期するように、当該音を前記音声出力部が出力するタイミングと、当該画像を前記第1画像出力部が出力するタイミングとの少なくともいずれかを前記画像遅延時間および前記音声遅延時間に基づいて遅らせる出力制御部とを備える、請求項7に記載の遅延測定システム。
【請求項11】
所定の表示装置が備えるスピーカの音声出力遅延を測定する遅延測定システムであって、
前記所定の表示装置と通信可能な情報処理装置と、当該情報処理装置と無線通信可能な可搬型の端末装置とを含み、
前記情報処理装置は、
所定の音を生成する音声生成部と、
前記所定の表示装置へ前記所定の音を出力する第1音声出力部とを備え、
前記端末装置は、
マイクと、
前記マイクによる検出音を前記情報処理装置へ送信する検出音送信部とを備え、
前記情報処理装置はさらに、
前記検出音を受信する検出音受信部と、
前記検出音受信部によって受信された検出音に前記所定の音が含まれるか否かを判定する音判定部と、
検出音に前記所定の音が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、前記音声出力部が前記所定の音を出力したタイミングと、前記マイクが当該検出音を検出してから当該判定が行われるまでの処理時間とに基づいて、前記音声出力部が前記所定の音を出力してから前記所定の表示装置のスピーカによって当該所定の音が出力されるまでの音声遅延時間を算出する音声遅延算出部とを備える、遅延測定システム。
【請求項12】
前記音声生成部は、前記所定の表示装置に出力するための第1音声と、前記端末装置に出力するための第2音声とを生成し、
前記第1音声出力部は、前記所定の表示装置へ前記第1音声を出力し、
前記情報処理装置はさらに、
前記第2音声を前記端末装置へ出力する第2音声出力部とを備え、
前記端末装置はさらに、
前記情報処理装置から前記第2音声を受信する音声受信部と、
前記受信された第2音声を出力するスピーカとを備え、
前記情報処理装置は、前記音声遅延時間に基づいて、前記第2音声が前記端末装置へ出力されるタイミングを遅らせる音声出力制御部をさらに備える、請求項11に記載の遅延測定システム。
【請求項13】
前記情報処理装置はさらに、
前記所定の表示装置に表示するための第1画像と、前記端末装置に表示するための第2画像とを逐次生成する画像生成部と、
前記所定の表示装置へ前記第1画像を逐次出力する第1画像出力部と、
前記端末装置へ前記第2画像を逐次出力する第2画像出力部とを備え、
前記端末装置はさらに、
前記情報処理装置から前記第2画像を逐次受信する画像受信部と、
前記受信された第2画像を逐次表示する表示部とを備え、
前記情報処理装置は、前記画像遅延時間に基づいて、前記第2画像が前記端末装置へ出力されるタイミングを遅らせる画像出力制御部をさらに備える、請求項12に記載の遅延測定システム。
【請求項14】
ゲーム装置と、撮像部を備える可搬型表示装置とを含むゲームシステムにおいて実行される画像表示方法であって、
前記ゲーム装置は、
所定のテスト画像を生成するテスト画像生成ステップと、
前記可搬型表示装置とは異なる所定の表示装置へ前記テスト画像を出力するテスト画像出力ステップとを実行し、
前記可搬型表示装置は、
前記所定の表示装置の画面を前記撮像部によって撮像する撮像ステップと、
前記撮像部が撮像した撮像画像を圧縮した圧縮撮像データを前記ゲーム装置へ送信する撮像データ送信ステップとを実行し、
前記ゲーム装置はさらに、
前記圧縮撮像データを受信して伸張して撮像画像を得る撮像データ受信ステップと、
前記撮像データ受信ステップにおいて伸張された撮像画像に前記テスト画像が含まれるか否かを判定する画像判定ステップと、
撮像画像に前記テスト画像が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、前記テスト画像出力ステップにおいて前記テスト画像を出力したタイミングと、前記撮像部が当該撮像画像を撮像してから当該判定が行われるまでの処理時間とに基づいて、前記テスト画像出力ステップにおいて前記テスト画像を出力してから前記所定の表示装置に当該テスト画像が表示されるまでの画像遅延時間を算出する画像遅延算出ステップと、
ゲーム処理に基づいて第1ゲーム画像および第2ゲーム画像を逐次生成するゲーム画像生成ステップと、
前記可搬型表示装置とは異なる所定の表示装置へ前記第1ゲーム画像を逐次出力するゲーム画像出力ステップと、
前記画像遅延時間に基づいて、前記第2ゲーム画像が前記可搬型表示装置へ送信されるタイミングを遅らせる画像送信制御ステップと、
前記第2ゲーム画像を逐次圧縮して圧縮画像データを逐次生成する画像圧縮ステップと、
前記圧縮画像データを前記可搬型表示装置へ無線で逐次送信する画像送信ステップとを実行し、
前記可搬型表示装置はさらに、
前記ゲーム装置から前記圧縮画像データを逐次受信する画像受信ステップと、
前記圧縮画像データを逐次伸張して前記第2ゲーム画像を得る画像伸張ステップと、
前記画像伸張ステップにおいて伸張された第2ゲーム画像を逐次表示する表示ステップとを実行する、画像表示方法。
【請求項15】
前記所定の表示装置はスピーカを備えており、
前記ゲーム装置はさらに、
所定のテスト音声を生成するテスト音声生成ステップと、
前記所定の表示装置へ前記テスト音声を出力するテスト音声出力ステップとを実行し、
前記可搬型表示装置は、
マイクによって音を検出する音検出ステップと、
前記マイクによる検出音を前記ゲーム装置へ送信する検出音送信ステップとを実行し、
前記ゲーム装置はさらに、
前記検出音を受信する検出音受信ステップと、
前記検出音受信ステップにおいて受信された検出音に前記テスト音声が含まれるか否かを判定する音判定ステップと、
検出音に前記テスト音声が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、前記テスト音声出力ステップにおいて前記テスト音声を出力したタイミングと、前記音検出ステップにおいて当該検出音を検出してから当該判定が行われるまでの処理時間とに基づいて、前記テスト音声出力ステップにおいて前記テスト音声を出力してから前記所定の表示装置のスピーカによって当該テスト音声が出力されるまでの音声遅延時間を算出する音声遅延算出ステップと、
前記ゲーム処理に基づいて第1ゲーム音声および第2ゲーム音声を生成するゲーム音声生成ステップと、
前記所定の表示装置へ前記第1ゲーム音声を出力する第1ゲーム音声出力ステップと、
前記音声遅延時間に基づいて、前記第2ゲーム音声が前記可搬型表示装置へ送信されるタイミングを遅らせる音声送信制御ステップと、
前記第2ゲーム音声を前記可搬型表示装置へ無線で送信する音声送信ステップとを実行し、
前記可搬型表示装置は、
前記ゲーム装置から前記第2ゲーム音声を受信する音声受信ステップと、
前記第2ゲーム音声をスピーカから出力する第2音声出力ステップとを実行する、請求項14に記載の画像表示方法。
【請求項16】
前記テスト画像生成ステップにおいて、前記ゲーム装置は、前記可搬型表示装置の撮像部を前記所定の表示装置の画面の方へ向ける旨の通知を表す画像を生成し、前記所定の表示装置または前記可搬型表示装置に当該画像が表示された後で、前記テスト画像を生成して前記所定の表示装置に表示させる、請求項14または請求項15に記載の画像表示方法。
【請求項17】
前記ゲーム装置は、複数の第2ゲーム画像を記憶可能な記憶部を備え、
前記画像送信制御ステップにおいて、前記ゲーム装置は、前記ゲーム画像生成ステップにおいて生成された第2ゲーム画像を前記記憶部に記憶し、
前記画像送信ステップにおいて、前記ゲーム装置は、生成から前記画像遅延時間に基づく待機時間が経過した第2ゲーム画像を送信させる、請求項14から請求項16のいずれか1項に記載の画像表示方法。
【請求項18】
前記画像送信制御ステップにおいて、前記ゲーム装置は、前記画像遅延時間と、前記第2ゲーム画像が生成されてから前記可搬型表示装置に表示されるまでの時間とに基づいて、前記第2ゲーム画像を前記可搬型表示装置へ送信するまでの待機時間を算出する、請求項14から請求項17に記載の画像表示方法。
【請求項19】
ゲーム装置と、可搬型表示装置とを含むゲームシステムにおいて実行される音声出力方法であって、
前記ゲーム装置は、
所定のテスト音声を生成するテスト音声生成ステップと、
スピーカを備える表示装置であって、前記可搬型表示装置とは異なる所定の表示装置へ前記テスト音声を出力するテスト音声出力ステップとを実行し、
前記可搬型表示装置は、
マイクによって音を検出する音検出ステップと、
前記マイクによる検出音を前記ゲーム装置へ送信する検出音送信ステップとを実行し、
前記ゲーム装置はさらに、
前記検出音を受信する検出音受信ステップと、
前記検出音受信ステップにおいて受信された検出音に前記テスト音声が含まれるか否かを判定する音判定ステップと、
検出音に前記テスト音声が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、前記テスト音声出力ステップにおいて前記テスト音声を出力したタイミングと、前記音検出ステップにおいて当該検出音を検出してから当該判定が行われるまでの処理時間とに基づいて、前記テスト音声出力ステップにおいて前記テスト音声を出力してから前記所定の表示装置のスピーカによって当該テスト音声が出力されるまでの音声遅延時間を算出する音声遅延算出ステップと、
前記ゲーム処理に基づいて第1ゲーム音声および第2ゲーム音声を生成するゲーム音声生成ステップと、
前記所定の表示装置へ前記第1ゲーム音声を出力する第1ゲーム音声出力ステップと、
前記音声遅延時間に基づいて、前記第2ゲーム音声が前記可搬型表示装置へ送信されるタイミングを遅らせる音声送信制御ステップと、
前記第2ゲーム音声を前記可搬型表示装置へ無線で送信する音声送信ステップとを実行し、
前記可搬型表示装置は、
前記ゲーム装置から前記第2ゲーム音声を受信する音声受信ステップと、
前記第2ゲーム音声をスピーカから出力する第2音声出力ステップとを実行する、音声出力方法。
【請求項20】
入力された画像に対して所定の映像処理を行ってから当該画像を表示する所定の表示装置の表示遅延を測定する遅延測定方法であって、
前記所定の表示装置と通信可能な情報処理装置は、
所定のテスト画像を生成する第1画像生成ステップと、
前記所定の表示装置へ前記テスト画像を出力する第1画像出力ステップとを実行し、
前記情報処理装置と無線通信可能な可搬型の端末装置は、
前記所定の表示装置の画面を撮像部によって撮像する撮像ステップと、
前記撮像部が撮像した撮像画像を送信する撮像画像送信ステップとを実行し、
前記情報処理装置はさらに、
前記撮像画像を受信する撮像画像受信ステップと、
前記撮像画像に前記テスト画像が含まれるか否かを判定する画像判定ステップと、
撮像画像に前記テスト画像が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、前記第1画像出力ステップが前記テスト画像を出力したタイミングと、前記撮像部が当該撮像画像を撮像してから当該判定が行われるまでの処理時間とに基づいて、前記第1画像出力ステップが前記テスト画像を出力してから前記所定の表示装置に当該テスト画像が表示されるまでの画像遅延時間を算出する画像遅延算出ステップとを実行する、遅延測定方法。
【請求項21】
前記情報処理装置は、
前記所定の表示装置に表示するための第1画像と、前記端末装置に表示するための第2画像とを逐次生成する第2画像生成ステップと、
前記所定の表示装置へ前記第1画像を逐次出力する第2画像出力ステップと、
前記画像遅延時間に基づいて、前記第2画像が前記端末装置へ出力されるタイミングを遅らせる画像出力制御ステップと、
前記第2画像を前記端末装置へ逐次出力する第3画像出力ステップとを実行し、
前記端末装置はさらに、
前記情報処理装置から前記第2画像を逐次受信する画像受信ステップと、
前記受信された第2画像を逐次表示する表示ステップとを実行する、請求項20に記載の遅延測定方法。
【請求項22】
前記情報処理装置はさらに、
前記所定の表示装置に出力するための第1音声と、前記端末装置に出力するための第2音声とを生成する音声生成ステップと、
前記所定の表示装置へ前記第1音声を出力する第1音声出力ステップと、
前記画像遅延時間に基づいて、前記第2音声が前記端末装置へ出力されるタイミングを遅らせる音声出力制御ステップと、
前記端末装置へ前記第2音声を出力する第2音声出力ステップとを実行し、
前記端末装置はさらに、
前記情報処理装置から前記第2音声を受信する音声受信ステップと、
前記第2音声をスピーカから出力する発音ステップとを実行する、請求項21に記載の遅延測定方法。
【請求項23】
前記所定の表示装置はスピーカを備えており、
前記情報処理装置はさらに、
所定のテスト音声を生成するテスト音声生成ステップと、
前記所定の表示装置へ前記テスト音声を出力するテスト音声出力ステップとを実行し、
前記端末装置は、
マイクによって音を検出する音検出ステップと、
前記マイクによる検出音を前記情報処理装置へ送信する検出音送信ステップとを実行し、
前記情報処理装置はさらに、
前記検出音を受信する検出音受信ステップと、
前記検出音受信ステップにおいて受信された検出音に前記テスト音声が含まれるか否かを判定する音判定ステップと、
検出音に前記テスト音声が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、前記テスト音声出力ステップにおいて前記テスト音声を出力したタイミングと、前記音検出ステップにおいて当該検出音を検出してから当該判定が行われるまでの処理時間とに基づいて、前記テスト音声出力ステップにおいて前記テスト音声を出力してから前記所定の表示装置のスピーカによって当該テスト音声が出力されるまでの音声遅延時間を算出する音声遅延算出ステップと、
前記所定の表示装置に表示される画像と、当該所定の表示装置のスピーカに出力させるための音とが同期するように、当該音を当該スピーカが出力するタイミングと、当該画像を前記表示装置が出力するタイミングとの少なくともいずれかを前記画像遅延時間および前記音声遅延時間に基づいて遅らせる出力制御ステップとを実行する、請求項20に記載の遅延測定方法。
【請求項24】
所定の表示装置が備えるスピーカの音声出力遅延を測定する遅延測定方法であって、
前記所定の表示装置と通信可能な情報処理装置は、
所定のテスト音声を生成する第1音声生成ステップと、
前記所定の表示装置へ前記所定の音を出力する第1音声出力ステップとを実行し、
前記情報処理装置と無線通信可能な可搬型の端末装置は、
マイクによって音を検出する音検出ステップと、
前記マイクによる検出音を前記情報処理装置へ送信する検出音送信ステップとを実行し、
前記情報処理装置はさらに、
前記検出音を受信する検出音受信ステップと、
前記検出音受信ステップにおいて受信された検出音に前記テスト音声が含まれるか否かを判定する音判定ステップと、
検出音に前記テスト音声が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、前記第1音声出力ステップにおいて前記テスト音声を出力したタイミングと、前記音検出ステップにおいて当該検出音を検出してから当該判定が行われるまでの処理時間とに基づいて、前記第1音声出力ステップにおいて前記テスト音声を出力してから前記所定の表示装置のスピーカによって当該テスト音声が出力されるまでの音声遅延時間を算出する音声遅延算出ステップとを実行する、遅延測定方法。
【請求項25】
前記情報処理装置はさらに、
前記所定の表示装置に出力するための第1音声と、前記端末装置に出力するための第2音声とを生成する第2音声生成ステップと、
前記所定の表示装置へ前記第1音声を出力する第2音声出力ステップと、
前記音声遅延時間に基づいて、前記第2音声が前記端末装置へ出力されるタイミングを遅らせる音声出力制御ステップと、
前記第2音声を前記端末装置へ出力する第3音声出力ステップとを実行し、
前記端末装置はさらに、
前記情報処理装置から前記第2音声を受信する音声受信ステップと、
前記受信された第2音声をスピーカから出力する発音ステップとを実行する、請求項24に記載の遅延測定方法。
【請求項26】
前記情報処理装置はさらに、
前記所定の表示装置に表示するための第1画像と、前記端末装置に表示するための第2画像とを逐次生成する画像生成ステップと、
前記所定の表示装置へ前記第1画像を逐次出力する第1画像出力ステップと、
前記画像遅延時間に基づいて、前記第2画像が前記端末装置へ出力されるタイミングを遅らせる画像出力制御ステップと、
前記端末装置へ前記第2画像を逐次出力する第2画像出力ステップとを実行し、
前記端末装置はさらに、
前記情報処理装置から前記第2画像を逐次受信する画像受信ステップと、
前記受信された第2画像を逐次表示する表示ステップとを実行する、請求項25に記載の遅延測定方法。
【請求項27】
可搬型表示装置と通信可能なゲーム装置であって、
ゲーム処理に基づいて第1ゲーム画像および第2ゲーム画像を逐次生成する画像生成部と、
前記可搬型表示装置とは異なる所定の表示装置へ前記第1ゲーム画像を逐次出力する画像出力部と、
前記第2ゲーム画像を逐次圧縮して圧縮画像データを逐次生成する画像圧縮部と、
前記圧縮画像データを前記可搬型表示装置へ無線で逐次送信する画像送信部と、
前記可搬型表示装置の撮像部が撮像した撮像画像を圧縮した圧縮撮像データを前記可搬型表示装置から受信し、受信した圧縮画像データを伸張して撮像画像を得る撮像データ受信部と、
前記撮像データ受信部によって伸張された撮像画像に所定の第1ゲーム画像が含まれるか否かを判定する画像判定部と、
撮像画像に所定の第1ゲーム画像が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、前記画像出力部が前記所定の第1ゲーム画像を出力したタイミングと、前記撮像部が当該撮像画像を撮像してから当該判定が行われるまでの処理時間とに基づいて、前記画像出力部が前記所定の第1ゲーム画像を出力してから前記所定の表示装置に当該所定の第1ゲーム画像が表示されるまでの画像遅延時間を算出する画像遅延算出部と、
前記画像遅延時間に基づいて、前記第2ゲーム画像が前記可搬型表示装置へ送信されるタイミングを遅らせる画像送信制御部とを備える、ゲーム装置。
【請求項28】
可搬型表示装置と通信可能なゲーム装置であって、
ゲーム処理に基づいて第1ゲーム音声および第2ゲーム音声を生成する音声生成部と、
スピーカを備える表示装置であって、前記可搬型表示装置とは異なる所定の表示装置へ前記第1ゲーム音声を出力する音声出力部と、
前記第2ゲーム音声を前記可搬型表示装置へ無線で送信する音声送信部と、
前記可搬型表示装置のマイクによる検出音を前記可搬型表示装置から受信する検出音受信部と、
前記検出音受信部によって受信された検出音に所定の第1ゲーム音声が含まれるか否かを判定する音判定部と、
検出音に前記所定の第1ゲーム音声が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、前記音声出力部が前記所定の第1ゲーム音声を出力したタイミングと、前記マイクが当該検出音を検出してから当該判定が行われるまでの処理時間とに基づいて、前記音声出力部が前記所定の第1ゲーム音声を出力してから前記所定の表示装置のスピーカによって当該第1ゲーム音声が出力されるまでの音声遅延時間を算出する遅延算出部と、
前記音声遅延時間に基づいて、前記第2ゲーム音声が前記可搬型表示装置へ送信されるタイミングを遅らせる音声送信制御部とを備える、ゲーム装置。
【請求項29】
入力された画像に対して所定の映像処理を行ってから当該画像を表示する所定の表示装置の表示遅延を測定する遅延測定システムにおいて用いられる情報処理装置であって、
所定の画像を生成する画像生成部と、
前記所定の表示装置へ前記所定の画像を出力する第1画像出力部と、
前記情報処理装置と無線通信可能な可搬型の端末装置の撮像部が撮像した撮像画像を受信する撮像画像受信部と、
前記撮像画像に前記所定の画像が含まれるか否かを判定する画像判定部と、
撮像画像に前記所定の画像が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、前記第1画像出力部が前記所定の画像を出力したタイミングと、前記撮像部が当該撮像画像を撮像してから当該判定が行われるまでの処理時間とに基づいて、前記第1画像出力部が前記所定の画像を出力してから前記所定の表示装置に当該所定の画像が表示されるまでの画像遅延時間を算出する画像遅延算出部とを備える、情報処理装置。
【請求項30】
所定の表示装置が備えるスピーカの音声出力遅延を測定する遅延測定システムにおいて用いられる情報処理装置であって、
所定の音を生成する音声生成部と、
前記所定の表示装置へ前記所定の音を出力する第1音声出力部とを備え、
前記情報処理装置と無線通信可能な可搬型の端末装置のマイクによる検出音を前記端末装置から受信する検出音受信部と、
前記検出音受信部によって受信された検出音に前記所定の音が含まれるか否かを判定する音判定部と、
検出音に前記所定の音が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、前記音声出力部が前記所定の音を出力したタイミングと、前記マイクが当該検出音を検出してから当該判定が行われるまでの処理時間とに基づいて、前記音声出力部が前記所定の音を出力してから前記所定の表示装置のスピーカによって当該所定の音が出力されるまでの音声遅延時間を算出する音声遅延算出部とを備える、情報処理装置。
【請求項31】
可搬型表示装置と通信可能なゲーム装置のコンピュータにおいて実行されるゲームプログラムであって、
ゲーム処理に基づいて第1ゲーム画像および第2ゲーム画像を逐次生成する画像生成手段と、
前記可搬型表示装置とは異なる所定の表示装置へ前記第1ゲーム画像を逐次出力する画像出力手段と、
前記第2ゲーム画像を前記可搬型表示装置へ無線で逐次送信する画像送信手段と、
前記可搬型表示装置の撮像部が撮像した撮像画像を前記可搬型表示装置から受信する撮像データ受信手段と、
前記撮像データ受信手段によって受信された撮像画像に所定の第1ゲーム画像が含まれるか否かを判定する画像判定手段と、
撮像画像に所定の第1ゲーム画像が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、前記画像出力手段が前記所定の第1ゲーム画像を出力したタイミングと、前記撮像部が当該撮像画像を撮像してから当該判定が行われるまでの処理時間とに基づいて、前記画像出力手段が前記所定の第1ゲーム画像を出力してから前記所定の表示装置に当該所定の第1ゲーム画像が表示されるまでの画像遅延時間を算出する画像遅延算出手段と、
前記画像遅延時間に基づいて、前記第2ゲーム画像が前記可搬型表示装置へ送信されるタイミングを遅らせる画像送信制御手段として前記コンピュータを機能させる、ゲームプログラム。
【請求項32】
可搬型表示装置と通信可能なゲーム装置のコンピュータにおいて実行されるゲームプログラムであって、
ゲーム処理に基づいて第1ゲーム音声および第2ゲーム音声を生成する音声生成手段と、
スピーカを備える表示装置であって、前記可搬型表示装置とは異なる所定の表示装置へ前記第1ゲーム音声を出力する音声出力手段と、
前記第2ゲーム音声を前記可搬型表示装置へ無線で送信する音声送信手段と、
前記可搬型表示装置のマイクによる検出音を前記可搬型表示装置から受信する検出音受信手段と、
前記検出音受信手段によって受信された検出音に所定の第1ゲーム音声が含まれるか否かを判定する音判定手段と、
検出音に前記所定の第1ゲーム音声が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、前記音声出力手段が前記所定の第1ゲーム音声を出力したタイミングと、前記マイクが当該検出音を検出してから当該判定が行われるまでの処理時間とに基づいて、前記音声出力手段が前記所定の第1ゲーム音声を出力してから前記所定の表示装置のスピーカによって当該第1ゲーム音声が出力されるまでの音声遅延時間を算出する遅延算出手段と、
前記音声遅延時間に基づいて、前記第2ゲーム音声が前記可搬型表示装置へ送信されるタイミングを遅らせる音声送信制御手段として前記コンピュータを機能させる、ゲームプログラム。
【請求項33】
入力された画像に対して所定の映像処理を行ってから当該画像を表示する所定の表示装置の表示遅延を測定する遅延測定システムにおいて用いられる情報処理装置のコンピュータにおいて実行される情報処理プログラムであって、
所定の画像を生成する画像生成手段と、
前記所定の表示装置へ前記所定の画像を出力する第1画像出力手段と、
前記情報処理装置と無線通信可能な可搬型の端末装置の撮像部が撮像した撮像画像を受信する撮像画像受信手段と、
前記撮像画像に前記所定の画像が含まれるか否かを判定する画像判定手段と、
撮像画像に前記所定の画像が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、前記第1画像出力手段が前記所定の画像を出力したタイミングと、前記撮像部が当該撮像画像を撮像してから当該判定が行われるまでの処理時間とに基づいて、前記第1画像出力手段が前記所定の画像を出力してから前記所定の表示装置に当該所定の画像が表示されるまでの画像遅延時間を算出する画像遅延算出手段として前記コンピュータを機能させる、情報処理プログラム。
【請求項34】
所定の表示装置が備えるスピーカの音声出力遅延を測定する遅延測定システムにおいて用いられる情報処理装置のコンピュータにおいて実行される情報処理プログラムであって、
所定の音を生成する音声生成手段と、
前記所定の表示装置へ前記所定の音を出力する第1音声出力手段とを備え、
前記情報処理装置と無線通信可能な可搬型の端末装置のマイクによる検出音を前記端末装置から受信する検出音受信手段と、
前記検出音受信手段によって受信された検出音に前記所定の音が含まれるか否かを判定する音判定手段と、
検出音に前記所定の音が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、前記音声出力手段が前記所定の音を出力したタイミングと、前記マイクが当該検出音を検出してから当該判定が行われるまでの処理時間とに基づいて、前記音声出力手段が前記所定の音を出力してから前記所定の表示装置のスピーカによって当該所定の音が出力されるまでの音声遅延時間を算出する音声遅延算出手段として前記コンピュータを機能させる、情報処理プログラム。
【請求項1】
ゲーム装置と、可搬型表示装置とを含むゲームシステムであって、
前記ゲーム装置は、
ゲーム処理に基づいて第1ゲーム画像および第2ゲーム画像を逐次生成する画像生成部と、
前記可搬型表示装置とは異なる所定の表示装置へ前記第1ゲーム画像を逐次出力する画像出力部と、
前記第2ゲーム画像を逐次圧縮して圧縮画像データを逐次生成する画像圧縮部と、
前記圧縮画像データを前記可搬型表示装置へ無線で逐次送信する画像送信部とを備え、
前記可搬型表示装置は、
撮像部と、
前記ゲーム装置から前記圧縮画像データを逐次受信する画像受信部と、
前記圧縮画像データを逐次伸張して前記第2ゲーム画像を得る画像伸張部と、
前記画像伸張部によって伸張された第2ゲーム画像を逐次表示する表示部と、
前記撮像部が撮像した撮像画像を圧縮した圧縮撮像データを前記ゲーム装置へ送信する撮像データ送信部とを備え、
前記ゲーム装置はさらに、
前記圧縮撮像データを受信して伸張して撮像画像を得る撮像データ受信部と、
前記撮像データ受信部によって伸張された撮像画像に所定の第1ゲーム画像が含まれるか否かを判定する画像判定部と、
撮像画像に所定の第1ゲーム画像が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、前記画像出力部が前記所定の第1ゲーム画像を出力したタイミングと、前記撮像部が当該撮像画像を撮像してから当該判定が行われるまでの処理時間とに基づいて、前記画像出力部が前記所定の第1ゲーム画像を出力してから前記所定の表示装置に当該所定の第1ゲーム画像が表示されるまでの画像遅延時間を算出する画像遅延算出部と、
前記画像遅延時間に基づいて、前記第2ゲーム画像が前記可搬型表示装置へ送信されるタイミングを遅らせる画像送信制御部とを備える、ゲームシステム。
【請求項2】
前記所定の表示装置はスピーカを備えており、
前記ゲーム装置はさらに、
前記ゲーム処理に基づいて第1ゲーム音声および第2ゲーム音声を生成する音声生成部と、
前記所定の表示装置へ前記第1ゲーム音声を出力する音声出力部と、
前記第2ゲーム音声を前記可搬型表示装置へ無線で送信する音声送信部とを備え、
前記可搬型表示装置は、
前記ゲーム装置から前記第2ゲーム音声を受信する音声受信部と、
前記第2ゲーム音声を出力するスピーカと、
マイクと、
前記マイクによる検出音を前記ゲーム装置へ送信する検出音送信部とを備え、
前記ゲーム装置はさらに、
前記検出音を受信する検出音受信部と、
前記検出音受信部によって受信された検出音に所定の第1ゲーム音声が含まれるか否かを判定する音判定部と、
検出音に前記所定の第1ゲーム音声が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、前記音声出力部が前記所定の第1ゲーム音声を出力したタイミングと、前記マイクが当該検出音を検出してから当該判定が行われるまでの処理時間とに基づいて、前記音声出力部が前記所定の第1ゲーム音声を出力してから前記所定の表示装置のスピーカによって当該第1ゲーム音声が出力されるまでの音声遅延時間を算出する音声遅延算出部と、
前記音声遅延時間に基づいて、前記第2ゲーム音声が前記可搬型表示装置へ送信されるタイミングを遅らせる音声送信制御部とを備える、請求項1に記載のゲームシステム。
【請求項3】
前記画像生成部は、前記可搬型表示装置の撮像部を前記所定の表示装置の画面の方へ向ける旨の通知を表す画像を前記第1ゲーム画像または前記第2ゲーム画像として生成し、前記所定の表示装置または前記可搬型表示装置に当該画像が表示された後で、前記所定の第1ゲーム画像を生成して前記所定の表示装置に表示させる、請求項1または請求項2に記載のゲームシステム。
【請求項4】
前記ゲーム装置はさらに、複数の第2ゲーム画像を記憶可能な記憶部を備え、
前記画像送信制御部は、前記画像生成部によって生成された第2ゲーム画像を前記記憶部に記憶し、生成から前記画像遅延時間に基づく待機時間が経過した第2ゲーム画像を前記画像送信部に送信させる、請求項1から請求項3のいずれか1項に記載のゲームシステム。
【請求項5】
前記画像送信制御部は、前記画像遅延時間と、前記第2ゲーム画像が生成されてから前記可搬型表示装置に表示されるまでの時間とに基づいて、前記第2ゲーム画像を前記可搬型表示装置へ送信するまでの待機時間を算出する、請求項1から請求項4に記載のゲームシステム。
【請求項6】
ゲーム装置と、可搬型表示装置とを含むゲームシステムであって、
前記ゲーム装置は、
ゲーム処理に基づいて第1ゲーム音声および第2ゲーム音声を生成する音声生成部と、
スピーカを備える表示装置であって、前記可搬型表示装置とは異なる所定の表示装置へ前記第1ゲーム音声を出力する音声出力部と、
前記第2ゲーム音声を前記可搬型表示装置へ無線で送信する音声送信部とを備え、
前記可搬型表示装置は、
マイクと、
前記ゲーム装置から前記第2ゲーム音声を受信する音声受信部と、
前記第2ゲーム音声を出力するスピーカと、
前記マイクによる検出音を前記ゲーム装置へ送信する検出音送信部とを備え、
前記ゲーム装置はさらに、
前記検出音を受信する検出音受信部と、
前記検出音受信部によって受信された検出音に所定の第1ゲーム音声が含まれるか否かを判定する音判定部と、
検出音に前記所定の第1ゲーム音声が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、前記音声出力部が前記所定の第1ゲーム音声を出力したタイミングと、前記マイクが当該検出音を検出してから当該判定が行われるまでの処理時間とに基づいて、前記音声出力部が前記所定の第1ゲーム音声を出力してから前記所定の表示装置のスピーカによって当該第1ゲーム音声が出力されるまでの音声遅延時間を算出する遅延算出部と、
前記音声遅延時間に基づいて、前記第2ゲーム音声が前記可搬型表示装置へ送信されるタイミングを遅らせる音声送信制御部とを備える、ゲームシステム。
【請求項7】
入力された画像に対して所定の映像処理を行ってから当該画像を表示する所定の表示装置の表示遅延を測定する遅延測定システムであって、
前記所定の表示装置と通信可能な情報処理装置と、当該情報処理装置と無線通信可能な可搬型の端末装置とを含み、
前記情報処理装置は、
所定の画像を生成する画像生成部と、
前記所定の表示装置へ前記所定の画像を出力する第1画像出力部とを備え、
前記端末装置は、
撮像部と、
前記撮像部が撮像した撮像画像を送信する撮像画像送信部とを備え、
前記情報処理装置はさらに、
前記撮像画像を受信する撮像画像受信部と、
前記撮像画像に前記所定の画像が含まれるか否かを判定する画像判定部と、
撮像画像に前記所定の画像が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、前記第1画像出力部が前記所定の画像を出力したタイミングと、前記撮像部が当該撮像画像を撮像してから当該判定が行われるまでの処理時間とに基づいて、前記第1画像出力部が前記所定の画像を出力してから前記所定の表示装置に当該所定の画像が表示されるまでの画像遅延時間を算出する画像遅延算出部とを備える、遅延測定システム。
【請求項8】
前記画像生成部は、前記所定の表示装置に表示するための第1画像と、前記端末装置に表示するための第2画像とを逐次生成し、
前記第1画像出力部は、前記所定の表示装置へ前記第1画像を逐次出力し、
前記情報処理装置はさらに、
前記第2画像を前記端末装置へ逐次出力する第2画像出力部とを備え、
前記端末装置はさらに、
前記情報処理装置から前記第2画像を逐次受信する画像受信部と、
前記受信された第2画像を逐次表示する表示部とを備え、
前記情報処理装置は、前記画像遅延時間に基づいて、前記第2画像が前記端末装置へ出力されるタイミングを遅らせる画像出力制御部をさらに備える、請求項7に記載の遅延測定システム。
【請求項9】
前記情報処理装置はさらに、
前記所定の表示装置に出力するための第1音声と、前記端末装置に出力するための第2音声とを生成する音声生成部と、
前記所定の表示装置へ前記第1音声を出力する第1音声出力部と、
前記端末装置へ前記第2音声を出力する第2音声出力部とを備え、
前記端末装置はさらに、
前記情報処理装置から前記第2音声を受信する音声受信部と、
前記第2音声を出力するスピーカとを備え、
前記情報処理装置は、前記画像遅延時間に基づいて、前記第2音声が前記端末装置へ出力されるタイミングを遅らせる音声出力制御部をさらに備える、請求項8に記載の遅延測定システム。
【請求項10】
前記所定の表示装置はスピーカを備えており、
前記情報処理装置はさらに、
所定の音を生成する音声生成部と、
前記所定の表示装置へ前記所定の音を出力する音声出力部とを備え、
前記端末装置は、
マイクと、
前記マイクによる検出音を前記情報処理装置へ送信する検出音送信部とを備え、
前記情報処理装置はさらに、
前記検出音を受信する検出音受信部と、
前記検出音受信部によって受信された検出音に前記所定の音が含まれるか否かを判定する音判定部と、
検出音に前記所定の音が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、前記音声出力部が前記所定の音を出力したタイミングと、前記マイクが当該検出音を検出してから当該判定が行われるまでの処理時間とに基づいて、前記音声出力部が前記所定の音を出力してから前記所定の表示装置のスピーカによって当該所定の音が出力されるまでの音声遅延時間を算出する音声遅延算出部と、
前記所定の表示装置に表示される画像と、当該所定の表示装置のスピーカに出力させるための音とが同期するように、当該音を前記音声出力部が出力するタイミングと、当該画像を前記第1画像出力部が出力するタイミングとの少なくともいずれかを前記画像遅延時間および前記音声遅延時間に基づいて遅らせる出力制御部とを備える、請求項7に記載の遅延測定システム。
【請求項11】
所定の表示装置が備えるスピーカの音声出力遅延を測定する遅延測定システムであって、
前記所定の表示装置と通信可能な情報処理装置と、当該情報処理装置と無線通信可能な可搬型の端末装置とを含み、
前記情報処理装置は、
所定の音を生成する音声生成部と、
前記所定の表示装置へ前記所定の音を出力する第1音声出力部とを備え、
前記端末装置は、
マイクと、
前記マイクによる検出音を前記情報処理装置へ送信する検出音送信部とを備え、
前記情報処理装置はさらに、
前記検出音を受信する検出音受信部と、
前記検出音受信部によって受信された検出音に前記所定の音が含まれるか否かを判定する音判定部と、
検出音に前記所定の音が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、前記音声出力部が前記所定の音を出力したタイミングと、前記マイクが当該検出音を検出してから当該判定が行われるまでの処理時間とに基づいて、前記音声出力部が前記所定の音を出力してから前記所定の表示装置のスピーカによって当該所定の音が出力されるまでの音声遅延時間を算出する音声遅延算出部とを備える、遅延測定システム。
【請求項12】
前記音声生成部は、前記所定の表示装置に出力するための第1音声と、前記端末装置に出力するための第2音声とを生成し、
前記第1音声出力部は、前記所定の表示装置へ前記第1音声を出力し、
前記情報処理装置はさらに、
前記第2音声を前記端末装置へ出力する第2音声出力部とを備え、
前記端末装置はさらに、
前記情報処理装置から前記第2音声を受信する音声受信部と、
前記受信された第2音声を出力するスピーカとを備え、
前記情報処理装置は、前記音声遅延時間に基づいて、前記第2音声が前記端末装置へ出力されるタイミングを遅らせる音声出力制御部をさらに備える、請求項11に記載の遅延測定システム。
【請求項13】
前記情報処理装置はさらに、
前記所定の表示装置に表示するための第1画像と、前記端末装置に表示するための第2画像とを逐次生成する画像生成部と、
前記所定の表示装置へ前記第1画像を逐次出力する第1画像出力部と、
前記端末装置へ前記第2画像を逐次出力する第2画像出力部とを備え、
前記端末装置はさらに、
前記情報処理装置から前記第2画像を逐次受信する画像受信部と、
前記受信された第2画像を逐次表示する表示部とを備え、
前記情報処理装置は、前記画像遅延時間に基づいて、前記第2画像が前記端末装置へ出力されるタイミングを遅らせる画像出力制御部をさらに備える、請求項12に記載の遅延測定システム。
【請求項14】
ゲーム装置と、撮像部を備える可搬型表示装置とを含むゲームシステムにおいて実行される画像表示方法であって、
前記ゲーム装置は、
所定のテスト画像を生成するテスト画像生成ステップと、
前記可搬型表示装置とは異なる所定の表示装置へ前記テスト画像を出力するテスト画像出力ステップとを実行し、
前記可搬型表示装置は、
前記所定の表示装置の画面を前記撮像部によって撮像する撮像ステップと、
前記撮像部が撮像した撮像画像を圧縮した圧縮撮像データを前記ゲーム装置へ送信する撮像データ送信ステップとを実行し、
前記ゲーム装置はさらに、
前記圧縮撮像データを受信して伸張して撮像画像を得る撮像データ受信ステップと、
前記撮像データ受信ステップにおいて伸張された撮像画像に前記テスト画像が含まれるか否かを判定する画像判定ステップと、
撮像画像に前記テスト画像が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、前記テスト画像出力ステップにおいて前記テスト画像を出力したタイミングと、前記撮像部が当該撮像画像を撮像してから当該判定が行われるまでの処理時間とに基づいて、前記テスト画像出力ステップにおいて前記テスト画像を出力してから前記所定の表示装置に当該テスト画像が表示されるまでの画像遅延時間を算出する画像遅延算出ステップと、
ゲーム処理に基づいて第1ゲーム画像および第2ゲーム画像を逐次生成するゲーム画像生成ステップと、
前記可搬型表示装置とは異なる所定の表示装置へ前記第1ゲーム画像を逐次出力するゲーム画像出力ステップと、
前記画像遅延時間に基づいて、前記第2ゲーム画像が前記可搬型表示装置へ送信されるタイミングを遅らせる画像送信制御ステップと、
前記第2ゲーム画像を逐次圧縮して圧縮画像データを逐次生成する画像圧縮ステップと、
前記圧縮画像データを前記可搬型表示装置へ無線で逐次送信する画像送信ステップとを実行し、
前記可搬型表示装置はさらに、
前記ゲーム装置から前記圧縮画像データを逐次受信する画像受信ステップと、
前記圧縮画像データを逐次伸張して前記第2ゲーム画像を得る画像伸張ステップと、
前記画像伸張ステップにおいて伸張された第2ゲーム画像を逐次表示する表示ステップとを実行する、画像表示方法。
【請求項15】
前記所定の表示装置はスピーカを備えており、
前記ゲーム装置はさらに、
所定のテスト音声を生成するテスト音声生成ステップと、
前記所定の表示装置へ前記テスト音声を出力するテスト音声出力ステップとを実行し、
前記可搬型表示装置は、
マイクによって音を検出する音検出ステップと、
前記マイクによる検出音を前記ゲーム装置へ送信する検出音送信ステップとを実行し、
前記ゲーム装置はさらに、
前記検出音を受信する検出音受信ステップと、
前記検出音受信ステップにおいて受信された検出音に前記テスト音声が含まれるか否かを判定する音判定ステップと、
検出音に前記テスト音声が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、前記テスト音声出力ステップにおいて前記テスト音声を出力したタイミングと、前記音検出ステップにおいて当該検出音を検出してから当該判定が行われるまでの処理時間とに基づいて、前記テスト音声出力ステップにおいて前記テスト音声を出力してから前記所定の表示装置のスピーカによって当該テスト音声が出力されるまでの音声遅延時間を算出する音声遅延算出ステップと、
前記ゲーム処理に基づいて第1ゲーム音声および第2ゲーム音声を生成するゲーム音声生成ステップと、
前記所定の表示装置へ前記第1ゲーム音声を出力する第1ゲーム音声出力ステップと、
前記音声遅延時間に基づいて、前記第2ゲーム音声が前記可搬型表示装置へ送信されるタイミングを遅らせる音声送信制御ステップと、
前記第2ゲーム音声を前記可搬型表示装置へ無線で送信する音声送信ステップとを実行し、
前記可搬型表示装置は、
前記ゲーム装置から前記第2ゲーム音声を受信する音声受信ステップと、
前記第2ゲーム音声をスピーカから出力する第2音声出力ステップとを実行する、請求項14に記載の画像表示方法。
【請求項16】
前記テスト画像生成ステップにおいて、前記ゲーム装置は、前記可搬型表示装置の撮像部を前記所定の表示装置の画面の方へ向ける旨の通知を表す画像を生成し、前記所定の表示装置または前記可搬型表示装置に当該画像が表示された後で、前記テスト画像を生成して前記所定の表示装置に表示させる、請求項14または請求項15に記載の画像表示方法。
【請求項17】
前記ゲーム装置は、複数の第2ゲーム画像を記憶可能な記憶部を備え、
前記画像送信制御ステップにおいて、前記ゲーム装置は、前記ゲーム画像生成ステップにおいて生成された第2ゲーム画像を前記記憶部に記憶し、
前記画像送信ステップにおいて、前記ゲーム装置は、生成から前記画像遅延時間に基づく待機時間が経過した第2ゲーム画像を送信させる、請求項14から請求項16のいずれか1項に記載の画像表示方法。
【請求項18】
前記画像送信制御ステップにおいて、前記ゲーム装置は、前記画像遅延時間と、前記第2ゲーム画像が生成されてから前記可搬型表示装置に表示されるまでの時間とに基づいて、前記第2ゲーム画像を前記可搬型表示装置へ送信するまでの待機時間を算出する、請求項14から請求項17に記載の画像表示方法。
【請求項19】
ゲーム装置と、可搬型表示装置とを含むゲームシステムにおいて実行される音声出力方法であって、
前記ゲーム装置は、
所定のテスト音声を生成するテスト音声生成ステップと、
スピーカを備える表示装置であって、前記可搬型表示装置とは異なる所定の表示装置へ前記テスト音声を出力するテスト音声出力ステップとを実行し、
前記可搬型表示装置は、
マイクによって音を検出する音検出ステップと、
前記マイクによる検出音を前記ゲーム装置へ送信する検出音送信ステップとを実行し、
前記ゲーム装置はさらに、
前記検出音を受信する検出音受信ステップと、
前記検出音受信ステップにおいて受信された検出音に前記テスト音声が含まれるか否かを判定する音判定ステップと、
検出音に前記テスト音声が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、前記テスト音声出力ステップにおいて前記テスト音声を出力したタイミングと、前記音検出ステップにおいて当該検出音を検出してから当該判定が行われるまでの処理時間とに基づいて、前記テスト音声出力ステップにおいて前記テスト音声を出力してから前記所定の表示装置のスピーカによって当該テスト音声が出力されるまでの音声遅延時間を算出する音声遅延算出ステップと、
前記ゲーム処理に基づいて第1ゲーム音声および第2ゲーム音声を生成するゲーム音声生成ステップと、
前記所定の表示装置へ前記第1ゲーム音声を出力する第1ゲーム音声出力ステップと、
前記音声遅延時間に基づいて、前記第2ゲーム音声が前記可搬型表示装置へ送信されるタイミングを遅らせる音声送信制御ステップと、
前記第2ゲーム音声を前記可搬型表示装置へ無線で送信する音声送信ステップとを実行し、
前記可搬型表示装置は、
前記ゲーム装置から前記第2ゲーム音声を受信する音声受信ステップと、
前記第2ゲーム音声をスピーカから出力する第2音声出力ステップとを実行する、音声出力方法。
【請求項20】
入力された画像に対して所定の映像処理を行ってから当該画像を表示する所定の表示装置の表示遅延を測定する遅延測定方法であって、
前記所定の表示装置と通信可能な情報処理装置は、
所定のテスト画像を生成する第1画像生成ステップと、
前記所定の表示装置へ前記テスト画像を出力する第1画像出力ステップとを実行し、
前記情報処理装置と無線通信可能な可搬型の端末装置は、
前記所定の表示装置の画面を撮像部によって撮像する撮像ステップと、
前記撮像部が撮像した撮像画像を送信する撮像画像送信ステップとを実行し、
前記情報処理装置はさらに、
前記撮像画像を受信する撮像画像受信ステップと、
前記撮像画像に前記テスト画像が含まれるか否かを判定する画像判定ステップと、
撮像画像に前記テスト画像が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、前記第1画像出力ステップが前記テスト画像を出力したタイミングと、前記撮像部が当該撮像画像を撮像してから当該判定が行われるまでの処理時間とに基づいて、前記第1画像出力ステップが前記テスト画像を出力してから前記所定の表示装置に当該テスト画像が表示されるまでの画像遅延時間を算出する画像遅延算出ステップとを実行する、遅延測定方法。
【請求項21】
前記情報処理装置は、
前記所定の表示装置に表示するための第1画像と、前記端末装置に表示するための第2画像とを逐次生成する第2画像生成ステップと、
前記所定の表示装置へ前記第1画像を逐次出力する第2画像出力ステップと、
前記画像遅延時間に基づいて、前記第2画像が前記端末装置へ出力されるタイミングを遅らせる画像出力制御ステップと、
前記第2画像を前記端末装置へ逐次出力する第3画像出力ステップとを実行し、
前記端末装置はさらに、
前記情報処理装置から前記第2画像を逐次受信する画像受信ステップと、
前記受信された第2画像を逐次表示する表示ステップとを実行する、請求項20に記載の遅延測定方法。
【請求項22】
前記情報処理装置はさらに、
前記所定の表示装置に出力するための第1音声と、前記端末装置に出力するための第2音声とを生成する音声生成ステップと、
前記所定の表示装置へ前記第1音声を出力する第1音声出力ステップと、
前記画像遅延時間に基づいて、前記第2音声が前記端末装置へ出力されるタイミングを遅らせる音声出力制御ステップと、
前記端末装置へ前記第2音声を出力する第2音声出力ステップとを実行し、
前記端末装置はさらに、
前記情報処理装置から前記第2音声を受信する音声受信ステップと、
前記第2音声をスピーカから出力する発音ステップとを実行する、請求項21に記載の遅延測定方法。
【請求項23】
前記所定の表示装置はスピーカを備えており、
前記情報処理装置はさらに、
所定のテスト音声を生成するテスト音声生成ステップと、
前記所定の表示装置へ前記テスト音声を出力するテスト音声出力ステップとを実行し、
前記端末装置は、
マイクによって音を検出する音検出ステップと、
前記マイクによる検出音を前記情報処理装置へ送信する検出音送信ステップとを実行し、
前記情報処理装置はさらに、
前記検出音を受信する検出音受信ステップと、
前記検出音受信ステップにおいて受信された検出音に前記テスト音声が含まれるか否かを判定する音判定ステップと、
検出音に前記テスト音声が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、前記テスト音声出力ステップにおいて前記テスト音声を出力したタイミングと、前記音検出ステップにおいて当該検出音を検出してから当該判定が行われるまでの処理時間とに基づいて、前記テスト音声出力ステップにおいて前記テスト音声を出力してから前記所定の表示装置のスピーカによって当該テスト音声が出力されるまでの音声遅延時間を算出する音声遅延算出ステップと、
前記所定の表示装置に表示される画像と、当該所定の表示装置のスピーカに出力させるための音とが同期するように、当該音を当該スピーカが出力するタイミングと、当該画像を前記表示装置が出力するタイミングとの少なくともいずれかを前記画像遅延時間および前記音声遅延時間に基づいて遅らせる出力制御ステップとを実行する、請求項20に記載の遅延測定方法。
【請求項24】
所定の表示装置が備えるスピーカの音声出力遅延を測定する遅延測定方法であって、
前記所定の表示装置と通信可能な情報処理装置は、
所定のテスト音声を生成する第1音声生成ステップと、
前記所定の表示装置へ前記所定の音を出力する第1音声出力ステップとを実行し、
前記情報処理装置と無線通信可能な可搬型の端末装置は、
マイクによって音を検出する音検出ステップと、
前記マイクによる検出音を前記情報処理装置へ送信する検出音送信ステップとを実行し、
前記情報処理装置はさらに、
前記検出音を受信する検出音受信ステップと、
前記検出音受信ステップにおいて受信された検出音に前記テスト音声が含まれるか否かを判定する音判定ステップと、
検出音に前記テスト音声が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、前記第1音声出力ステップにおいて前記テスト音声を出力したタイミングと、前記音検出ステップにおいて当該検出音を検出してから当該判定が行われるまでの処理時間とに基づいて、前記第1音声出力ステップにおいて前記テスト音声を出力してから前記所定の表示装置のスピーカによって当該テスト音声が出力されるまでの音声遅延時間を算出する音声遅延算出ステップとを実行する、遅延測定方法。
【請求項25】
前記情報処理装置はさらに、
前記所定の表示装置に出力するための第1音声と、前記端末装置に出力するための第2音声とを生成する第2音声生成ステップと、
前記所定の表示装置へ前記第1音声を出力する第2音声出力ステップと、
前記音声遅延時間に基づいて、前記第2音声が前記端末装置へ出力されるタイミングを遅らせる音声出力制御ステップと、
前記第2音声を前記端末装置へ出力する第3音声出力ステップとを実行し、
前記端末装置はさらに、
前記情報処理装置から前記第2音声を受信する音声受信ステップと、
前記受信された第2音声をスピーカから出力する発音ステップとを実行する、請求項24に記載の遅延測定方法。
【請求項26】
前記情報処理装置はさらに、
前記所定の表示装置に表示するための第1画像と、前記端末装置に表示するための第2画像とを逐次生成する画像生成ステップと、
前記所定の表示装置へ前記第1画像を逐次出力する第1画像出力ステップと、
前記画像遅延時間に基づいて、前記第2画像が前記端末装置へ出力されるタイミングを遅らせる画像出力制御ステップと、
前記端末装置へ前記第2画像を逐次出力する第2画像出力ステップとを実行し、
前記端末装置はさらに、
前記情報処理装置から前記第2画像を逐次受信する画像受信ステップと、
前記受信された第2画像を逐次表示する表示ステップとを実行する、請求項25に記載の遅延測定方法。
【請求項27】
可搬型表示装置と通信可能なゲーム装置であって、
ゲーム処理に基づいて第1ゲーム画像および第2ゲーム画像を逐次生成する画像生成部と、
前記可搬型表示装置とは異なる所定の表示装置へ前記第1ゲーム画像を逐次出力する画像出力部と、
前記第2ゲーム画像を逐次圧縮して圧縮画像データを逐次生成する画像圧縮部と、
前記圧縮画像データを前記可搬型表示装置へ無線で逐次送信する画像送信部と、
前記可搬型表示装置の撮像部が撮像した撮像画像を圧縮した圧縮撮像データを前記可搬型表示装置から受信し、受信した圧縮画像データを伸張して撮像画像を得る撮像データ受信部と、
前記撮像データ受信部によって伸張された撮像画像に所定の第1ゲーム画像が含まれるか否かを判定する画像判定部と、
撮像画像に所定の第1ゲーム画像が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、前記画像出力部が前記所定の第1ゲーム画像を出力したタイミングと、前記撮像部が当該撮像画像を撮像してから当該判定が行われるまでの処理時間とに基づいて、前記画像出力部が前記所定の第1ゲーム画像を出力してから前記所定の表示装置に当該所定の第1ゲーム画像が表示されるまでの画像遅延時間を算出する画像遅延算出部と、
前記画像遅延時間に基づいて、前記第2ゲーム画像が前記可搬型表示装置へ送信されるタイミングを遅らせる画像送信制御部とを備える、ゲーム装置。
【請求項28】
可搬型表示装置と通信可能なゲーム装置であって、
ゲーム処理に基づいて第1ゲーム音声および第2ゲーム音声を生成する音声生成部と、
スピーカを備える表示装置であって、前記可搬型表示装置とは異なる所定の表示装置へ前記第1ゲーム音声を出力する音声出力部と、
前記第2ゲーム音声を前記可搬型表示装置へ無線で送信する音声送信部と、
前記可搬型表示装置のマイクによる検出音を前記可搬型表示装置から受信する検出音受信部と、
前記検出音受信部によって受信された検出音に所定の第1ゲーム音声が含まれるか否かを判定する音判定部と、
検出音に前記所定の第1ゲーム音声が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、前記音声出力部が前記所定の第1ゲーム音声を出力したタイミングと、前記マイクが当該検出音を検出してから当該判定が行われるまでの処理時間とに基づいて、前記音声出力部が前記所定の第1ゲーム音声を出力してから前記所定の表示装置のスピーカによって当該第1ゲーム音声が出力されるまでの音声遅延時間を算出する遅延算出部と、
前記音声遅延時間に基づいて、前記第2ゲーム音声が前記可搬型表示装置へ送信されるタイミングを遅らせる音声送信制御部とを備える、ゲーム装置。
【請求項29】
入力された画像に対して所定の映像処理を行ってから当該画像を表示する所定の表示装置の表示遅延を測定する遅延測定システムにおいて用いられる情報処理装置であって、
所定の画像を生成する画像生成部と、
前記所定の表示装置へ前記所定の画像を出力する第1画像出力部と、
前記情報処理装置と無線通信可能な可搬型の端末装置の撮像部が撮像した撮像画像を受信する撮像画像受信部と、
前記撮像画像に前記所定の画像が含まれるか否かを判定する画像判定部と、
撮像画像に前記所定の画像が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、前記第1画像出力部が前記所定の画像を出力したタイミングと、前記撮像部が当該撮像画像を撮像してから当該判定が行われるまでの処理時間とに基づいて、前記第1画像出力部が前記所定の画像を出力してから前記所定の表示装置に当該所定の画像が表示されるまでの画像遅延時間を算出する画像遅延算出部とを備える、情報処理装置。
【請求項30】
所定の表示装置が備えるスピーカの音声出力遅延を測定する遅延測定システムにおいて用いられる情報処理装置であって、
所定の音を生成する音声生成部と、
前記所定の表示装置へ前記所定の音を出力する第1音声出力部とを備え、
前記情報処理装置と無線通信可能な可搬型の端末装置のマイクによる検出音を前記端末装置から受信する検出音受信部と、
前記検出音受信部によって受信された検出音に前記所定の音が含まれるか否かを判定する音判定部と、
検出音に前記所定の音が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、前記音声出力部が前記所定の音を出力したタイミングと、前記マイクが当該検出音を検出してから当該判定が行われるまでの処理時間とに基づいて、前記音声出力部が前記所定の音を出力してから前記所定の表示装置のスピーカによって当該所定の音が出力されるまでの音声遅延時間を算出する音声遅延算出部とを備える、情報処理装置。
【請求項31】
可搬型表示装置と通信可能なゲーム装置のコンピュータにおいて実行されるゲームプログラムであって、
ゲーム処理に基づいて第1ゲーム画像および第2ゲーム画像を逐次生成する画像生成手段と、
前記可搬型表示装置とは異なる所定の表示装置へ前記第1ゲーム画像を逐次出力する画像出力手段と、
前記第2ゲーム画像を前記可搬型表示装置へ無線で逐次送信する画像送信手段と、
前記可搬型表示装置の撮像部が撮像した撮像画像を前記可搬型表示装置から受信する撮像データ受信手段と、
前記撮像データ受信手段によって受信された撮像画像に所定の第1ゲーム画像が含まれるか否かを判定する画像判定手段と、
撮像画像に所定の第1ゲーム画像が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、前記画像出力手段が前記所定の第1ゲーム画像を出力したタイミングと、前記撮像部が当該撮像画像を撮像してから当該判定が行われるまでの処理時間とに基づいて、前記画像出力手段が前記所定の第1ゲーム画像を出力してから前記所定の表示装置に当該所定の第1ゲーム画像が表示されるまでの画像遅延時間を算出する画像遅延算出手段と、
前記画像遅延時間に基づいて、前記第2ゲーム画像が前記可搬型表示装置へ送信されるタイミングを遅らせる画像送信制御手段として前記コンピュータを機能させる、ゲームプログラム。
【請求項32】
可搬型表示装置と通信可能なゲーム装置のコンピュータにおいて実行されるゲームプログラムであって、
ゲーム処理に基づいて第1ゲーム音声および第2ゲーム音声を生成する音声生成手段と、
スピーカを備える表示装置であって、前記可搬型表示装置とは異なる所定の表示装置へ前記第1ゲーム音声を出力する音声出力手段と、
前記第2ゲーム音声を前記可搬型表示装置へ無線で送信する音声送信手段と、
前記可搬型表示装置のマイクによる検出音を前記可搬型表示装置から受信する検出音受信手段と、
前記検出音受信手段によって受信された検出音に所定の第1ゲーム音声が含まれるか否かを判定する音判定手段と、
検出音に前記所定の第1ゲーム音声が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、前記音声出力手段が前記所定の第1ゲーム音声を出力したタイミングと、前記マイクが当該検出音を検出してから当該判定が行われるまでの処理時間とに基づいて、前記音声出力手段が前記所定の第1ゲーム音声を出力してから前記所定の表示装置のスピーカによって当該第1ゲーム音声が出力されるまでの音声遅延時間を算出する遅延算出手段と、
前記音声遅延時間に基づいて、前記第2ゲーム音声が前記可搬型表示装置へ送信されるタイミングを遅らせる音声送信制御手段として前記コンピュータを機能させる、ゲームプログラム。
【請求項33】
入力された画像に対して所定の映像処理を行ってから当該画像を表示する所定の表示装置の表示遅延を測定する遅延測定システムにおいて用いられる情報処理装置のコンピュータにおいて実行される情報処理プログラムであって、
所定の画像を生成する画像生成手段と、
前記所定の表示装置へ前記所定の画像を出力する第1画像出力手段と、
前記情報処理装置と無線通信可能な可搬型の端末装置の撮像部が撮像した撮像画像を受信する撮像画像受信手段と、
前記撮像画像に前記所定の画像が含まれるか否かを判定する画像判定手段と、
撮像画像に前記所定の画像が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、前記第1画像出力手段が前記所定の画像を出力したタイミングと、前記撮像部が当該撮像画像を撮像してから当該判定が行われるまでの処理時間とに基づいて、前記第1画像出力手段が前記所定の画像を出力してから前記所定の表示装置に当該所定の画像が表示されるまでの画像遅延時間を算出する画像遅延算出手段として前記コンピュータを機能させる、情報処理プログラム。
【請求項34】
所定の表示装置が備えるスピーカの音声出力遅延を測定する遅延測定システムにおいて用いられる情報処理装置のコンピュータにおいて実行される情報処理プログラムであって、
所定の音を生成する音声生成手段と、
前記所定の表示装置へ前記所定の音を出力する第1音声出力手段とを備え、
前記情報処理装置と無線通信可能な可搬型の端末装置のマイクによる検出音を前記端末装置から受信する検出音受信手段と、
前記検出音受信手段によって受信された検出音に前記所定の音が含まれるか否かを判定する音判定手段と、
検出音に前記所定の音が含まれるとの判定が行われた場合、当該判定が行われたタイミングと、前記音声出力手段が前記所定の音を出力したタイミングと、前記マイクが当該検出音を検出してから当該判定が行われるまでの処理時間とに基づいて、前記音声出力手段が前記所定の音を出力してから前記所定の表示装置のスピーカによって当該所定の音が出力されるまでの音声遅延時間を算出する音声遅延算出手段として前記コンピュータを機能させる、情報処理プログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【公開番号】特開2012−139448(P2012−139448A)
【公開日】平成24年7月26日(2012.7.26)
【国際特許分類】
【出願番号】特願2011−551(P2011−551)
【出願日】平成23年1月5日(2011.1.5)
【出願人】(000233778)任天堂株式会社 (1,115)
【Fターム(参考)】
【公開日】平成24年7月26日(2012.7.26)
【国際特許分類】
【出願日】平成23年1月5日(2011.1.5)
【出願人】(000233778)任天堂株式会社 (1,115)
【Fターム(参考)】
[ Back to top ]