(57)【要約】【課題】異なる向きで配置された２画面を使い分けたゲーム処理を、簡易な構成の操作装置を用いて実現できるゲームシステムを提供すること。【解決手段】第１の表示装置は、画面が重力方向軸に沿った方向に向くよう配置され、第２の表示装置は、画面が重力方向軸と直交する所定の軸方向に向くように配置される。そして、動きセンサを備える操作装置から出力される動きセンサのデータに基づいて操作装置の姿勢を算出し、操作装置が第１の表示装置と第２の表示装置のいずれを向いているかを判別する。そして、その判別結果に基づき、第１の表示装置と第２の表示装置のいずれかの画面上の所定の位置を指示し、その指示位置に基づいて所定のゲーム処理を実行する。【選択図】図１７
2014188051.tif 000002
【特許請求の範囲】
【請求項１】
所定の動きセンサを備える操作装置によって表示装置の画面上において指示される指示位置に基づいて、所定のゲーム処理を行うゲームシステムであって、
表示画面の向きが重力方向軸に沿った方向に向くよう配置される第１の表示装置と、
表示画面の向きが前記重力方向軸と直交する所定の軸方向に沿った方向に向くように配置される第２の表示装置と、
前記動きセンサから出力されるデータに基づいて前記操作装置の姿勢を算出する姿勢算出部と、
前記操作装置が前記第１の表示装置および第２の表示装置のいずれの画面を指示しているかを前記姿勢算出部で算出された姿勢に基づいて判別する判別部と、
前記判別部による判別結果に基づき、前記第１の表示装置および第２の表示装置のうちのいずれか一方の画面上の所定の位置を指示する処理を実行する指示処理部と、
前記指示処理部によって指示される指示位置に基づいて前記所定のゲーム処理を実行するゲーム処理部と、を備える、ゲームシステム。
【請求項２】
前記判別部は、前記姿勢算出部で算出された前記操作装置の姿勢が、当該操作装置の筐体の外面のうちプレイヤが前記第１の表示装置あるいは第２の表示装置の表示画面を指示するときに当該表示画面と対向あるいはほぼ対向する関係となる面が、重力方向軸に沿う方向あるいは当該重力方向軸にほぼ沿うような方向に向くような姿勢である第１の姿勢か、当該表示画面と対向あるいはほぼ対向する関係となる面が、当該重力方向軸と直交する所定の軸方向に沿った方向あるいは当該所定の軸方向にほぼ沿った方向に向くような姿勢である第２の姿勢かを判別し、第１の姿勢と判別されたときは前記第１の表示装置を指示しており、第２の姿勢と判別されたときは前記第２の表示装置を指示していると判別する、請求項１に記載のゲームシステム。
【請求項３】
前記動きセンサは加速度センサであり、
前記姿勢算出部は、前記加速度センサから得られる加速度データに基づいて前記操作装置の姿勢を判別する、請求項２に記載のゲームシステム。
【請求項４】
前記操作装置は、撮像部をさらに有しており、
前記ゲームシステムは、前記複数の表示装置にそれぞれ対応して設置されるマーカ部をさらに備え、
前記マーカ部はそれぞれ、その向きが各マーカ部に対応する表示装置の画面の向きと同じ向きになるよう設置され、
前記指示処理部は、前記撮像部による撮像画像内における前記マーカ部の位置に基づいて前記画面上の指示位置を算出する指示位置算出部を含む、請求項１に記載のゲームシステム。
【請求項５】
前記マーカ部は、発光部材を有しており、
前記ゲームシステムは、マーカ部の点灯を制御するための点灯制御部を更に備え、
前記第１の表示装置は前記マーカ部をその筐体内に内蔵した表示装置であり、
前記第２の表示装置はテレビであり、当該テレビに対応する前記マーカ部は当該テレビの近傍に配置される、請求項４に記載のゲームシステム。
【請求項６】
前記ゲーム処理部は、前記操作装置が前記第１の表示装置の画面を指示している状態においてプレイヤに当該操作装置に対する所定の操作を行わせることで当該第１表示装置の画面に表示されている所定のオブジェクトが当該操作装置に取得されるような処理を行い、その後、当該操作装置が前記第２の表示装置を指示している状態で、当該プレイヤに所定の操作を行わせることで当該オブジェクトが当該第２の表示装置の画面内に移動して表示されるようなゲーム処理を実行する、請求項１に記載のゲームシステム。
【請求項７】
前記ゲーム処理部は、
前記第１表示装置の画面に表示されている所定のオブジェクトが前記操作装置に取得されるような処理が行われた後、当該操作装置が前記第２の表示装置を指示している状態で、前記プレイヤが前記所定の操作を行うまでの間、当該操作装置の姿勢変化を検出する姿勢変化検出部と、
前記姿勢変化検出部の検出結果に応じて前記所定のオブジェクトに関連づけられた所定のパラメータを変化させるパラメータ変更部と、
前記所定のオブジェクトが前記第２の表示装置の画面に表示されるときに、前記パラメータ変更部によって変更されたパラメータを当該オブジェクトの表示に反映させる反映部とを含む、請求項６に記載のゲームシステム。
【請求項８】
所定の動きセンサを備える操作装置によって表示装置の画面上において指示される指示位置に基づいて、所定のゲーム処理を行うゲームシステムのコンピュータに実行させるゲームプログラムであって、
前記動きセンサから出力されるデータに基づいて前記操作装置の姿勢を算出する姿勢算出手段と、
前記操作装置が、表示画面の向きが重力方向軸に沿った方向に向くよう配置される第１の表示装置の表示画面と表示画面の向きが重力方向軸と直交する所定の軸方向に沿った方向に向くように配置される第２の表示装置の表示画面とのいずれを指示しているかを前記姿勢算出手段で算出された姿勢に基づいて判別する判別手段と、
前記判別手段による判別結果に基づき、前記第１の表示装置および第２の表示装置のうちのいずれか一方の画面上の所定の位置を指示する処理を実行する指示処理手段と、
前記指示処理手段によって指示される指示位置に基づいて前記所定のゲーム処理を実行するゲーム処理手段と、として前記コンピュータを機能させる、ゲームシステム。
【請求項９】
所定の動きセンサを備える操作装置によって表示装置の画面上において指示される指示位置に基づいて、所定のゲーム処理を行うゲームシステムを制御するためのゲーム処理方法であって、
前記動きセンサから出力されるデータに基づいて前記操作装置の姿勢を算出する姿勢算出ステップと、
前記操作装置が、表示画面の向きが重力方向軸に沿った方向に向くよう配置される第１の表示装置の表示画面と表示画面の向きが重力方向軸と直交する所定の軸方向に沿った方向に向くように配置される第２の表示装置の表示画面とのいずれを指示しているかを前記姿勢算出手段で算出された姿勢に基づいて判別する判別ステップと、
前記判別ステップにおける判別結果に基づき、前記第１の表示装置および第２の表示装置のうちのいずれか一方の画面上の所定の位置を指示する処理を実行する指示処理ステップと、
前記指示処理ステップで指示された指示位置に基づいて前記所定のゲーム処理を実行するゲーム処理ステップと、を備える、ゲームシステム。
【請求項１０】
所定の動きセンサを備える操作装置から操作データを取得し、画面の向きが互いに異なる向きになるように配置されている第１の表示装置および第２の表示装置のそれぞれの表示画面に、当該操作データに基づく所定のゲーム処理によって生成された所定のゲーム画像を出力するゲーム装置であって、
前記第１の表示装置は、その表示画面の向きが重力方向軸に沿った方向に向くよう配置されており、
前記第２の表示装置は、その表示画面の向きが前記重力方向軸と直交する所定の軸方向に沿った方向に向くように配置されており、
前記動きセンサから出力されるデータに基づいて前記操作装置の姿勢を算出する姿勢算出部と、
前記操作装置が前記第１の表示部および第２の表示部のいずれを指示しているかを前記操作装置の姿勢に基づいて判別する判別部と、
前記判別部による判別結果に基づき、前記第１の表示装置および第２の表示装置のうちのいずれか一方の画面上の所定の位置を指示する処理を実行する指示処理部と、
前記指示処理部によって指示される指示位置に基づいて前記所定のゲーム処理を実行するゲーム処理部と、を備える、ゲーム装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、操作装置によって表示装置の画面上の位置を指示することが可能なゲームシステム、ゲーム装置、ゲーム処理プログラム、ゲーム処理方法に関する。
【背景技術】
【０００２】
従来、ユーザが操作装置を表示装置の画面の方に向けることによって画面上の位置を指示することが可能な入力システムがある。例えば、ジャイロセンサの検知結果から操作装置の姿勢を算出し、算出された姿勢に基づいて２つの画面のいずれかをポインティングする技術が知られている（例えば、特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１２−１０８７２２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記の技術では、操作装置自体の姿勢を算出するが、そのために加速度センサおよびジャイロセンサの双方から得られるデータを用いている。つまり、加速度センサおよびジャイロセンサというような複数のセンサを操作装置に搭載するという構成を採っていた。この点について、操作装置自体の構成をより簡易な構成にするという点において、改善の余地があった。
【０００５】
それ故に、本発明の目的は、異なる向きで配置された２画面を使い分けたゲーム処理を、簡易な構成の操作装置を用いて実現できるゲームシステムを提供することである。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、例えば以下のような構成例が挙げられる。
【０００７】
構成例の一例は、所定の動きセンサを備える操作装置によって表示装置の画面上において指示される指示位置に基づいて、所定のゲーム処理を行うゲームシステムであって、
第１の表示装置と、第２の表示装置と、姿勢算出部と、判別部と、指示処理部と、ゲーム処理部と、を備える。第１の表示装置は、表示画面の向きが重力方向軸に沿った方向に向くよう配置される。第２の表示装置は、表示画面の向きが重力方向軸と直交する所定の軸方向に沿った方向に向くように配置される。姿勢算出部は、動きセンサから出力されるデータに基づいて操作装置の姿勢を算出する。判別部は、操作装置が第１の表示装置および第２の表示装置のいずれの画面を指示しているかを姿勢算出部で算出された姿勢に基づいて判別する。指示処理部は、判別部による判別結果に基づき、第１の表示装置および第２の表示装置のうちのいずれか一方の画面上の所定の位置を指示する処理を実行する。ゲーム処理部は、指示処理部によって指示される指示位置に基づいて所定のゲーム処理を実行する。
【０００８】
上記構成例によれば、操作装置の構成として、例えば動きを検出するためのセンサとして加速度センサだけの搭載するような簡易な構成の操作装置を用いて、２画面を使い分けるゲーム処理が実行できる。特に、複数の動きセンサを操作装置に搭載せずともよいため、操作装置にかかるコスト面で有利である。また、操作装置の向きを判別する処理に関しても、姿勢算出のために複雑な計算処理を行わずとも、簡易な判定処理ですむため、処理負荷の軽減を図ることができる。
【０００９】
他の構成例として、判別部は、姿勢算出部で算出された操作装置の姿勢が、当該操作装置の筐体の外面のうちプレイヤが第１の表示装置あるいは第２の表示装置の表示画面を指示するときに当該表示画面と対向あるいはほぼ対向する関係となる面が、重力方向軸に沿う方向あるいは当該重力方向軸にほぼ沿うような方向に向くような姿勢である第１の姿勢か、当該表示画面と対向あるいはほぼ対向する関係となる面が、当該重力方向軸と直交する所定の軸方向に沿った方向あるいは当該所定の軸方向にほぼ沿った方向に向くような姿勢である第２の姿勢かを判別し、第１の姿勢と判別されたときは第１の表示装置を指示しており、第２の姿勢と判別されたときは第２の表示装置を指示していると判別するように構成してもよい。更に、動きセンサは加速度センサであってもよく、姿勢算出部は、加速度センサから得られる加速度データに基づいて操作装置の姿勢を判別するように構成してもよい。
【００１０】
上記構成例によれば、加速度データに基づき２つの画面のいずれを指示しているかを判別できる。これにより、簡易な構成の操作装置を用いて、２画面を使い分けるゲームを提供することができる。
【００１１】
他の構成例として、操作装置は、撮像部をさらに有し、ゲームシステムは、複数の表示装置にそれぞれ対応して設置されるマーカ部をさらに備え、マーカ部はそれぞれ、その向きが各マーカ部に対応する表示装置の画面の向きと同じ向きになるよう設置され、指示処理部は、撮像部による撮像画像内におけるマーカ部の位置に基づいて画面上の指示位置を算出する指示位置算出部を含めるように構成してもよい。更には、マーカ部は、発光部材を有しており、ゲームシステムは、マーカ部の点灯を制御するための点灯制御部を更に備え、第１の表示装置はマーカ部をその筐体内に内蔵した表示装置であり、第２の表示装置はテレビであり、当該テレビに対応するマーカ部は当該テレビの近傍に配置されるようにしてもよい。
【００１２】
上記構成例によれば、操作装置でマーカを撮像することによって画面上の指示位置を算出するゲームシステムにおいて、異なる向きに配置された２つの画面を使い分けるゲームを簡易な構成で提供することができる。
【００１３】
他の構成例として、ゲーム処理部は、操作装置が第１の表示装置の画面を指示している状態においてプレイヤに当該操作装置に対する所定の操作を行わせることで当該第１表示装置の画面に表示されている所定のオブジェクトが当該操作装置に取得されるような処理を行い、その後、当該操作装置が第２の表示装置を指示している状態で、当該プレイヤに所定の操作を行わせることで当該オブジェクトが当該第２の表示装置の画面内に移動して表示されるようなゲーム処理を実行するようにしてもよい。更に、ゲーム処理部は、第１表示装置の画面に表示されている所定のオブジェクトが操作装置に取得されるような処理が行われた後、当該操作装置が第２の表示装置を指示している状態でプレイヤが所定の操作を行うまでの間、当該操作装置の姿勢変化を検出する姿勢変化検出部と、姿勢変化検出部の検出結果に応じて所定のオブジェクトに関連づけられた所定のパラメータを変化させるパラメータ変更部と、所定のオブジェクトが第２の表示装置の画面に表示されるときに、パラメータ変更部によって変更されたパラメータを当該オブジェクトの表示に反映させる反映部とを含むように構成されていてもよい。
【００１４】
上記構成例によれば、２つの画面を用い、プレイヤにダイナミックな動きを行わせるような新しいゲームを提供することができる。
【発明の効果】
【００１５】
本実施形態によれば、簡易な構成を採用した操作装置を用いて２画面を使い分けるゲーム処理が実行可能となる。
【図面の簡単な説明】
【００１６】
【図１】本実施形態の一例である情報処理システムの全体像を示す模式図
【図２】ゲーム装置３の構成の一例を示すブロック図
【図３】コントローラ５の外観構成を示す斜視図
【図４】コントローラ５の構成を示すブロック図
【図５】端末装置７の外観構成を示す図
【図６】端末装置７の構成を示すブロック図
【図７】本実施形態において実行されるゲーム処理の概要を説明するための図
【図８】ゲーム画面の一例
【図９】ゲーム画面の一例
【図１０】本実施形態において実行されるゲーム処理の概要を説明するための図
【図１１】本実施形態において実行されるゲーム処理の概要を説明するための図
【図１２】ゲーム画面の一例
【図１３】本実施形態において実行されるゲーム処理の概要を説明するための図
【図１４】本実施形態において実行されるゲーム処理の概要を説明するための図
【図１５】ゲーム画面の一例
【図１６】ゲーム処理において用いられる各種データを示す図
【図１７】本実施形態のゲーム処理の詳細を示すフローチャート
【図１８】コントローラ５の向きとＺ軸加速度の対応を説明するための図
【発明を実施するための形態】
【００１７】
以下、本発明の一実施形態について説明する。
【００１８】
以下、図面を参照して、本発明の一実施形態に係るゲームシステム１について説明する。図１は、ゲームシステム１の外観図である。図１において、ゲームシステム１は、テレビジョン受像器等に代表される据置型のディスプレイ装置（以下、「テレビ」と記載する）２、据置型のゲーム装置３、コントローラ５、端末装置７、および、マーカ装置８を含む。ゲームシステム１は、コントローラ５を用いたゲーム操作に基づいてゲーム装置３においてゲーム処理を実行し、ゲーム処理によって得られるゲーム画像をテレビ２および／または端末装置７に表示するものである。
【００１９】
ゲーム装置３には、当該ゲーム装置３に対して交換可能に用いられる情報記憶媒体の一例である光ディスク（図示せず）が脱着可能に挿入される。
【００２０】
ゲーム装置３には、テレビ２が接続コードを介して接続される。テレビ２は、ゲーム装置３において実行されるゲーム処理によって得られるゲーム画像を表示する。なお、他の実施形態においては、ゲーム装置３と据置型の表示装置とは一体となっていてもよい。また、ゲーム装置３とテレビ２との通信は無線通信であってもよい。
【００２１】
テレビ２の画面の周辺（図１では画面の上側）には、マーカ装置８が設置される。詳細は後述するが、ユーザ（プレイヤ）はコントローラ５を動かすゲーム操作を行うことができ、マーカ装置８は、コントローラ５の動きや位置や姿勢等をゲーム装置３が算出するために用いられる。マーカ装置８は、その両端に２つのマーカ８Ｒおよび８Ｌを備えている。マーカ８Ｒ（マーカ８Ｌも同様）は、具体的には１以上の赤外ＬＥＤ（Ｌｉｇｈｔ Ｅｍｉｔｔｉｎｇ Ｄｉｏｄｅ）であり、テレビ２の前方に向かって赤外光を出力する。マーカ装置８はゲーム装置３に接続されており、ゲーム装置３はマーカ装置８が備える各赤外ＬＥＤの点灯を制御することが可能である。
【００２２】
コントローラ５は、自機に対して行われた操作の内容を表す操作データをゲーム装置３に与えるものである。コントローラ５とゲーム装置３とは無線通信によって通信可能である。本実施形態では、コントローラ５とゲーム装置３との間の無線通信には例えばＢｌｕｅｔｏｏｔｈ（ブルートゥース）（登録商標）の技術が用いられる。なお、他の実施形態においてはコントローラ５とゲーム装置３とは有線で接続されてもよい。また、ゲーム装置３は複数のコントローラと通信可能であり、所定台数のコントローラを同時に使用することによって複数人でゲームをプレイすることが可能である。本実施形態では、ゲームシステム１に含まれるコントローラ５は２つとし、２人でプレイする場合を想定して説明する。コントローラ５の詳細な構成については後述する。
【００２３】
端末装置７は、ユーザが把持可能な程度の大きさであり、ユーザは端末装置７を手に持って動かしたり、あるいは、端末装置７を自由な位置に配置したりして使用することが可能である。詳細な構成は後述するが、端末装置７は、表示手段であるＬＣＤ（Ｌｉｑｕｉｄ Ｃｒｙｓｔａｌ Ｄｉｓｐｌａｙ：液晶表示装置）７１、および、入力手段（後述するタッチパネル７２やモーションセンサ８２等）を備える。端末装置７とゲーム装置３とは無線（有線であってもよい）によって通信可能である。端末装置７は、ゲーム装置３で生成された画像（例えばゲーム画像）のデータをゲーム装置３から受信し、画像をＬＣＤ７１に表示する。また、端末装置７は、自機に対して行われた操作の内容を表す操作データをゲーム装置３に送信する。
【００２４】
図２は、情報処理装置の一例であるゲーム装置３のブロック図である。図２において、ゲーム装置３は、ＣＰＵ（制御部）１１およびメモリ１２、システムＬＳＩ１３、コントローラ通信部１４、コーデックＬＳＩ１５，端末装置通信部１６、およびＡＶ−ＩＣ（Ａｕｄｉｏ  Ｖｉｄｅｏ−Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）２０等を有する。
【００２５】
ＣＰＵ１１は、メモリ１２やシステムＬＳＩ１３等を用いて所定の情報処理プログラム（本実施形態ではゲームプログラム）を実行する。これにより、ゲーム装置３における各種機能（例えば、ゲーム処理）が実現される。ＣＰＵ１１は、システムＬＳＩ１３に接続されている。
【００２６】
システムＬＳＩ１３には、ＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｏｒ  Ｕｎｉｔ）１７、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）１８、入出力プロセッサ１９、等が含まれる。ＧＰＵ１７は、ＣＰＵ１１からのグラフィクスコマンド（作画命令）に従って画像を生成する。なお、本実施形態においては、ゲーム装置３は、テレビ２に表示するゲーム画像と、端末装置７に表示するゲーム画像との両方を生成する。以下では、テレビ２に表示されるゲーム画像を「テレビ用ゲーム画像」と呼び、端末装置７に表示されるゲーム画像を「端末用ゲーム画像」と呼ぶことがある。
【００２７】
ＤＳＰ１８は、オーディオプロセッサとして機能し、メモリ１２に記憶されるサウンドデータや音波形（音色）データを用いて、音声データを生成する。
【００２８】
入出力プロセッサ１９は、それに接続される構成要素との間でデータの送受信を実行したり、外部装置からのデータのダウンロードを実行したりする。入出力プロセッサ１９は、コントローラ通信部１４、コーデックＬＳＩ１５、ＡＶ−ＩＣ２０に接続される。コントローラ通信部１４にはアンテナ（図示せず）が接続される。コーデックＬＳＩ１５は端末装置通信部１６に接続され、端末装置通信部１６には図示しないアンテナが接続される。入出力プロセッサ１９は、コントローラ通信部１４を介して、コントローラ５との間でデータの送受信を実行したりする。例えば、入出力プロセッサ１９は、コントローラ５から送信される操作データを受信し、メモリ１２のバッファ領域に記憶（一時記憶）する。
【００２９】
また、ゲーム装置３において生成される画像および音声のうちで、テレビ２において出力される画像および音声のデータは、ＡＶ−ＩＣ２０によって読み出される。ＡＶ−ＩＣ２０は、図示しないＡＶコネクタを介して、読み出した画像データをテレビ２に出力するとともに、読み出した音声データをテレビ２に内蔵されるスピーカ２Ｌおよび２Ｒに出力する。これによって、テレビ２に画像が表示されるとともにスピーカ２Ｌおよび２Ｒから音声が出力される。
【００３０】
また、ゲーム装置３は、端末装置７との間で画像や音声等のデータを送受信することが可能である。入出力プロセッサ１９は、端末装置７へゲーム画像（端末用ゲーム画像）を送信する場合、ＧＰＵ１７が生成したゲーム画像のデータをコーデックＬＳＩ１５へ出力する。コーデックＬＳＩ１５は、入出力プロセッサ１９からの画像データに対して所定の圧縮処理を行う。端末装置通信部１６は、端末装置７との間で無線通信を行う。したがって、コーデックＬＳＩ１５によって圧縮された画像データは、端末装置通信部１６によって端末装置７へ送信される。また、ゲーム装置３は、画像データの他、音声データを端末装置７へ送信する。すなわち、入出力プロセッサ１９は、ＤＳＰ１８が生成した音声データを、コーデックＬＳＩ１５を介して端末装置通信部１６へ出力する。コーデックＬＳＩ１５は、音声データに対しても画像データと同様に圧縮処理を行う。端末装置通信部１６は、圧縮された画像データおよび音声データを、端末装置７へ送信する。
【００３１】
さらに、ゲーム装置３は、上記画像データおよび音声データの他に、必要に応じて各種の制御データを端末装置７へ送信する。制御データは、端末装置７が備える構成要素に対する制御指示を表すデータであり、例えばマーカ部（後述の図５に示すマーカ部７８Ｌおよび７８Ｒ）の点灯を制御する指示等を表す。入出力プロセッサ１９は、ＣＰＵ１１の指示に応じて制御データを端末装置７へ送信する。
【００３２】
また、ゲーム装置３は、端末装置７から各種データを受信可能である。例えば、端末装置７は、操作データを送信する。入出力プロセッサ１９は、端末装置７から受信したデータを、メモリ１２のバッファ領域に記憶（一時記憶）する。
【００３３】
次に、コントローラ５について説明する。図３は、コントローラ５の外観構成を示す斜視図である。図３において、コントローラ５は、例えばプラスチック成型によって形成されたハウジング５１を有している。また、コントローラ５は、操作部（図４に示す操作部６１）として、十字キー５２や複数の操作ボタン５３等を備える。また、コントローラ５はモーションセンサも備える。プレイヤは、コントローラ５に設けられた各ボタンを押下すること、および、コントローラ５自体を動かしてその位置や姿勢を変えることによってゲーム操作を行うことができる。
【００３４】
また、コントローラ５は撮像情報演算部６５（図４）を有しており、ハウジング５１前面には撮像情報演算部６５の光入射面が設けられる。光入射面は、マーカ８Ｒおよび８Ｌからの赤外光を少なくとも透過する材質で構成される。
【００３５】
図４は、コントローラ５の構成を示すブロック図である。コントローラ５は、操作部６１（各操作ボタン５２〜５３）、制御部６２、モーションセンサ６３、無線通信部６４、撮像情報演算部６５を備えている。コントローラ５は、自機に対して行われた操作内容を表すデータを操作データとしてゲーム装置３へ送信するものである。
【００３６】
制御部６２は、コントローラ５における動作を制御する。具体的には、制御部６２は、各入力部（操作部６１、モーションセンサ６３、撮像情報演算部６５）からの出力データを受け取り、操作データとして無線通信部６４を介してゲーム装置３へ送信する。
【００３７】
モーションセンサ６３は、コントローラ５の姿勢を検出するためのセンサである。本実施形態では、当該モーションセンサ６３として、加速度センサが備えられている。加速度センサは、ｘｙｚの３軸の加速度が検出可能である。より具体的には、当該加速度センサは、コントローラ５を基準とした上下方向（図３に示すｙ軸方向）、左右方向（図３に示すｘ軸方向）および前後方向（図３に示すｚ軸方向）の３軸方向に関してそれぞれ直線加速度を検出する。加速度センサは、各軸に沿った直線方向に関する加速度を検出するものであるため、加速度センサからの出力は３軸それぞれの直線加速度の値を表すものとなる。すなわち、検出された加速度は、コントローラ５を基準に設定されるｘｙｚ座標系（コントローラ座標系）における３次元のベクトルとして表される。なお、加速度センサが検出した加速度は、コントローラ５自体の向き（傾斜角度）や動きに対応して変化するので、ゲーム装置３は取得された加速度データを用いてコントローラ５の向きや動きを算出することができる。本実施形態では、ゲーム装置３は、取得された加速度データに基づいてコントローラ５の姿勢や傾斜角度等を算出する。
【００３８】
また、コントローラ５は、ゲーム装置３との無線通信が可能な無線通信部６４を備える。本実施形態においては、コントローラ５とゲーム装置３との間では無線通信が行われるが、他の実施形態においては有線で通信が行われてもよい。
【００３９】
また、コントローラ５は、撮像情報演算部６５を備える。撮像情報演算部６５は、撮像手段が撮像した画像データを解析してその中で輝度が高い領域を判別してその領域の重心位置やサイズなどを算出するためのシステムである。撮像情報演算部６５は、例えば最大２００フレーム／秒程度のサンプリング周期を有するので、比較的高速なコントローラ５の動きでも追跡して解析することができる。
【００４０】
撮像情報演算部６５は、赤外線フィルタ６５ａ、レンズ６５ｂ、撮像素子６５ｃ、および画像処理回路６５ｄを含んでいる。赤外線フィルタ６５ａは、コントローラ５の前方から入射する光から赤外線のみを通過させる。レンズ６５ｂは、赤外線フィルタ６５ａを透過した赤外線を集光して撮像素子６５ｃへ入射させる。撮像素子６５ｃは、例えばＣＭＯＳセンサやあるいはＣＣＤセンサのような固体撮像素子であり、レンズ６５ｂが集光した赤外線を受光して画像信号を出力する。ここで、撮像対象となる上記マーカ装置８、および、後述する端末装置７のマーカ部７８は、赤外光を出力するマーカで構成される。したがって、赤外線フィルタ６５ａを設けることによって、撮像素子６５ｃは、赤外線フィルタ６５ａを通過した赤外線だけを受光して画像データを生成するので、撮像対象（マーカ部７８および／またはマーカ装置８）の画像をより正確に撮像することができる。以下では、撮像素子６５ｃによって撮像された画像を撮像画像と呼ぶ。撮像素子６５ｃによって生成された画像データは、画像処理回路６５ｄで処理される。画像処理回路６５ｄは、撮像画像内における撮像対象の位置を算出する。画像処理回路６５ｄは、算出された位置を示す座標を制御部６２へ出力する。この座標のデータは、制御部６２によって操作データとしてゲーム装置３に送信される。以下では、上記座標を「マーカ座標」と呼ぶ。マーカ座標はコントローラ５自体の向き（傾斜角度）や位置に対応して変化するので、ゲーム装置３はこのマーカ座標を用いてコントローラ５の向きや位置を算出することができる。
【００４１】
また、図示は省略するが、コントローラ５は、音声出力手段であるスピーカも備えている。
【００４２】
次に、図５を参照して、端末装置７の構成について説明する。図５は、端末装置７の外観構成を示す図である。図５における（ａ）図は端末装置７の正面図であり、（ｂ）図は上面図であり、（ｃ）図は右側面図であり、（ｄ）図は下面図である。
【００４３】
図５に示されるように、端末装置７は、大略的には横長の長方形の板状形状であるハウジング７０を備える。ハウジング７０は、ユーザが把持することができる程度の大きさである。したがって、ユーザは、端末装置７を持って動かしたり、端末装置７の配置位置を変更したりすることができる。
【００４４】
端末装置７は、ハウジング７０の表面にＬＣＤ７１を有する。ＬＣＤ７１は、ハウジング７０の表面の中央付近に設けられる。また、端末装置７は、操作手段の一つとして、ＬＣＤ７１の画面上にタッチパネル７２を有する。更に、端末装置７は、操作手段の一つとして、２つのアナログスティック７５Ｌおよび７５Ｒと、十字ボタン７６や複数のボタン７７（図６に示す操作部８１に相当）を備えている。各アナログスティック７５Ｌおよび７５Ｒは、方向を指示するデバイスである。
【００４５】
また、端末装置７は、音声出力手段であるスピーカを備えている。図５（ｄ）図に示すように、ハウジング７０の下側側面にはスピーカ孔７９が設けられる。スピーカの出力音はこのスピーカ孔７９から出力される。本実施形態では、端末装置７は２つのスピーカを備えており、左スピーカおよび右スピーカのそれぞれの位置にスピーカ孔７９が設けられる。
【００４６】
また、図５の（ａ）図に示すように、端末装置７は、マーカ７８Ｌおよびマーカ７８Ｒからなるマーカ部７８をハウジング７０の表面に備えている。マーカ部７８は、ＬＣＤ７１の上側に設けられる。各マーカ７８Ｌおよびマーカ７８Ｒは、マーカ装置８の各マーカ８Ｒおよび８Ｌと同様、１以上の赤外ＬＥＤで構成される。マーカ部７８は、上述のマーカ装置８と同様、コントローラ５の動き等をゲーム装置３が算出するために用いられる。また、ゲーム装置３はマーカ部７８が備える各赤外ＬＥＤの点灯を制御することが可能である。
【００４７】
次に、図６を参照して、端末装置７の内部構成について説明する。図６は、端末装置７の内部構成を示すブロック図である。図６に示すように、端末装置７は、図５に示した構成の他、制御部８３、無線通信部８４、モーションセンサ８２等を備える。これらの電子部品は、電子回路基板上に実装されてハウジング７０内に収納される。
【００４８】
モーションセンサ８２は、端末装置７の姿勢を検出するためのセンサである。本実施形態では、当該モーションセンサ８２として、加速度センサ、角速度センサ、磁気センサが備えられている。
【００４９】
制御部８３は、ＵＩコントローラ８５やコーデック部８６等を含む。ＵＩコントローラ８５は、各種の入出力部に対するデータの入出力を制御する。コーデック部８６は、ゲーム装置３へ送信するデータに対する圧縮処理、および、ゲーム装置３から送信されたデータに対する伸張処理を行う。制御部８３は、タッチパネル７２、操作部８１（アナログスティック７５Ｌおよび７５Ｒ、十字ボタン７６、複数のボタン７７）、モーションセンサ８２から得られた操作データを、端末操作データとして無線通信部８４を介してゲーム装置３へ送信する。また、上述のように、ゲーム装置３から端末装置７へは、圧縮された画像データおよび音声データが送信される。これらのデータは無線通信部８４を介して制御部８３に送られる。制御部８３（のコーデック部８６）は、受信した画像データおよび音声データを伸張する。伸張された画像データはＬＣＤ７１へ出力され、画像がＬＣＤ７１に表示される（端末用ゲーム画像が表示されることになる）。また、伸張された音声データは図示しないサウンドＩＣへ出力され、サウンドＩＣは図示しないスピーカから音を出力させる（端末用ゲーム音声が出力されることになる）。
【００５０】
次に、図７〜図１５を参照して、本実施形態のゲームシステム１において実行されるゲーム処理の概要を説明する。ゲームシステム１は、コントローラ５を用いてテレビ２と端末装置７という２つの表示装置に対して画面上の位置を指定する操作（ポインティング操作）を行うことを可能とするものである。
【００５１】
本実施形態で想定するゲーム処理は、複数人でのプレイを想定する。以下の説明では、２人でプレイする場合を例にして説明する。そして、本ゲームは、各プレイヤがそれぞれコントローラ５を持ち、テレビ２の画面、または、端末装置７の画面をポインティングして所定の操作を行う（換言すれば、コントローラ５でマーカ装置８またはマーカ部７８を撮像するような操作を行う）ことによってゲームが進行する。
【００５２】
本実施形態で想定するゲームの具体的な画面例やプレイヤの操作例を説明する。まず、本実施形態では、端末装置７を、図７に示すように床に水平に置いてプレイする。図７は、本ゲームの開始直後の状態を示す模式図である。このとき、端末装置７のＬＣＤ７１が上面を向くようにして端末装置７が置かれる。換言すれば、端末装置７のＬＣＤ７１が重力方向軸に沿うような方向に向くように置かれる。これに対して、テレビ２の画面の向きは、重力方向軸と直交するような軸に沿った向きで配置されている。図７の例では、端末装置７のＬＣＤは、重力方向軸であるｙ軸の正方向を向いており、テレビ２の画面はｚ軸負方向を向いている。
【００５３】
また、当該端末装置７を置く位置については、テレビ２からある程度離れた位置に置くことが好ましい。例えば、テレビ２から１〜２ｍ以上離れた位置に端末装置７は置かれる。
【００５４】
このような端末装置７とテレビ２の位置関係を前提として、本実施形態では、次のようなゲーム処理を行う。本ゲームは、水汲みレースのゲームである。このゲームでは、コントローラ５を「お玉」に見立て、端末装置７を「小川」に見立て、テレビ２を「水を入れる器」と見立てる。そして、各プレイヤは、「お玉」であるコントローラ５を用いて、「小川」である端末装置７から「水」をすくう操作を行う。そして、この「水」を「水を入れる器」であるテレビ２まで運び、水を注ぐ操作を行う、というものである（このようなゲームを想定するために、端末装置７をテレビ２からある程度以上離れた位置に置くことが好ましいわけである）。
【００５５】
図８は、本ゲームにおけるテレビ２に表示されるテレビ側ゲーム画像の一例である。図８では、水を入れるための器オブジェクト１０１と、お玉オブジェクト１０２の画像が２つずつ表示されている。図８の左側のお玉オブジェクト１０２および器オブジェクト１０１は第１のプレイヤに割り当てられ、右側のお玉オブジェクト１０２および器オブジェクト１０１は第２のプレイヤに割り当てられているものとする。また、このお玉オブジェクト１０２は、各コントローラ５のポインティング位置を示すポインタとしての役割も兼ねている。すなわち、各コントローラの画面上のポインティング位置に対応する仮想ゲーム空間内の位置にお玉オブジェクト１０２が存在することになる。更に、お玉オブジェクト１０２の姿勢は、コントローラ５の姿勢とも連動している。具体的には、コントローラ５の前面（光入射面が設けられた面）をテレビ２に向け、上面（十字キー５２や複数の操作ボタン５３のある面）が上を向いている姿勢（以下、このような姿勢を水平姿勢と呼ぶ）のときは、お玉オブジェクト１０２も水平な状態（お玉の半球状の部分が上を向いた状態）となる。そして、この状態からコントローラをｚ軸周りに９０度（左右いずれでもよい）回転させると、お玉オブジェクト１０２もその回転方向に応じて９０度回転した姿勢（画像）に変化する。
【００５６】
図９は、端末装置７のＬＣＤ７１に表示される端末側ゲーム画像の一例である。ＬＣＤ７１には、水が流れている小川オブジェクト１０３の画像が表示されている。
【００５７】
次に、具体的なゲームの流れと操作の例を説明する。上記図７の状態で、例えばゲーム（水汲みレース）開始を知らせる表示がテレビ２の画面に表示される。その後、各プレイヤは、図１０に示すように、各コントローラ５を持ったまま、端末装置７の置かれた位置に向けて移動する。
【００５８】
次に、端末装置７の置かれた位置に到達すれば、図１１に示すように、各プレイヤは、コントローラ５の前面を端末装置７に向ける（これにより、端末装置７のマーカ部７８が、コントローラ５で撮像される状態となる）。つまり、各プレイヤは、コントローラ５でＬＣＤ７１をポインティングする。また、このときのコントローラ５の姿勢は、その前面がほぼ重力方向（真下）を向いているような姿勢となっている（以下、このような姿勢を下向き姿勢と呼ぶ）。なお、このときは、テレビ２にはお玉オブジェクト１０２は表示されていない状態である。コントローラ５がテレビ２側のマーカ装置８を撮像していないからである。
【００５９】
図１２は、このときの端末装置７に表示されるゲーム画像の一例である。図１２では、各プレイヤに対応するお玉オブジェクト１０２が表示されている状態となる。このような画面で、各プレイヤがコントローラ５を上に持ち上げる操作を行うと、小川オブジェクトから水をすくうことができる。具体的には、コントローラ５の姿勢が上記水平姿勢となるようにコントローラ５の姿勢を変化させることで、水をすくうことができる。なお、水をすくい上げる（水平姿勢に変化する）と、コントローラ５は端末装置７のマーカ部７８を撮像していない状態となるため、お玉オブジェクト１０２はＬＣＤ７１側の画像（端末用ゲーム画像）からは消去されることになる。
【００６０】
水をすくった後、各プレイヤは、図１３に示すように、テレビ２のある位置までコントローラ５を持って移動する。この移動の際に、本実施形態では、コントローラ５の姿勢変化を検出し、お玉に見立てたコントローラ５から水がこぼれているか否かの判定も行っている。そのため、各プレイヤはコントローラ５を水平姿勢のまま極力揺らさないようにして（つまり、お玉から水がこぼれないように）、テレビ２まで移動することが求められる。
【００６１】
そして、図１４に示すように各プレイヤがテレビ２に到達すると、コントローラのポインティング位置に対応する画面上（仮想ゲーム空間内）の位置にお玉オブジェクト１０２が表示される。各プレイヤは、図１５に示すように、各自に割り当てられた器オブジェクト１０１の上方をポインティングし、コントローラ５を適宜ひねる（ｚ軸周りに右または左に９０度回転させる）操作を行うことで、器オブジェクト１０１に水を注ぎ入れることができる。なお、このときの水量については、端末装置７からテレビ２までに移動中に「こぼれた」分が反映された量となっている。つまり、移動中に「こぼれた」分が差し引かれた水量となっている。
【００６２】
そして、上記のような、プレイヤがテレビ２と端末装置７との間を往復するような動きを繰り返すことで、本実施形態にかかる水汲みレースゲームが進行する。
【００６３】
ところで、上記のようなゲームにおいては、コントローラ５がテレビ２の画面をポインティングしているか、端末装置７のＬＣＤ７１の画面をポインティングしているかを判定する必要がある。特に、本実施形態における上記マーカ装置８およびマーカ部７８は、基本的には単に赤外光を発する装置であることから、それ単体では識別できない構成となっている（つまり、個別に識別用の信号等を発する構成ではない）。そのため、例えば、コントローラ５から送信されてくる操作データにおいて、マーカを認識していることが示されている（例えばマーカ座標のデータとして有効な値が操作データに含まれている）としても、このデータだけでは、テレビ２側のマーカ装置を認識しているのか、端末装置７のマーカ部を認識しているのかが判別できない。そこで、本実施形態では、コントローラ５から出力される加速度データを用いてコントローラ５（の前面）が向いている方向を算出し、テレビ２側をポインティングしているのか、端末装置７をポインティングしているのかを判別するという構成を採る。
【００６４】
具体的には、本実施形態では、加速度データのｚ軸加速度の値に基づき、コントローラ５が上記のような下向き姿勢であるか、水平姿勢であるかを判定する。上記のように、端末装置７は床に水平にして置くという構成のため、端末装置７をコントローラ５でポインティングしようとすると、コントローラ５の前面を重力方向側に向ける必要がある。そのため、コントローラ５の前面が真下、あるいは、ほぼ真下を向いているような姿勢であれば、プレイヤはコントローラ５を端末装置７に向けていると推測することができる。
【００６５】
このように、本実施形態では、コントローラ５の向き（姿勢）、すなわち、コントローラ５がテレビ２をポインティングしているのか、端末装置７をポインティングしているのかを加速度データに基づいて判別する。これにより、上記のような配置関係となる２つの画面を用いたゲーム処理において、モーションセンサとして加速度センサだけを搭載しているような簡易な構成のコントローラであっても、当該２つの画面を使いわける処理が可能となる。
【００６６】
次に、図１６〜図１８を参照して、本実施形態におけるゲーム装置３の動作をより詳細に説明する。まず、ゲーム処理において用いられる各種データについて説明する。図１６は、ゲーム処理において用いられる各種データを示す図である。図１６においては、ゲーム装置３のメモリ１２に記憶される主なデータを示す。図１６に示すように、ゲーム装置３のメモリ１２には、ゲームプログラム２０１、操作データ２０２、および処理用データ２０６が記憶される。なお、メモリ１２には、図１６に示すデータの他、ゲームに登場する各種オブジェクトの画像データやゲームに使用される音声データ等、ゲームに必要なデータが記憶される。
【００６７】
ゲームプログラム２０１は、ゲーム装置３に電源が投入された後の適宜のタイミングで光ディスクからその一部または全部が読み込まれてメモリ１２に記憶される。なお、ゲームプログラム２０１は、光ディスクに代えて、図示しないフラッシュメモリやゲーム装置３の外部装置から（例えばインターネットを介して）取得されてもよい。また、ゲームプログラム２０１に含まれる一部（例えば、コントローラ５および／または端末装置７の姿勢を算出するためのプログラム）については、ゲーム装置３内に予め記憶されていてもよい。
【００６８】
操作データ２０２は、コントローラ５に対する各ユーザの操作を表すデータである。図１６では、プレイヤ１操作データ２０２ａ、プレイヤ２操作データ２０２ｂが操作データ２０２に含まれている（以下では総称して操作データと呼ぶ）。操作データ２０２は、コントローラ５から送信されてゲーム装置３において取得される。操作データ２０２は、マーカ座標データ２０３、操作ボタンデータ２０４、および、加速度データ２０５を含む。なお、メインメモリには、最新の（最後に取得された）ものから順に所定個数の操作データが記憶されてもよい。
【００６９】
マーカ座標データ２０３は、撮像情報演算部６５の画像処理回路６５ｄによって算出される座標、すなわちマーカ座標を表すデータである。マーカ座標は、撮像画像に対応する平面上の位置を表すための２次元座標系で表現され、マーカ座標データ２０３は、当該２次元座標系における座標値を表す。なお、撮像素子６５ｃによってマーカ装置８の２つのマーカ８Ｌおよび８Ｒが撮像される場合には、２つのマーカ座標が算出され、マーカ座標データ２０３は２つのマーカ座標を表す。一方、撮像素子６５ｃの撮像可能な範囲内にマーカ８Ｌおよび８Ｒのいずれか一方が位置しない場合には、撮像素子６５ｃによって１つのマーカのみが撮像され、１つのマーカ座標のみが算出される。その結果、マーカ座標データ２０３は１つのマーカ座標を表す。また、撮像素子６５ｃの撮像可能な範囲内にマーカ８Ｌおよび８Ｒの両方が位置しない場合には、撮像素子６５ｃによってマーカが撮像されず、マーカ座標は算出されない。したがって、マーカ座標データ２０３は、２つのマーカ座標を表す場合もあるし、１つのマーカ座標を表す場合もあるし、マーカ座標がないことを表す場合もある（なお、上記のことは、端末装置７のマーカ部７８に対しても同じことがいえる）。
【００７０】
なお、コントローラ５からゲーム装置３へは、上記マーカ座標データに代えて、撮像画像の画像データ自体が送信されてもよい。つまり、コントローラ５は、撮像装置（撮像素子４０）による撮像画像に関する撮像データとして、マーカ座標データを送信してもよいし、画像データ自体を送信してもよい。撮像画像の画像データをコントローラ５から受信する場合、ゲーム装置３は、撮像画像の画像データから上記マーカ座標を算出し、マーカ座標データとしてメインメモリに記憶するようにしてもよい。
【００７１】
操作ボタンデータ９５は、コントローラ５に設けられる各操作ボタンに対する入力状態を表すデータである。
【００７２】
加速度データ２０５は、コントローラ５のモーションセンサ６３によって検出された加速度（加速度ベクトル）を表すデータである。ここでは、加速度データ２０５は、図３に示すｘｙｚの３軸の方向に関する加速度を各成分とする３次元の加速度を表すものであるが、他の実施形態においては、任意の１以上の方向に関する加速度を表すものであればよい。
【００７３】
処理用データ２０６は、後述するゲーム処理（図１７）において用いられるデータである。処理用データ２０６は、プレイヤ１ゲームデータ２０６ａ、プレイヤ２ゲームデータ２０６ｂ等を含む。なお、図１６に示すデータの他、処理用データ２０６は、各種オブジェクトに設定される各種パラメータを表すデータ等、ゲーム処理において用いられる各種データを含む。
【００７４】
プレイヤ１ゲームデータ２０６ａは、第１のプレイヤのために用いられるゲームデータである。また、プレイヤ２ゲームデータ２０６ｂは、第２のプレイヤのために用いられるゲームデータである。本実施形態では、２人プレイの場合を例としているため、２人分のデータを挙げているが、当該ゲームデータは、同時に遊ぶプレイヤの数に応じて適宜生成される。各プレイヤのゲームデータはそれぞれ、操作モードデータ２０７、水汲みフラグ２０８、水量データ２０９を含む。
【００７５】
操作モードデータ２０７は、コントローラ５の操作モードを示すデータである。本実施形態では、次の３つの操作モードのいずれか一つを示すデータが、後述する処理によって操作モードデータ２０７に適宜設定される。本実施形態では、テレビモード、端末装置モード、未指定モードの３つのモードを設定する。テレビモードは、コントローラ５（の前面）がテレビを向いていると仮定するモードである。端末装置モードは、コントローラ５が端末装置７を向いていると仮定するモードである。そして、未指示モードは、コントローラ５がテレビ２にも端末装置７にも向いていないと仮定するモードである。なお、ゲーム開始時の初期値としては、未指示モードが設定されるとする。
【００７６】
水汲みフラグ２０８は、上記のようにプレイヤがお玉に見立てたコントローラ５で水をすくう操作を行い、器オブジェクトに運んでいる状態であるか否かを示すフラグである。オンであれば、水をすくって運んでいる状態（お玉に水がある状態）であるとする。初期値はオフに設定される。また、水量データ２０９は、プレイヤが運んでいる水の量を示すパラメータである。上記のように、端末装置７からテレビ２に向けてプレイヤが移動しているときに、「水がこぼれる」ことで当該水の量は減少する。
【００７７】
次に、図１７のフローチャートを参照して、ゲーム装置３のＣＰＵ１１によって実行されるゲーム処理の流れを説明する。なお、図１７に示すフローチャートにおいては、主に、コントローラ５に関する操作に基づいて行われる、コントローラ５がテレビ２および端末装置７のいずれをポインティングしているかの判定に関する処理を中心に説明し、本実施形態に直接関連しない他の処理については詳細な説明を省略する。
【００７８】
なお、図１７に示すフローチャートの各ステップの処理は、単なる一例に過ぎず、同様の結果が得られるのであれば、各ステップの処理順序を入れ替えてもよい。また、変数の値や、判断ステップで利用される閾値も、単なる一例に過ぎず、必要に応じて他の値を採用してもよい。また、本実施形態では、上記フローチャートの各ステップの処理をＣＰＵ１１が実行するものとして説明するが、上記フローチャートの一部のステップの処理を、ＣＰＵ１１以外のプロセッサや専用回路が実行するようにしてもよい。
【００７９】
ゲーム処理が開始されると、ＣＰＵ１１は図示しない初期処理を実行する。当該初期処理は、仮想のゲーム空間を構築し、ゲーム空間に登場する各オブジェクトを初期位置に配置したり、ゲーム処理で用いる各種パラメータの初期値を設定したりする処理である。そして、初期処理が終了すれば、図１７のステップＳ１〜Ｓ１３の一連の処理からなる処理ループが、プレイヤ毎に、所定時間（１フレーム時間）に１回の割合で繰り返し実行される。
【００８０】
まずステップＳ１において、ＣＰＵ１１は、以下の処理の対象とするプレイヤ（以下、処理対象プレイヤと呼ぶ）を未処理のプレイヤの中から選択する。本実施形態では、まず第１のプレイヤを処理対象として選択し、次に第２のプレイヤを処理対象として選択する。
【００８１】
次に、ステップＳ２において、ＣＰＵ１１は、処理対象プレイヤのコントローラ５から操作データを取得する。ここで、コントローラ５は、モーションセンサ６３、撮像情報演算部６５および操作部６１から出力される各データを操作データとしてゲーム装置３へ繰り返し送信する。ゲーム装置３は、コントローラ５からのデータを逐次受信して上記操作データとしてメモリ１２に逐次記憶する。ステップＳ２において、ＣＰＵ１１は、処理対象プレイヤにかかる最新の操作データ２０２をメモリ１２から読み出す。なお、本実施形態では端末装置７は操作装置としては用いられないので、ＣＰＵ１１は端末装置７から操作データを取得しないものとして説明を行う。
【００８２】
次に、ステップＳ３において、ＣＰＵ１１は、処理対象プレイヤのコントローラ５によってマーカ装置８またはマーカ部７８（以下、総称してマーカと呼ぶこともある）が認識されているか否かを判定する。具体的には、ＣＰＵ１１は、コントローラ５の撮像手段（撮像素子６５ｃ）によってマーカ装置８あるいはマーカ部７８が撮像されているか否かを判定する。ステップＳ３の判定は、メモリ１２に記憶されているマーカ座標データ２０３を参照することによって行うことができる。ここでは、マーカ座標データ２０３が２つのマーカ座標を表す場合、マーカ装置８またはマーカ部７８が撮像されている（すなわち、マーカが認識されている）と判定し、マーカ座標データ２０３が１つのマーカ座標のみを表す場合、または、マーカ座標がないことを表す場合、マーカ装置８またはマーカ部７８が撮像されていない（マーカが認識されていない）と判定する。
【００８３】
上記判定の結果、マーカが認識されていないと判定されたときは（ステップＳ３でＮＯ）、ステップＳ９において、ＣＰＵ１１は、処理対象プレイヤにかかる操作モードデータ２０７に「未指示モード」を設定する。その後、後述するステップＳｘに処理が進められる。一方、マーカが認識されていると判定されたときは（ステップＳ３でＹＥＳ）、ステップＳ４において、ＣＰＵ１１は、コントローラ５の加速度に基づき、処理対象プレイヤのコントローラ５が上記水平姿勢といえる状態であるか否かを判定する。具体的には、メモリ１２から加速度データ２０５を読み出して、加速度データ２０５のＺ軸加速度の値が０.２より小さいか否かを判定する。ここで、コントローラ５がほぼ静止している状態では、コントローラ５に対して加えられる加速度は重力加速度に相当する。したがって、この状態では、検出された重力加速度の方向（重力方向）に対するコントローラ５の向き（姿勢）を当該加速度データ２０５に基づいて算出することができる。そして、本実施形態では、上記Ｚ軸加速度の値とコントローラ５の前面の向きの対応関係は、図１８に示すような関係であるとする。まず、Ｚ軸加速度の値は、＋１〜−１の範囲であるとする。そして、コントローラ５の前面（コントローラのローカル座標系におけるＺ軸正方向）が真下を向いているときは、Ｚ軸加速度は“＋１”であるとする。逆に、真上を向いているときは、“−１“であり、水平状態のときは”０”であるとする。上記のような関係を前提として、ＣＰＵ１１は、Ｚ軸加速度の値が０.２より小さいか否かを判定する。０.２より小さいときは、コントローラ５は上記水平姿勢、または、ほぼ水平とみなせる程度の姿勢であると考えられる（換言すれば、少なくとも下向きの姿勢ではないと考えられる）。
【００８４】
当該判定の結果、Ｚ軸加速度の値が０.２より小さいときは（ステップＳ４でＹＥＳ）、ＣＰＵ１１は、ステップＳ１０において、ＣＰＵ１１は、処理対象プレイヤの操作モードデータ２０７に「テレビモード」を設定する。その後、後述するステップＳ１１に処理が進められる。一方、Ｚ軸加速度の値が０.２より小さくないときは（ステップＳ４でＮＯ）、ステップＳ５において、ＣＰＵ１１は、上記操作モードデータ２０７を参照して、現在の操作モードが「端末装置モード」であるか否かを判定する。この判定の結果、「端末装置モード」ではないときは（ステップＳ５でＮＯ）、プレイヤがテレビ２から端末装置７の位置まで移動して、コントローラ５を端末装置７に向けた直後に相当するような状態と考えられる。この場合は、ステップＳ６において、ＣＰＵ１１は、コントローラ５の加速度に基づき、コントローラ５が下向き姿勢であるか否かを判定する。換言すれば、端末装置７をコントローラ５でポインティングしている状態であるか否かを判定する。具体的には、メモリ１２から加速度データ２０５を読み出して、加速度データ２０５のＺ軸加速度の値が０.８より大きいか否かを判定する。当該判定の結果、０.８より大きいときは（ステップＳ６でＹＥＳ）、ステップＳ７において、ＣＰＵ１１は、操作モードデータ２０７に「端末装置モード」を設定する。その後、後述するステップＳ１１に処理が進められる。一方、Ｚ軸加速度の値が０.８より大きくないときは（ステップＳ６でＮＯ）、上記ステップＳ９で、ＣＰＵ１１は、操作モードデータ２０７に「未指示モード」を設定する。その後、後述するステップＳ１１に処理が進められる。
【００８５】
一方、上記ステップＳ５の判定の結果、現在の操作モードが「端末装置モード」のときは（ステップＳ５でＹＥＳ）、ステップＳ８において、ＣＰＵ１１は、Ｚ軸加速度の値が０.７より大きいか否かを判定する。この判定の目的は、基本的には上記ステップＳ６における判定の目的と同じものではあるが、その判定にかかる閾値を少し下げたものとなっている。これは、既に「端末操作モード」であるときは、現在、端末装置７にコントローラ５を向けている状態が継続している（例えば、水汲み操作中）と考えられる。このときは、操作モードを変わりにくくする（下向き姿勢が維持しやすいようにする）ことで操作性を高めるために、閾値を少し下げて判定を行うものである。これにより、例えば水汲み操作中に端末操作モードが解除されてしまい、水汲みがうまくいかなかったりすることを防ぐことができる。そして、当該判定の結果、Ｚ軸加速度の値が０.７より大きいときは（ステップＳ８でＹＥＳ）、上記ステップＳ７の処理が実行される。一方、Ｚ軸加速度の値が０.７より大きくないときは（ステップＳ８でＮＯ）、上記ステップＳ９の処理が実行される。
【００８６】
次に、ステップＳ１１において、ＣＰＵ１１は、上記操作モードに応じたゲーム処理を実行する。具体的には、以下のようなゲーム処理が処理対象プレイヤに対して実行される。
[Ａ.端末装置モードのときの処理]
マーカが認識されており、操作モードデータ２０７が端末装置モードを示しているときは、ＣＰＵ１１は、マーカ座標データ２０３に基づいてＬＣＤ７１のポインティング位置を算出する。そして、その位置に、当該処理対象のプレイヤに対応するお玉オブジェクト１０２を配置する。この際、加速度データやマーカ座標データに基づいてコントローラ５の姿勢を適宜算出し、お玉オブジェクト１０２の姿勢に反映させる。
【００８７】
また、水汲み操作が行われたとき（すなわち、上記ステップＳ８でＮＯと判定されたとき）に、ＣＰＵ１１は、水汲みフラグ２０８をオンに設定し、更に、水量データ２０９に所定の値、例えば“１００”を設定する。また、この際、水がすくい上げられたことを示す効果音をコントローラ５および端末装置７のスピーカから出力してもよい。
【００８８】
その他、コントローラ５が端末装置７を向いている場合を想定した各種ゲーム処理が適宜実行される。
【００８９】
[Ｂ.非指定モードのときの処理]
操作モードデータ２０７が「非指定モード」を示しているときは、コントローラ５がテレビ２にも端末装置７にも向いていない状態であると推定される。このときは、ＣＰＵ１１は、お玉オブジェクト１０２がテレビ用ゲーム画像あるいは端末用ゲーム画像に含まれないように、仮想ゲーム空間からお玉オブジェクト１０２を一旦消去する。
【００９０】
また、ＣＰＵ１１は水汲みフラグ２０８を参照し、処理対象プレイヤが端末装置７からテレビ２に向かって移動中の状態であるか否かを判定する。水汲みフラグ２０８がオンであれば、当該移動中の状態と推定される。このときは、コントローラ５から得られる加速度データ２０５に基づき、コントローラ５に発生している「揺れ」が発生しているか否かを判定する。また、発生しているときは、その「揺れ」の大きさを算出する。そして、この「揺れ」の大きさに応じて、水量データ２０９の値を減少させていく。つまり、プレイヤが水を運んでいる途中、お玉の揺れに応じて水がこぼれるという状況を再現するような処理を行う。また、この処理の際、お玉から水がこぼれたことを示す効果音をコントローラ５のスピーカから出力するようにしてもよい。
【００９１】
その他、コントローラ５がテレビ２にも端末装置７にも向いていない場合を想定した各種ゲーム処理が適宜実行される。
【００９２】
[Ｃ.テレビモードのときの処理]
操作モードデータ２０７が「テレビモード」を示しているときは、コントローラ５がテレビ２に向いている状態であると推定される。このときは、ＣＰＵ１１は、コントローラ５から得られるマーカ座標データ２０３に基づいて画面上のポインティング座標を算出する。そして、当該ポインティング座標に対応する仮想ゲーム空間内の位置に、処理対象プレイヤのお玉オブジェクト１０２を配置する。
【００９３】
また、ＣＰＵ１１は、水汲みフラグ２０８がオンか否かを判定する。そして、オンのときは、更に、加速度データ２０５やマーカ座標データ２０３に基づいてコントローラ５の姿勢変化を検出し、水を器オブジェクトに注ぐような姿勢変化（Ｚ軸周りの回転）が発生すれば、ＣＰＵ１１は、そのときの水量データ２０９の値に応じた量の水オブジェクトが器オブジェクト１０１に注ぎ入れられる様子を表示するための処理を行う。また、この処理に伴い、ＣＰＵ１１は、水汲みフラグ２０８にオフを設定し、水量データ２０９に“０”を設定する。
【００９４】
その他、コントローラ５がテレビ２を向いている場合を想定した各種ゲーム処理が適宜実行される。
【００９５】
このように、ステップＳ１１では、そのときの操作モードに応じたゲーム処理が適宜実行され、仮想ゲーム空間の状態に反映される。
【００９６】
次に、ステップＳ１２において、ＣＰＵ１１は、すべてのプレイヤについて上記のような処理を行ったか否かを判定する。その結果、まだ未処理のプレイヤが残っているときは（ステップＳ１２でＮＯ）、上記ステップＳ１に戻り、処理が繰り返される、一方、すべてのプレイヤを処理したときは（ステップＳ１２でＹＥＳ）、ステップＳ１３において、上記ステップＳ１１におけるゲーム処理が反映された仮想ゲーム空間を示すテレビ用ゲーム画像および端末用ゲーム画像を生成し、テレビ２、およびＬＣＤ７１にそれぞれ表示する。
【００９７】
以上で、本実施形態にかかるゲーム処理の説明を終了する。
【００９８】
このように、本実施形態では、２つの画面を用いるゲームであって、一方の画面を重力方向軸に沿った向きになるよう配置し、他方の画面は重力方向軸とは異なる軸（重力方向軸と直交する軸が好ましい）に沿った向きになるよう配置してプレイする。そして、このような配置の画面のいずれをポインティングしているかを加速度データに基づいて判定するような構成としている。これにより、加速度センサを備えるコントローラのような簡易な構成のコントローラを用いて、上記の配置のような２つの画面を使い分けるゲーム処理を実行することが可能となり、新しい遊び方をプレイヤに提供することができる。特に、テレビ２と端末装置７とを互いにある程度離れた位置に配置することで、プレイヤにダイナミックな動きを行わせるような新たな遊び方を提供することができる。
【００９９】
なお、上記実施形態では、端末装置７のＬＣＤ７１が上向きになるように配置する例を示したが、これとは逆に、プレイヤの頭上になるような位置にＬＣＤ７１が真下を向くように配置してもよい。この場合は、上述の実施形態で、コントローラ５の前面が下向きであるか否かを判定するところを、上向きであるか否かを判定するように構成すればよい。
【０１００】
また、上記実施形態では、操作モードとして、テレビモード、端末装置モード、非指示モードの３つを利用する処理を示していた。これに限らず、例えば、テレビモードおよび端末装置モードの２つだけを用いるような構成としてもよい。つまり、ゲーム処理において、コントローラ５がテレビ２、または端末装置７のいずれかを常にポインティングしていることを前提としたゲーム処理を実行するようにしてもよい。
【０１０１】
また、上記実施形態においては、コントローラ５がテレビ２と端末装置７のいずれのほうを向いているかを判定し、その結果に応じたゲーム処理を実行するための一連の処理が単一の装置において実行される場合を説明したが、他の実施形態においては、上記一連の処理が複数の情報処理装置からなる情報処理システムにおいて実行されてもよい。例えば、上記ゲーム装置３と、当該ゲーム装置３とネットワークを介して通信可能なサーバ側装置とを含む情報処理システムにおいて、上記一連の処理のうちの一部の処理がサーバ側装置によって実行されてもよい。さらには、ゲーム装置３と、当該ゲーム装置３とネットワークを介して通信可能なサーバ側装置とを含む情報処理システムにおいて、上記一連の処理のうちの主要な処理がサーバ側装置によって実行され、当該ゲーム装置３では一部の処理が実行されてもよい。また、上記情報処理システムにおいて、サーバ側のシステムは、複数の情報処理装置によって構成され、サーバ側で実行するべき処理を複数の情報処理装置が分担して実行してもよい。
【符号の説明】
【０１０２】
１  ゲームシステム
２  テレビ
３  ゲーム装置
５  コントローラ
７  端末装置
８  マーカ装置
１１  ＣＰＵ
１２  メモリ
６３  モーションセンサ
６５  撮像情報演算部
７１  ＬＣＤ
７８  マーカ部
【図１】
2014188051.tif 000003
【図２】
2014188051.tif 000004
【図３】
2014188051.tif 000005
【図４】
2014188051.tif 000006
【図５】
2014188051.tif 000007
【図６】
2014188051.tif 000008
【図７】
2014188051.tif 000009
【図８】
2014188051.tif 000010
【図９】
2014188051.tif 000011
【図１０】
2014188051.tif 000012
【図１１】
2014188051.tif 000013
【図１２】
2014188051.tif 000014
【図１３】
2014188051.tif 000015
【図１４】
2014188051.tif 000016
【図１５】
2014188051.tif 000017
【図１６】
2014188051.tif 000018
【図１７】
2014188051.tif 000019
【図１８】
2014188051.tif 000020