(57)【特許請求の範囲】
【請求項１】
操作部および第１表示部を有する端末装置と、複数の操作装置とを含むゲームシステムであって、
所定のゲーム空間に配置される第１オブジェクトを前記端末装置に対する操作に応じて移動させる第１制御部と、
前記操作装置の数に応じて各操作装置に対応して前記ゲーム空間に配置される第２オブジェクトを、各操作装置に対する操作に応じてそれぞれ移動させる第２制御部と、
前記ゲーム空間において前記第１オブジェクトの位置に基づいて第１仮想カメラを設定する第１カメラ設定部と、
前記ゲーム空間において前記第１オブジェクトおよび複数の前記第２オブジェクトを視野範囲に含むように、前記第１オブジェクトおよび各第２オブジェクトの位置に基づいて第２仮想カメラを設定する第２カメラ設定部と、
前記第１仮想カメラから見た前記ゲーム空間を表す第１ゲーム画像を前記第１表示部に表示させる第１表示制御部と、
前記第２仮想カメラから見た前記ゲーム空間を表す第２ゲーム画像を、前記端末装置とは別体の所定の表示装置に表示させる第２表示制御部とを備える、ゲームシステム。
【請求項２】
前記第２カメラ設定部は、前記第２仮想カメラの視野範囲が所定の大きさとなることを限度として第２仮想カメラを設定し、
前記第２制御部は、前記第２仮想カメラの視野範囲が限度となる場合、当該視野範囲から外へ出ないように各第２オブジェクトを制御し、
前記第１制御部は、前記第２仮想カメラの視野範囲とは独立して、前記端末装置に対する操作に応じて前記第１オブジェクトを移動させる、請求項１に記載のゲームシステム。
【請求項３】
前記第２カメラ設定部は、前記ゲーム空間において各第２オブジェクトが移動可能な所定平面に対する俯角が前記第１仮想カメラの俯角よりも大きくなるように前記第２仮想カメラの向きを設定する、請求項１または請求項２に記載のゲームシステム。
【請求項４】
前記第１カメラ設定部は、前記端末装置に対する操作に応じて前記所定平面に垂直な軸回りに前記第１仮想カメラの向きを変化させる、請求項３に記載のゲームシステム。
【請求項５】
前記ゲーム空間を表すゲーム画像は前記操作装置には表示されない、請求項１から請求項４のいずれか１項に記載のゲームシステム。
【請求項６】
前記操作装置は、前記第２ゲーム画像に対して補助的に用いるためのサブゲーム画像を表示する第２表示部を有する、請求項１から請求項４のいずれか１項に記載のゲームシステム。
【請求項７】
前記第１制御部は、前記第１オブジェクトの周囲の所定範囲に影響を及ぼす所定の動作を前記第１オブジェクトに行わせることが可能であり、
前記第２制御部は、前記第２オブジェクトの周囲の範囲であって前記所定範囲よりも狭い範囲に影響を及ぼす、前記所定の動作と同種の効果を有する動作を前記第２オブジェクトに行わせることが可能である、請求項１から請求項６のいずれか１項に記載のゲームシステム。
【請求項８】
前記端末装置は、前記第１表示部の画面上に設けられるタッチパネルをさらに有し、
前記第１制御部は、前記タッチパネルに対する入力に基づいて前記第１オブジェクトを制御し、
前記第２制御部は、前記操作装置に設けられる操作ボタンに対する入力に基づいて前記第２オブジェクトを制御する、請求項１から請求項７のいずれか１項に記載のゲームシステム。
【請求項９】
操作部および表示部を有する端末装置と、複数の操作装置と通信可能なゲーム装置であって、
所定のゲーム空間に配置される第１オブジェクトを前記端末装置に対する操作に応じて移動させる第１制御部と、
前記操作装置の数に応じて各操作装置に対応して前記ゲーム空間に配置される第２オブジェクトを、各操作装置に対する操作に応じてそれぞれ移動させる第２制御部と、
前記ゲーム空間において前記第１オブジェクトの位置に基づいて第１仮想カメラを設定する第１カメラ設定部と、
前記ゲーム空間において前記第１オブジェクトおよび複数の前記第２オブジェクトを視野範囲に含むように、前記第１オブジェクトおよび各第２オブジェクトの位置に基づいて第２仮想カメラを設定する第２カメラ設定部と、
前記第１仮想カメラから見た前記ゲーム空間を表す第１ゲーム画像を前記端末装置へ出力する第１画像出力部と、
前記第２仮想カメラから見た前記ゲーム空間を表す第２ゲーム画像を、前記表示部とは別体の所定の表示装置へ出力する第２画像出力部とを備える、ゲーム装置。
【請求項１０】
操作部および表示部を有する端末装置と、複数の操作装置と通信可能なゲーム装置のコンピュータにおいて実行されるゲームプログラムであって、
所定のゲーム空間に配置される第１オブジェクトを前記端末装置に対する操作に応じて移動させる第１制御手段と、
前記操作装置の数に応じて各操作装置に対応して前記ゲーム空間に配置される第２オブジェクトを、各操作装置に対する操作に応じてそれぞれ移動させる第２制御手段と、
前記ゲーム空間において前記第１オブジェクトの位置に基づいて第１仮想カメラを設定する第１カメラ設定手段と、
前記ゲーム空間において前記第１オブジェクトおよび複数の前記第２オブジェクトを視野範囲に含むように、前記第１オブジェクトおよび各第２オブジェクトの位置に基づいて第２仮想カメラを設定する第２カメラ設定手段と、
前記端末装置に表示されるゲーム画像であって、前記第１仮想カメラから見た前記ゲーム空間を表す第１ゲーム画像を生成する第１画像生成手段と、
前記表示部とは別体の所定の表示装置に表示されるゲーム画像であって、前記第２仮想カメラから見た前記ゲーム空間を表す第２ゲーム画像を生成する第２画像生成手段として前記コンピュータを機能させる、ゲームプログラム。
【請求項１１】
操作部および第１表示部を有する端末装置と、複数の操作装置とを含むゲームシステムにおいて実行されるゲーム処理方法であって、
所定のゲーム空間に配置される第１オブジェクトを前記端末装置に対する操作に応じて移動させる第１制御ステップと、
前記操作装置の数に応じて各操作装置に対応して前記ゲーム空間に配置される第２オブジェクトを、各操作装置に対する操作に応じてそれぞれ移動させる第２制御ステップと、
前記ゲーム空間において前記第１オブジェクトの位置に基づいて第１仮想カメラを設定する第１カメラ設定ステップと、
前記ゲーム空間において前記第１オブジェクトおよび複数の前記第２オブジェクトを視野範囲に含むように、前記第１オブジェクトおよび各第２オブジェクトの位置に基づいて第２仮想カメラを設定する第２カメラ設定ステップと、
前記第１仮想カメラから見た前記ゲーム空間を表す第１ゲーム画像を前記第１表示部に表示する第１表示ステップと、
前記第２仮想カメラから見た前記ゲーム空間を表す第２ゲーム画像を、前記端末装置とは別体の所定の表示装置に表示する第２表示ステップとを備える、ゲーム処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数人のプレイヤがゲームを行うためのゲームシステム、ゲーム装置、ゲームプログラム、およびゲーム処理方法に関する。
【背景技術】
【０００２】
従来、複数のプレイヤが、それぞれゲーム装置（端末）を用いてゲームをプレイする、複数人プレイが可能なゲームシステムが考えられている。このようなゲームシステムにおいては、表示装置の画面領域が複数に分割され、分割された領域毎に各プレイヤのための各ゲーム画像（例えば、自分の操作対象を含むゲーム画像）が表示される（例えば、特許文献１参照）。各プレイヤは、それぞれ自分のためのゲーム画像が表示される個別の領域を見てゲームを行っていた。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００４−１５９９２２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記の従来のゲームシステムでは、各プレイヤは別々の画面領域を見てプレイを行うので、複数人でゲームを行っている場合でも、同じゲーム空間内でゲームを一緒にプレイしているという一体感を十分に味わうことができなかった。
【０００５】
それ故、本発明の目的は、複数人のプレイヤがゲームを行う場合において、一緒にプレイしているという一体感を味わうことができるゲームシステムを提供することである。
【課題を解決するための手段】
【０００６】
本発明は、上記の課題を解決するために、以下の（１）〜（９）の構成を採用した。
【０００７】
（１）
本発明は、操作部および第１表示部を有する端末装置と、複数の操作装置とを含むゲームシステムである。ゲームシステムは、第１制御部と、第２制御部と、第１カメラ設定部と、第２カメラ設定部と、第１表示制御部と、第２表示制御部とを備える。第１制御部は、所定のゲーム空間に配置される第１オブジェクトを端末装置に対する操作に応じて移動させる。第２制御部は、操作装置の数に応じて各操作装置に対応してゲーム空間に配置される第２オブジェクトを、各操作装置に対する操作に応じてそれぞれ移動させる。第１カメラ設定部は、ゲーム空間において第１オブジェクトの位置に基づいて第１仮想カメラを設定する。第２カメラ設定部は、ゲーム空間において複数の第２オブジェクトを視野範囲に含むように、各第２オブジェクトの位置に基づいて第２仮想カメラを設定する。第１表示制御部は、第１仮想カメラから見たゲーム空間を表す第１ゲーム画像を第１表示部に表示させる。第２表示制御部は、第２仮想カメラから見たゲーム空間を表す第２ゲーム画像を、端末装置とは別体の所定の表示装置に表示させる。
【０００８】
上記（１）の構成によれば、各操作装置の操作対象である各第２オブジェクトを含むゲーム空間を表す第２ゲーム画像が所定の表示装置に表示される。これによれば、各第２オブジェクトを操作する各第２プレイヤは、自分が操作する第２オブジェクトとともに、他の第２プレイヤが操作する第２オブジェクトを見ながらゲームを行うことができる。したがって、第２プレイヤは、「他の第２プレイヤと一緒にゲームを行っている」という一体感を味わいながらゲームを行うことができる。さらに、上記（１）の構成によれば、操作装置とは異なる端末装置を用いるプレイヤも一緒にゲームを行うことができる。
【０００９】
（２）
第２カメラ設定部は、ゲーム空間において第１オブジェクトおよび複数の第２オブジェクトを視野範囲に含むように、第１オブジェクトおよび複数の第２オブジェクトの位置に基づいて第２仮想カメラを設定してもよい。
【００１０】
上記（２）の構成によれば、第２オブジェクトに加えて第１オブジェクトが第２仮想カメラの視野範囲に含まれ、所定の表示装置に表示される。したがって、これによれば、第１プレイヤの操作する第１オブジェクトを各第２プレイヤが見ることができるので、第１プレイヤと第２プレイヤとの間においてもゲームの一体感を味わうことができ、ゲームシステム１における全てのプレイヤがゲームの一体感を味わうことができる。
【００１１】
（３）
第２カメラ設定部は、第２仮想カメラの視野範囲が所定の大きさとなることを限度として第２仮想カメラを設定してもよい。このとき、第２制御部は、第２仮想カメラの視野範囲が限度となる場合、当該視野範囲から外へ出ないように各第２オブジェクトを制御する。第１制御部は、第２仮想カメラの視野範囲とは独立して、端末装置に対する操作に応じて第１オブジェクトを移動させる。
【００１２】
上記（３）の構成によれば、各第２オブジェクトは所定の表示装置に表示される一方、第１オブジェクトは所定の表示装置に表示されなくなることもある。ここで、各第２オブジェクトは常に所定の表示装置に表示されるので、所定の表示装置を主に見てゲームを行う各第２プレイヤは、自分の操作対象を見失うことなく、快適にゲームを行うことができる。一方、第１プレイヤは、自分の意思に反して第１オブジェクトが移動することがなく、また、所定の表示装置に第１オブジェクトが表示されなくなっても端末装置に表示される第１ゲーム画像を見てゲームを行うことができるので、第１オブジェクトを違和感なく快適に操作することができる。したがって、上記（３）の構成によれば、各プレイヤは快適にゲーム操作を行うことができ、ゲームの操作性を向上することができる。
【００１３】
（４）
第２カメラ設定部は、ゲーム空間において各第２オブジェクトが移動可能な所定平面に対する俯角が第１仮想カメラの俯角よりも大きくなるように第２仮想カメラの向きを設定してもよい。
【００１４】
上記（４）の構成によれば、第２ゲーム画像は、比較的上方向からゲーム空間を見たゲーム画像となるので、所定平面上に配置される複数の第２オブジェクトが重なって表示される可能性を低減することができ、所定の表示装置において第２オブジェクトをより見やすく表示することができる。一方、第１ゲーム画像は比較的水平方向からゲーム空間を見たゲーム画像となるので、第１プレイヤはオブジェクトの目線に近い視線でゲーム空間を見ることができ、より迫力のあるゲーム画像を見てゲームを行うことができる。また、第１ゲーム画像がゲーム空間を水平方向から見た画像となることによって、第１プレイヤにとっては高さ方向に関する位置関係がより分かりやすくなる。以上のように、上記（４）の構成によれば、各ゲーム画像を第１および第２プレイヤにとってそれぞれ見やすい画像とすることができる。
【００１５】
（５）
第１カメラ設定部は、端末装置に対する操作に応じて所定平面に垂直な軸回りに第１仮想カメラの向きを変化させてもよい。
【００１６】
上記（５）の構成によれば、第１プレイヤは、所望の方向に第１仮想カメラを向ける操作によって、第１ゲーム画像の視線方向を変更することができる。したがって、上記（４）の構成のように第１ゲーム画像が水平方向からゲーム空間を見たゲーム画像となる場合であっても、第１オブジェクトの周囲を容易に把握することができる。また、第１ゲーム画像に関しては第２プレイヤが見る必要性は小さいので、第２プレイヤに不都合を生じさせることなく、第１ゲーム画像を第１プレイヤに対してより見やすいものにすることができる。
【００１７】
（６）
ゲーム空間を表すゲーム画像は操作装置には表示されなくてもよい。
【００１８】
上記（６）の構成によれば、操作装置にはゲーム画像が表示されないので、各第２プレイヤは、各プレイヤのオブジェクトが表示される所定の表示装置を見てゲームを行う。したがって、各第２プレイヤは「他の第２プレイヤと一緒にゲームを行っている」という一体感をより味わうことができる。また、上記（６）の構成によれば、操作装置はゲーム画像が表示する機能を有する必要がないので、操作装置の構成を簡易化することができる。
【００１９】
（７）
操作装置は、第２ゲーム画像に対して補助的に用いるためのサブゲーム画像を表示する第２表示部を有していてもよい。
【００２０】
上記（７）の構成によれば、操作装置には例えばメニュー画像等のサブゲーム画像が表示されるので、各第２プレイヤは所定の表示装置を主に見てゲームを行うこととなる。したがって、上記（６）の構成と同様、各第２プレイヤは「他の第２プレイヤと一緒にゲームを行っている」という一体感をより味わうことができる。
【００２１】
（８）
第１制御部は、第１オブジェクトの周囲の所定範囲に影響を及ぼす所定の動作を第１オブジェクトに行わせることが可能であってもよい。このとき、第２制御部は、第２オブジェクトの周囲の範囲であって所定範囲よりも狭い範囲に影響を及ぼす、所定の動作と同種の効果を有する動作を第２オブジェクトに行わせることが可能である。
【００２２】
上記（８）の構成によれば、第１オブジェクトと第２オブジェクトとはゲーム上異なる能力を有する。したがって、各プレイヤには、自分が操作するオブジェクトの能力に適したゲーム操作が要求されるので、ゲームの戦略性が向上し、より興趣性の高いゲームを提供することができる。
【００２３】
（９）
端末装置は、第１表示部の画面上に設けられるタッチパネルをさらに有していてもよい。このとき、第１制御部は、タッチパネルに対する入力に基づいて第１オブジェクトを制御する。第２制御部は、操作装置に設けられる操作ボタンに対する入力に基づいて第２オブジェクトを制御する。
【００２４】
上記（９）の構成によれば、第１プレイヤはタッチパネルを用いて直感的かつ容易なゲーム操作が可能となる。特に、上記（８）の構成と（９）の構成とを組み合わせる場合には、第１オブジェクトは相対的に広い効果範囲の動作を行う。そのため、当該動作がタッチパネルに対する入力に基づいて制御される場合には、第１プレイヤは第１オブジェクトに当該動作を容易な操作で行わせることができる。一方、第２オブジェクトの操作に関しては、所定の表示装置の画面上を指定する操作を仮に各第２プレイヤが行うとすれば、複数人が単一の画面上を同時に指定するためにかえって操作が行いにくくなる。これに対して、上記（９）の構成によれば、各第２プレイヤはテレビ２の画面上を指定する操作を行わずに容易に第２オブジェクトを操作することができる。
【００２５】
なお、本発明の別の一例は、上記（１）〜（９）のゲームシステムが備える各部と同機能を有するゲーム装置であってもよい。また、上記ゲーム装置における各部（画像出力部を除く）と同等の手段としてコンピュータを機能させるゲームプログラムであってもよい。さらに、本発明の別の一例は、上記のゲームシステムにおいて行われるゲーム処理方法の形態であってもよい。
【発明の効果】
【００２６】
本発明によれば、各第２オブジェクトを含むゲーム空間を表すゲーム画像を所定の表示装置に表示することによって、各第２オブジェクトを操作する各第２プレイヤは、自分が操作する第２オブジェクトとともに、他の第２プレイヤが操作する第２オブジェクトを見ながらゲームを行うことができる。これによって、第２プレイヤは、「他の第２プレイヤと一緒にゲームを行っている」という一体感を味わいながらゲームを行うことができる。
【図面の簡単な説明】
【００２７】
【図１】ゲームシステムの一例の外観図
【図２】一例であるゲーム装置の内部構成を示すブロック図
【図３】一例であるコントローラの外観構成を示す斜視図
【図４】一例であるコントローラの外観構成を示す斜視図
【図５】一例であるコントローラの構成を示すブロック図
【図６】一例である端末装置の外観構成を示す図
【図７】一例である端末装置の外観構成を示す図
【図８】端末装置の内部構成の一例を示すブロック図
【図９】本実施形態におけるテレビ用ゲーム画像の一例を示す図
【図１０】本実施形態における端末用ゲーム画像の一例を示す図
【図１１】ゲーム装置３のメインメモリに記憶されるデータの一例を示す図
【図１２】ゲーム装置３において実行されるゲーム処理の流れの一例を示すメインフローチャート
【図１３】図１２に示すゲーム制御処理（ステップＳ４）の詳細な流れの一例を示すフローチャート
【図１４】第１および第２オブジェクトによる動作の効果範囲の一例を示す図
【図１５】図１３に示すカメラ設定処理（ステップＳ１５）の詳細な流れの一例を示すフローチャート
【図１６】各仮想カメラの設定方法の一例を示す図
【図１７】ゲーム空間に設定される表示領域の一例を示す図
【図１８】各オブジェクトによる第２仮想カメラの視野範囲外への移動の一例を示す図
【発明を実施するための形態】
【００２８】
［１．ゲームシステムの全体構成］
以下、図面を参照して、本発明の一実施形態に係るゲームシステムの一例について説明する。本実施形態において、ゲームシステムは、操作部および表示部を有する端末装置と、複数の操作装置（コントローラ５）とを含む構成である。ゲームシステムは、各プレイヤが端末装置および操作装置のいずれかを用いてゲーム操作を行うことによって、複数人でゲームを行うためのものである。本実施形態においては、１つの端末装置と複数の操作装置とを含む構成とするが、端末装置および操作装置の数はいくつであってもよい。
【００２９】
図１は、ゲームシステムの一例の外観図である。図１において、ゲームシステム１は、テレビジョン受像器等に代表される据置型のディスプレイ装置（以下、「テレビ」と記載する）２、据置型のゲーム装置３、光ディスク４、コントローラ５、マーカ装置６、および、端末装置７を含む。ゲームシステム１は、コントローラ５および／または端末装置７を用いたゲーム操作に基づいてゲーム装置３においてゲーム処理を実行し、ゲーム処理によって得られるゲーム画像をテレビ２および／または端末装置７に表示するものである。
【００３０】
ゲーム装置３には、当該ゲーム装置３に対して交換可能に用いられる情報記憶媒体の一例である光ディスク４が脱着可能に挿入される。光ディスク４には、ゲーム装置３において実行されるための情報処理プログラム（典型的にはゲームプログラム）が記憶されている。ゲーム装置３の前面には光ディスク４の挿入口が設けられている。ゲーム装置３は、挿入口に挿入された光ディスク４に記憶されている情報処理プログラムを読み出して実行することによってゲーム処理を実行する。
【００３１】
ゲーム装置３には、所定の表示装置の一例であるテレビ２が接続コードを介して接続される。端末装置７はそれを把持するプレイヤが画面を視認可能であるのに対して、テレビ２は、各プレイヤが画面を視認可能な表示装置である。すなわち、テレビ２は、据置型であり、端末装置７の表示部（ＬＣＤ５１）よりも大きい画面を有する表示装置である。テレビ２は、ゲーム装置３において実行されるゲーム処理によって得られるゲーム画像を表示する。テレビ２はスピーカ２ａ（図２）を有しており、スピーカ２ａは、上記ゲーム処理の結果得られるゲーム音声を出力する。なお、他の実施形態においては、ゲーム装置３と据置型の表示装置とは一体となっていてもよい。また、ゲーム装置３とテレビ２との通信は無線通信であってもよい。
【００３２】
テレビ２の画面の周辺（図１では画面の上側）には、マーカ装置６が設置される。詳細は後述するが、ユーザ（プレイヤ）はコントローラ５を動かすゲーム操作を行うことができ、マーカ装置６は、コントローラ５の動きや位置や姿勢等をゲーム装置３が算出するために用いられる。マーカ装置６は、その両端に２つのマーカ６Ｒおよび６Ｌを備えている。マーカ６Ｒ（マーカ６Ｌも同様）は、具体的には１以上の赤外ＬＥＤ（Ｌｉｇｈｔ  Ｅｍｉｔｔｉｎｇ  Ｄｉｏｄｅ）であり、テレビ２の前方に向かって赤外光を出力する。マーカ装置６は有線で（無線であってもよい）ゲーム装置３に接続されており、ゲーム装置３はマーカ装置６が備える各赤外ＬＥＤの点灯を制御することが可能である。なお、マーカ装置６は可搬型であり、ユーザはマーカ装置６を自由な位置に設置することができる。図１ではマーカ装置６がテレビ２の上に設置された態様を表しているが、マーカ装置６を設置する位置および向きは任意である。
【００３３】
コントローラ５は、自機に対して行われた操作の内容を表す操作データをゲーム装置３に与えるものである。コントローラ５とゲーム装置３とは無線通信によって通信可能である。本実施形態では、コントローラ５とゲーム装置３との間の無線通信には例えばＢｌｕｅｔｏｏｔｈ（ブルートゥース）（登録商標）の技術が用いられる。なお、他の実施形態においてはコントローラ５とゲーム装置３とは有線で接続されてもよい。また、図１では、ゲームシステム１に含まれるコントローラ５を１つのみ表すが、ゲームシステム１は複数のコントローラ５を含んでいる。つまり、ゲーム装置３は複数のコントローラと通信可能であり、所定台数のコントローラを同時に使用することによって複数人でゲームをプレイすることが可能である。コントローラ５の詳細な構成については後述する。
【００３４】
端末装置７は、可搬型であり、ユーザが把持可能な程度の大きさである。ユーザは端末装置７を手に持って動かしたり、あるいは、端末装置７を自由な位置に配置したりして使用することが可能である。詳細な構成は後述するが、端末装置７は、表示手段であるＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ：液晶表示装置）５１、および、入力手段（後述するタッチパネル５２やジャイロセンサ７４等）を備える。端末装置７とゲーム装置３とは無線（有線であってもよい）によって通信可能である。端末装置７は、ゲーム装置３で生成された画像（例えばゲーム画像）のデータをゲーム装置３から受信し、画像をＬＣＤ５１に表示する。なお、本実施形態では表示装置としてＬＣＤを用いているが、端末装置７は、例えばＥＬ（Ｅｌｅｃｔｒｏ  Ｌｕｍｉｎｅｓｃｅｎｃｅ：電界発光）を利用した表示装置等、他の任意の表示装置を有していてもよい。また、端末装置７は、自機に対して行われた操作の内容を表す操作データをゲーム装置３に送信する。
【００３５】
［２．ゲーム装置３の内部構成］
次に、図２を参照して、ゲーム装置３の内部構成について説明する。図２は、一例であるゲーム装置３の内部構成を示すブロック図である。ゲーム装置３は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１０、システムＬＳＩ１１、外部メインメモリ１２、ＲＯＭ／ＲＴＣ１３、ディスクドライブ１４、およびＡＶ−ＩＣ１５等を有する。
【００３６】
ＣＰＵ１０は、光ディスク４に記憶されたゲームプログラムを実行することによってゲーム処理を実行するものであり、ゲームプロセッサとして機能する。ＣＰＵ１０は、システムＬＳＩ１１に接続される。システムＬＳＩ１１には、ＣＰＵ１０の他、外部メインメモリ１２、ＲＯＭ／ＲＴＣ１３、ディスクドライブ１４およびＡＶ−ＩＣ１５が接続される。システムＬＳＩ１１は、それに接続される各構成要素間におけるデータ転送の制御、表示すべき画像の生成、外部装置からのデータの取得等の処理を行う。なお、システムＬＳＩ１１の内部構成については後述する。揮発性の外部メインメモリ１２は、光ディスク４から読み出されたゲームプログラムや、フラッシュメモリ１７から読み出されたゲームプログラム等のプログラムを記憶したり、各種データを記憶したりするものであり、ＣＰＵ１０のワーク領域やバッファ領域として用いられる。ＲＯＭ／ＲＴＣ１３は、ゲーム装置３の起動用のプログラムが組み込まれるＲＯＭ（いわゆるブートＲＯＭ）と、時間をカウントするクロック回路（ＲＴＣ：Ｒｅａｌ  Ｔｉｍｅ  Ｃｌｏｃｋ）とを有する。ディスクドライブ１４は、光ディスク４からプログラムデータやテクスチャデータ等を読み出し、後述する内部メインメモリ１１ｅまたは外部メインメモリ１２に読み出したデータを書き込む。
【００３７】
システムＬＳＩ１１には、入出力プロセッサ（Ｉ／Ｏプロセッサ）１１ａ、ＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｏｒ  Ｕｎｉｔ）１１ｂ、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）１１ｃ、ＶＲＡＭ（Ｖｉｄｅｏ  ＲＡＭ）１１ｄ、および内部メインメモリ１１ｅが設けられる。図示は省略するが、これらの構成要素１１ａ〜１１ｅは内部バスによって互いに接続される。
【００３８】
ＧＰＵ１１ｂは、描画手段の一部を形成し、ＣＰＵ１０からのグラフィクスコマンド（作画命令）に従って画像を生成する。ＶＲＡＭ１１ｄは、ＧＰＵ１１ｂがグラフィクスコマンドを実行するために必要なデータ（ポリゴンデータやテクスチャデータ等のデータ）を記憶する。画像が生成される際には、ＧＰＵ１１ｂは、ＶＲＡＭ１１ｄに記憶されたデータを用いて画像データを作成する。なお、本実施形態においては、ゲーム装置３は、テレビ２に表示する画像（ゲーム画像）と、端末装置７に表示する画像（ゲーム画像）との両方を生成する。以下では、テレビ２に表示される画像を「テレビ用画像」と呼び、端末装置７に表示される画像を「端末用画像」と呼ぶことがある。
【００３９】
ＤＳＰ１１ｃは、オーディオプロセッサとして機能し、内部メインメモリ１１ｅや外部メインメモリ１２に記憶されるサウンドデータや音波形（音色）データを用いて、音声データを生成する。なお、本実施形態においては、音声（ゲーム音声）についてもゲーム画像と同様、テレビ２のスピーカから出力する音声と、端末装置７のスピーカから出力する音声との両方が生成される。以下では、テレビ２から出力される音声を「テレビ用音声」と呼び、端末装置７から出力される音声を「端末用音声」と呼ぶことがある。
【００４０】
上記のようにゲーム装置３において生成される画像および音声のうちで、テレビ２において出力される画像および音声のデータは、ＡＶ−ＩＣ１５によって読み出される。ＡＶ−ＩＣ１５は、読み出した画像データをＡＶコネクタ１６を介してテレビ２へ出力するとともに、読み出した音声データを、テレビ２に内蔵されるスピーカ２ａへ出力する。これによって、テレビ２に画像が表示されるとともにスピーカ２ａから音が出力される。なお、ゲーム装置３とテレビ２との接続は、どのような方式で行われてもよいが、ゲーム装置３は、テレビ２を制御する制御指令を有線または無線でテレビ２へ送信するようにしてもよい。例えばＨＤＭＩ（Ｈｉｇｈ−Ｄｅｆｉｎｉｔｉｏｎ  Ｍｕｌｔｉｍｅｄｉａ  Ｉｎｔｅｒｆａｃｅ）規格に則ったＨＤＭＩケーブルが用いられてもよい。ＨＤＭＩ規格では、ＣＥＣ（Ｃｏｎｓｕｍｅｒ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｃｏｎｔｒｏｌ）と呼ばれる機能によって、接続相手の機器を制御することが可能である。したがって、ＨＤＭＩケーブルが用いられる場合のように、ゲーム装置３がテレビ２に対する制御が可能である場合には、ゲーム装置３は、適宜のタイミングでテレビ２の電源をオンにしたり、テレビ２の入力を切り替えたりすることができる。
【００４１】
また、ゲーム装置３において生成される画像および音声のうちで、端末装置７において出力される画像および音声のデータは、入出力プロセッサ１１ａ等によって端末装置７へ送信される。入出力プロセッサ１１ａ等による端末装置７へのデータの送信については後述する。
【００４２】
入出力プロセッサ１１ａは、それに接続される構成要素との間でデータの送受信を実行したり、外部装置からのデータのダウンロードを実行したりする。入出力プロセッサ１１ａは、フラッシュメモリ１７、ネットワーク通信モジュール１８、コントローラ通信モジュール１９、拡張コネクタ２０、メモリカード用コネクタ２１、コーデックＬＳＩ２７に接続される。また、ネットワーク通信モジュール１８にはアンテナ２２が接続される。コントローラ通信モジュール１９にはアンテナ２３が接続される。コーデックＬＳＩ２７は端末通信モジュール２８に接続され、端末通信モジュール２８にはアンテナ２９が接続される。
【００４３】
ゲーム装置３は、インターネット等のネットワークに接続して外部の情報処理装置（例えば他のゲーム装置や、各種サーバ等）と通信を行うことが可能である。すなわち、入出力プロセッサ１１ａは、ネットワーク通信モジュール１８およびアンテナ２２を介してインターネット等のネットワークに接続可能であり、ネットワークに接続される他の情報処理装置と通信を行うことができる。入出力プロセッサ１１ａは、定期的にフラッシュメモリ１７にアクセスし、ネットワークへ送信する必要があるデータの有無を検出し、当該データが有る場合には、ネットワーク通信モジュール１８およびアンテナ２２を介してネットワークに送信する。また、入出力プロセッサ１１ａは、外部情報処理装置から送信されてくるデータやダウンロードサーバからダウンロードしたデータを、ネットワーク、アンテナ２２およびネットワーク通信モジュール１８を介して受信し、受信したデータをフラッシュメモリ１７に記憶する。ＣＰＵ１０はゲームプログラムを実行することにより、フラッシュメモリ１７に記憶されたデータを読み出してゲームプログラムで利用する。フラッシュメモリ１７には、ゲーム装置３と外部情報処理装置との間で送受信されるデータの他、ゲーム装置３を利用してプレイしたゲームのセーブデータ（ゲームの結果データまたは途中データ）が記憶されてもよい。また、フラッシュメモリ１７にはゲームプログラムが記憶されてもよい。
【００４４】
また、ゲーム装置３は、コントローラ５からの操作データを受信することが可能である。すなわち、入出力プロセッサ１１ａは、コントローラ５から送信される操作データをアンテナ２３およびコントローラ通信モジュール１９を介して受信し、内部メインメモリ１１ｅまたは外部メインメモリ１２のバッファ領域に記憶（一時記憶）する。
【００４５】
また、ゲーム装置３は、端末装置７との間で画像や音声等のデータを送受信することが可能である。入出力プロセッサ１１ａは、端末装置７へゲーム画像（端末用画像）を送信する場合、ＧＰＵ１１ｂが生成したゲーム画像のデータをコーデックＬＳＩ２７へ出力する。コーデックＬＳＩ２７は、入出力プロセッサ１１ａからの画像データに対して所定の圧縮処理を行う。端末通信モジュール２８は、端末装置７との間で無線通信を行う。したがって、コーデックＬＳＩ２７によって圧縮された画像データは、端末通信モジュール２８によってアンテナ２９を介して端末装置７へ送信される。なお、本実施形態では、ゲーム装置３から端末装置７へ送信される画像データはゲームに用いるものであり、ゲームにおいては表示される画像に遅延が生じるとゲームの操作性に悪影響が出る。そのため、ゲーム装置３から端末装置７への画像データの送信に関しては、できるだけ遅延が生じないようにしてもよい。したがって、本実施形態では、コーデックＬＳＩ２７は、例えばＨ．２６４規格といった高効率の圧縮技術を用いて画像データを圧縮する。なお、それ以外の圧縮技術を用いてもよいし、通信速度が十分である場合には無圧縮で画像データを送信する構成であってもよい。また、端末通信モジュール２８は、例えばＷｉ−Ｆｉの認証を受けた通信モジュールであり、例えばＩＥＥＥ８０２．１１ｎ規格で採用されるＭＩＭＯ（Ｍｕｌｔｉｐｌｅ  Ｉｎｐｕｔ  Ｍｕｌｔｉｐｌｅ  Ｏｕｔｐｕｔ）の技術を用いて端末装置７との間の無線通信を高速に行うようにしてもよいし、他の通信方式を用いてもよい。
【００４６】
また、ゲーム装置３は、画像データの他、音声データを端末装置７へ送信する。すなわち、入出力プロセッサ１１ａは、ＤＳＰ１１ｃが生成した音声データを、コーデックＬＳＩ２７を介して端末通信モジュール２８へ出力する。コーデックＬＳＩ２７は、音声データに対しても画像データと同様に圧縮処理を行う。音声データに対する圧縮の方式は、どのような方式であってもよい。また、他の実施形態においては、音声データは圧縮されずに送信されてもよい。端末通信モジュール２８は、圧縮された画像データおよび音声データを、アンテナ２９を介して端末装置７へ送信する。
【００４７】
さらに、ゲーム装置３は、上記画像データおよび音声データの他に、必要に応じて各種の制御データを端末装置７へ送信する。制御データは、端末装置７が備える構成要素に対する制御指示を表すデータであり、例えばマーカ部（図１１に示すマーカ部５５）の点灯を制御する指示や、カメラ（図１１に示すカメラ５６）の撮像を制御する指示等を表す。入出力プロセッサ１１ａは、ＣＰＵ１０の指示に応じて制御データを端末装置７へ送信する。なお、この制御データに関して、本実施形態ではコーデックＬＳＩ２７はデータの圧縮処理を行わないが、他の実施形態においては圧縮処理を行うようにしてもよい。なお、ゲーム装置３から端末装置７へ送信される上述のデータは、必要に応じて暗号化がされていてもよいし、されていなくともよい。
【００４８】
また、ゲーム装置３は、端末装置７から各種データを受信可能である。詳細は後述するが、本実施形態では、端末装置７は、操作データ、画像データ、および音声データを送信する。端末装置７から送信される各データはアンテナ２９を介して端末通信モジュール２８によって受信される。ここで、端末装置７からの画像データおよび音声データは、ゲーム装置３から端末装置７への画像データおよび音声データと同様の圧縮処理が施されている。したがって、これら画像データおよび音声データについては、端末通信モジュール２８からコーデックＬＳＩ２７に送られ、コーデックＬＳＩ２７によって伸張処理が施されて入出力プロセッサ１１ａへ出力される。一方、端末装置７からの操作データに関しては、画像や音声に比べてデータ量が少ないので、圧縮処理が施されていなくともよい。また、必要に応じて暗号化がされていてもよいし、されていなくともよい。したがって、操作データは、端末通信モジュール２８で受信された後、コーデックＬＳＩ２７を介して入出力プロセッサ１１ａへ出力される。入出力プロセッサ１１ａは、端末装置７から受信したデータを、内部メインメモリ１１ｅまたは外部メインメモリ１２のバッファ領域に記憶（一時記憶）する。
【００４９】
また、ゲーム装置３は、他の機器や外部記憶媒体に接続することが可能である。すなわち、入出力プロセッサ１１ａには、拡張コネクタ２０およびメモリカード用コネクタ２１が接続される。拡張コネクタ２０は、ＵＳＢやＳＣＳＩのようなインターフェースのためのコネクタである。拡張コネクタ２０に対しては、外部記憶媒体のようなメディアを接続したり、他のコントローラ等の周辺機器を接続したり、有線の通信用コネクタを接続することによってネットワーク通信モジュール１８に替えてネットワークとの通信を行ったりすることができる。メモリカード用コネクタ２１は、メモリカードのような外部記憶媒体を接続するためのコネクタである。例えば、入出力プロセッサ１１ａは、拡張コネクタ２０やメモリカード用コネクタ２１を介して外部記憶媒体にアクセスし、外部記憶媒体にデータを保存したり、外部記憶媒体からデータを読み出したりすることができる。
【００５０】
ゲーム装置３には、電源ボタン２４、リセットボタン２５、およびイジェクトボタン２６が設けられる。電源ボタン２４およびリセットボタン２５は、システムＬＳＩ１１に接続される。電源ボタン２４がオンされると、図示しないＡＣアダプタによって外部の電源からゲーム装置３の各構成要素に対して電力が供給される。リセットボタン２５が押されると、システムＬＳＩ１１は、ゲーム装置３の起動プログラムを再起動する。イジェクトボタン２６は、ディスクドライブ１４に接続される。イジェクトボタン２６が押されると、ディスクドライブ１４から光ディスク４が排出される。
【００５１】
なお、他の実施形態においては、ゲーム装置３が備える各構成要素のうちでいくつかの構成要素は、ゲーム装置３とは別体の拡張機器として構成されてもよい。このとき、拡張機器は、例えば上記拡張コネクタ２０を介してゲーム装置３と接続されるようにしてもよい。具体的には、拡張機器は、例えば上記コーデックＬＳＩ２７、端末通信モジュール２８およびアンテナ２９の各構成要素を備えており、拡張コネクタ２０に対して着脱可能であってもよい。これによれば、上記各構成要素を備えていないゲーム装置に対して上記拡張機器を接続することによって、当該ゲーム装置を端末装置７と通信可能な構成とすることができる。
【００５２】
［３．コントローラ５の構成］
次に、図３〜図５を参照して、コントローラ５について説明する。図３は、一例であるコントローラ５の外観構成を示す斜視図である。図４は、コントローラ５の外観構成を示す斜視図である。図３は、コントローラ５の上側後方から見た斜視図であり、図４は、コントローラ５を下側前方から見た斜視図である。なお、コントローラ５は、プレイヤが操作可能な操作装置であればどのようなものであってもよい。本実施形態においては、コントローラ５はボタンやセンサを備えており、プレイヤは、ボタン操作および操作装置自体を動かす操作を行うことが可能である。また、本実施形態においては、コントローラ５は表示部を有していないが、他の実施形態においてはコントローラ５は表示部を有していてもよい。
【００５３】
図３および図４において、コントローラ５は、例えばプラスチック成型によって形成されたハウジング３１を有している。ハウジング３１は、その前後方向（図３に示すＺ軸方向）を長手方向とした略直方体形状を有しており、全体として大人や子供の片手で把持可能な大きさである。ユーザは、コントローラ５に設けられたボタンを押下すること、および、コントローラ５自体を動かしてその位置や姿勢（傾き）を変えることによってゲーム操作を行うことができる。
【００５４】
ハウジング３１には、複数の操作ボタンが設けられる。図３に示すように、ハウジング３１の上面には、十字ボタン３２ａ、１番ボタン３２ｂ、２番ボタン３２ｃ、Ａボタン３２ｄ、マイナスボタン３２ｅ、ホームボタン３２ｆ、プラスボタン３２ｇ、および電源ボタン３２ｈが設けられる。本明細書では、これらのボタン３２ａ〜３２ｈが設けられるハウジング３１の上面を「ボタン面」と呼ぶことがある。一方、図４に示すように、ハウジング３１の下面には凹部が形成されており、当該凹部の後面側傾斜面にはＢボタン３２ｉが設けられる。これらの各操作ボタン３２ａ〜３２ｉには、ゲーム装置３が実行する情報処理プログラムに応じた機能が適宜割り当てられる。また、電源ボタン３２ｈは遠隔からゲーム装置３本体の電源をオン／オフするためのものである。
【００５５】
ハウジング３１の後面にはコネクタ３３が設けられている。コネクタ３３は、コントローラ５に他の機器（例えば、他のセンサユニットやコントローラ）を接続するために利用される。また、ハウジング３１の後面におけるコネクタ３３の両側には、上記他の機器が容易に離脱することを防止するために係止穴３３ａが設けられている。
【００５６】
ハウジング３１上面の後方には複数（図３では４つ）のＬＥＤ３４ａ〜３４ｄが設けられる。ここで、コントローラ５には、他のコントローラと区別するためにコントローラ種別（番号）が付与される。各ＬＥＤ３４ａ〜３４ｄは、コントローラ５に現在設定されている上記コントローラ種別をユーザに通知したり、コントローラ５の電池残量をユーザに通知したりする等の目的で用いられる。具体的には、コントローラ５を用いてゲーム操作が行われる際、上記コントローラ種別に応じて複数のＬＥＤ３４ａ〜３４ｄのいずれか１つが点灯する。
【００５７】
また、コントローラ５は撮像情報演算部３５（図５）を有しており、図４に示すように、ハウジング３１前面には撮像情報演算部３５の光入射面３５ａが設けられる。光入射面３５ａは、マーカ６Ｒおよび６Ｌからの赤外光を少なくとも透過する材質で構成される。
【００５８】
ハウジング３１上面における１番ボタン３２ｂとホームボタン３２ｆとの間には、コントローラ５に内蔵されるスピーカ（図示せず）からの音を外部に放出するための音抜き孔３１ａが形成されている。
【００５９】
また、ハウジング３１の内部には基板が固設されており、当該基板に各操作ボタン３２ａ〜３２ｈ、各ＬＥＤ３４ａ〜３４ｄ、加速度センサ３７、アンテナ４５、スピーカ、無線モジュール４４、アンテナ４５等が設けられる。これらは、基板等に形成された配線（図示せず）によってマイクロコンピュータ（Ｍｉｃｒｏ  Ｃｏｍｐｕｔｅｒ：マイコン）４２（図５）に接続される。
【００６０】
また、上記基板の前端縁には撮像情報演算部３５が設けられる。撮像情報演算部３５は、コントローラ５の前方から順に赤外線フィルタ３８、レンズ３９、撮像素子４０、および画像処理回路４１（図５）を備えている。これらの部材３８〜４１はそれぞれ基板の下主面に取り付けられる。
【００６１】
さらに、基板には、上記マイコン４２およびバイブレータが設けられている。バイブレータは、例えば振動モータやソレノイドであり、基板等に形成された配線によってマイコン４２と接続される。マイコン４２の指示によりバイブレータが作動することによってコントローラ５に振動が発生する。これによって、コントローラ５を把持しているユーザの手にその振動が伝達される、いわゆる振動対応ゲームを実現することができる。
【００６２】
なお、上記の他、コントローラ５は、マイコン４２の基本クロックを生成する水晶振動子や、スピーカに音声信号を出力するアンプ等を備えている。
【００６３】
なお、図３および図４に示したコントローラ５の形状や、各操作ボタンの形状、加速度センサやバイブレータの数および設置位置等は単なる一例に過ぎず、他の形状、数、および設置位置であってもよい。また、本実施形態では、撮像手段による撮像方向はＺ軸正方向であるが、撮像方向はいずれの方向であってもよい。すなわち、コントローラ５における撮像情報演算部３５の位置（撮像情報演算部３５の光入射面３５ａ）は、ハウジング３１の前面でなくてもよく、ハウジング３１の外部から光を取り入れることができれば他の面に設けられてもかまわない。
【００６４】
図５は、一例であるコントローラ５の構成を示すブロック図である。コントローラ５は、操作部３２（各操作ボタン３２ａ〜３２ｉ）、撮像情報演算部３５、通信部３６、加速度センサ３７、およびジャイロセンサ４８を備えている。コントローラ５は、自機に対して行われた操作内容を表すデータを操作データとしてゲーム装置３へ送信するものである。なお、以下では、コントローラ５が送信する操作データを「コントローラ操作データ」と呼び、端末装置７が送信する操作データを「端末操作データ」と呼ぶことがある。
【００６５】
操作部３２は、上述した各操作ボタン３２ａ〜３２ｉを含み、各操作ボタン３２ａ〜３２ｉに対する入力状態（各操作ボタン３２ａ〜３２ｉが押下されたか否か）を表す操作ボタンデータを通信部３６のマイコン４２へ出力する。
【００６６】
撮像情報演算部３５は、撮像手段が撮像した画像データを解析してその中で輝度が高い領域を判別してその領域の重心位置やサイズなどを算出するためのシステムである。撮像情報演算部３５は、赤外線フィルタ３８、レンズ３９、撮像素子４０、および画像処理回路４１を含んでいる。赤外線フィルタ３８は、コントローラ５の前方から入射する光から赤外線のみを通過させる。レンズ３９は、赤外線フィルタ３８を透過した赤外線を集光して撮像素子４０へ入射させる。撮像素子４０は、例えばＣＭＯＳセンサやあるいはＣＣＤセンサのような固体撮像素子であり、レンズ３９が集光した赤外線を受光して画像信号を出力する。ここで、撮像対象となる端末装置７のマーカ部５５およびマーカ装置６は、赤外光を出力するマーカで構成される。したがって、赤外線フィルタ３８を設けることによって、撮像素子４０は、赤外線フィルタ３８を通過した赤外線だけを受光して画像データを生成するので、撮像対象（マーカ部５５および／またはマーカ装置６）の画像をより正確に撮像することができる。以下では、撮像素子４０によって撮像された画像を撮像画像と呼ぶ。撮像素子４０によって生成された画像データは、画像処理回路４１で処理される。画像処理回路４１は、撮像画像内における撮像対象の位置を算出する。画像処理回路４１は、算出された位置を示す座標を通信部３６のマイコン４２へ出力する。この座標のデータは、マイコン４２によって操作データとしてゲーム装置３に送信される。以下では、上記座標を「マーカ座標」と呼ぶ。マーカ座標はコントローラ５自体の向き（傾斜角度）や位置に対応して変化するので、ゲーム装置３はこのマーカ座標を用いてコントローラ５の向きや位置を算出することができる。
【００６７】
なお、他の実施形態においては、コントローラ５は画像処理回路４１を備えていない構成であってもよく、撮像画像自体がコントローラ５からゲーム装置３へ送信されてもよい。このとき、ゲーム装置３は、画像処理回路４１と同様の機能を有する回路あるいはプログラムを有しており、上記マーカ座標を算出するようにしてもよい。
【００６８】
加速度センサ３７は、コントローラ５の加速度（重力加速度を含む）を検出する、すなわち、コントローラ５に加わる力（重力を含む）を検出する。加速度センサ３７は、当該加速度センサ３７の検出部に加わっている加速度のうち、センシング軸方向に沿った直線方向の加速度（直線加速度）の値を検出する。加速度センサ３７は、１軸以上のセンシング軸に関する加速度を検出するものであればよいが、本実施形態では、コントローラ５を基準とした上下方向（図３に示すＹ軸方向）、左右方向（図３に示すＸ軸方向）および前後方向（図３に示すＺ軸方向）の３軸方向に関してそれぞれ直線加速度を検出する。なお、加速度センサ３７は、例えば静電容量式のＭＥＭＳ（Ｍｉｃｒｏ  Ｅｌｅｃｔｒｏ  Ｍｅｃｈａｎｉｃａｌ  Ｓｙｓｔｅｍ）型加速度センサであるとするが、他の方式の加速度センサを用いるようにしてもよい。加速度センサ３７が検出した加速度を表すデータ（加速度データ）は、通信部３６へ出力される。なお、加速度センサ３７が検出した加速度は、コントローラ５自体の向き（傾斜角度）や移動に対応して変化するので、ゲーム装置３は取得された加速度データを用いてコントローラ５の向きや移動を算出することができる。本実施形態では、ゲーム装置３は、取得された加速度データに基づいてコントローラ５の姿勢や傾斜角度等を算出する。
【００６９】
ジャイロセンサ４８は、３軸（本実施形態では、ＸＹＺ軸）回りの角速度を検出する。本明細書では、コントローラ５の撮像方向（Ｚ軸正方向）を基準として、Ｘ軸回りの回転方向をピッチ方向、Ｙ軸回りの回転方向をヨー方向、Ｚ軸回りの回転方向をロール方向と呼ぶ。ジャイロセンサ４８は、３軸回りの角速度を検出することができればよく、用いるジャイロセンサの数および組み合わせはどのようなものであってもよい。ジャイロセンサ４８で検出された角速度を表すデータは、通信部３６へ出力される。また、ジャイロセンサ４８は１軸または２軸回りの角速度を検出するものであってもよい。
【００７０】
通信部３６は、マイコン４２、メモリ４３、無線モジュール４４、およびアンテナ４５を含んでいる。通信部３６（無線モジュール４４およびアンテナ４５）によって、コントローラ５がワイヤレスコントローラとして機能する。マイコン４２は、処理を行う際にメモリ４３を記憶領域として用いながら、マイコン４２が取得したデータをゲーム装置３へ無線送信する無線モジュール４４を制御する。
【００７１】
操作部３２、撮像情報演算部３５、加速度センサ３７、およびジャイロセンサ４８からマイコン４２へ出力されたデータは、一時的にメモリ４３に格納される。これらのデータは、操作データ（コントローラ操作データ）としてゲーム装置３へ送信される。すなわち、マイコン４２は、ゲーム装置３のコントローラ通信モジュール１９への送信タイミングが到来すると、メモリ４３に格納されている操作データを無線モジュール４４へ出力する。無線モジュール４４は、例えばＢｌｕｅｔｏｏｔｈ（ブルートゥース）（登録商標）の技術を用いてゲーム装置３へ操作データを送信する。ゲーム装置３のＣＰＵ１０は、コントローラ５から取得した操作データを用いてゲーム処理を行う。なお、通信部３６からコントローラ通信モジュール１９への無線送信は所定の周期毎に逐次行われるが、ゲームの処理は１／６０秒を単位として（１フレーム時間として）行われることが一般的であるので、この時間以下の周期で送信を行ってもよい。
【００７２】
以上のように、コントローラ５は、自機に対する操作を表す操作データとして、マーカ座標データ、加速度データ、角速度データ、および操作ボタンデータを送信可能である。また、ゲーム装置３は、上記操作データをゲーム入力として用いてゲーム処理を実行する。したがって、上記コントローラ５を用いることによって、ユーザは、各操作ボタンを押下する従来の一般的なゲーム操作に加えて、コントローラ５自体を動かすゲーム操作を行うことができる。例えば、コントローラ５を任意の姿勢に傾ける操作、コントローラ５によって画面上の任意の位置を指示する操作、および、コントローラ５自体を動かす操作等を行うことが可能となる。
【００７３】
また、本実施形態において、コントローラ５は、ゲーム画像を表示する表示部を有しないが、例えば電池残量を表す画像等を表示するための表示部を有していてもよい。
【００７４】
［４．端末装置７の構成］
次に、図６〜図８を参照して、端末装置７の構成について説明する。図６は、一例である端末装置７の外観構成を示す平面図である。図６における（ａ）図は端末装置７の正面図であり、（ｂ）図は上面図であり、（ｃ）図は右側面図であり、（ｄ）図は下面図である。図７は、一例である端末装置７の背面図である。なお、端末装置７は、操作部および表示部を有する構成であればどのような構成であってもよい。端末装置７は表示部を有するので、端末装置７を用いるプレイヤは、当該表示部に表示されるゲーム画像を見ながらゲームを行うことができる。
【００７５】
図６に示されるように、端末装置７は、大略的には横長の長方形の板状形状であるハウジング５０を備える。端末装置７は、タブレット型の情報処理装置であるということもできる。なお、ハウジング５０は全体として板状形状であれば、曲面を有していてもよいし、一部に突起等を有していてもよい。ハウジング５０は、ユーザが把持することができる程度の大きさである。したがって、ユーザは、端末装置７を持って動かしたり、端末装置７の配置位置を変更したりすることができる。詳細は後述するが、端末装置７は、上記のような比較的大型の端末装置（操作装置）であっても、ユーザが持ちやすく操作しやすい構成となっている。
【００７６】
端末装置７は、ハウジング５０の表面（表側）にＬＣＤ５１を有する。ＬＣＤ５１は、ハウジング５０の表面の中央付近に設けられる。したがって、ユーザは、ＬＣＤ５１の両側部分のハウジング５０を持つことによって、ＬＣＤ５１の画面を見ながら端末装置７を持って動かすことができる。なお、ユーザは、ＬＣＤ５１の左右両側の部分のハウジング５０を持つことで端末装置７を横持ちで（横に長い向きにして）持つことも可能であるし、端末装置７を縦持ちで（縦に長い向きにして）持つことも可能である。
【００７７】
図６の（ａ）図に示すように、端末装置７は、操作手段として、ＬＣＤ５１の画面上にタッチパネル５２を有する。タッチパネル５２は、抵抗膜方式や、静電容量方式等、任意の方式のものでよい。また、タッチパネル５２はシングルタッチ方式でもよいし、マルチタッチ方式であってもよい。タッチパネル５２に対する入力は、タッチペン６０あるいはユーザの指等によって行うことができる。なお、ハウジング５０には、タッチパネル５２に対する操作を行うために用いられるタッチペン６０を収納する収納穴６０ａが設けられている（図６（ｂ）参照）。なお、ここでは、タッチペン６０が落ちないように、収納穴６０ａはハウジング５０の上面に設けられるが、側面や下面に設けられてもよい。
【００７８】
図６に示すように、端末装置７は、操作手段（操作部）として、２つのアナログスティック（スライドパッド）５３Ａおよび５３Ｂと、複数のボタン（キー）５４Ａ〜５４Ｍとを備えている。各アナログスティック５３Ａおよび５３Ｂは、方向を指示することが可能なデバイスである。各アナログスティック５３Ａおよび５３Ｂは、可動部材（スティック部）がハウジング５０の表面に対して任意の方向（上下左右および斜め方向の任意の角度）にスライドすることができるように構成されている。なお、各アナログスティック５３Ａおよび５３Ｂの可動部材は、ハウジング５０の表面に対して任意の方向に傾倒する種類のものでもよい。また、左アナログスティック５３ＡはＬＣＤ５１の画面の左側に、右アナログスティック５３ＢはＬＣＤ５１の画面の右側にそれぞれ設けられる。
【００７９】
各ボタン５４Ａ〜５４Ｌは、所定の入力を行うための操作手段（操作部）であり、押下可能なキーである。以下に示すように、各ボタン５４Ａ〜５４Ｌは、ユーザが端末装置７の左右部分を把持した状態で操作可能な位置に設けられる。したがって、ユーザは、端末装置７を持って動かす場合においてもこれらの操作手段を容易に操作することができる。
【００８０】
図６の（ａ）図に示すように、ハウジング５０の表面には、各操作ボタン５４Ａ〜５４Ｌのうち、十字ボタン（方向入力ボタン）５４Ａと、ボタン５４Ｂ〜５４Ｈおよび５４Ｍとが設けられる。これらのボタン５４Ａ〜５４Ｈおよび５４Ｍは、ユーザの親指で操作可能な位置に配置されている。十字ボタン５４Ａは、ＬＣＤ５１の左側であって、左アナログスティック５３Ａの下側に設けられる。十字ボタン５４Ａは、十字の形状を有しており、少なくとも上下左右の方向を指示することが可能なボタンである。
【００８１】
また、ボタン５４Ｂ〜５４Ｄは、ＬＣＤ５１の下側に設けられる。これら３つのボタン５４Ｂ〜５４Ｄは、左右両方の手で操作可能な位置に配置されている。また、端末装置７は、端末装置７の電源をオン／オフするための電源ボタン５４Ｍを有している。電源ボタン５４Ｍの操作により、ゲーム装置３の電源を遠隔でオン／オフすることも可能である。電源ボタン５４Ｍは、ボタン５４Ｂ〜５４Ｄと同様、ＬＣＤ５１の下側に設けられる。電源ボタン５４Ｍは、ボタン５４Ｂ〜５４Ｄの右側に設けられる。また、４つのボタン５４Ｅ〜５４Ｈは、ＬＣＤ５１の右側であって、右アナログスティック５３Ｂの下側に設けられる。さらに、４つのボタン５４Ｅ〜５４Ｈは、（４つのボタン５４Ｅ〜５４Ｈの中心位置に対して）上下左右の位置関係となるように配置されている。したがって、端末装置７は、ユーザに上下左右の方向を指示させるためのボタンとして４つのボタン５４Ｅ〜５４Ｈを機能させることも可能である。
【００８２】
また、本実施形態では、ハウジング５０の裏側（ＬＣＤ５１が設けられる表面の反対側）には、突起部（庇部５９）が設けられる（図６（ｃ）および図７参照）。図６（ｃ）に示すように、庇部５９は、略板状のハウジング５０の裏面から突起して設けられる、山状の部材である。突起部は、ハウジング５０の裏面を把持するユーザの指に掛止可能な高さ（厚さ）を有する。ユーザは、指を庇部５９に掛けて（指の上に庇部５９を乗せて）把持することによって、端末装置７が比較的大きなサイズであっても、疲れることなく安定した状態で端末装置７を把持することができる。すなわち、庇部５９は、指でハウジング５０を支えるための支持部材であるということができ、また、指掛部ということもできる。
【００８３】
また、庇部５９は、ハウジング５０の上下方向に関しては中央よりも上側に設けられる。庇部５９は、ハウジング５０の表面に設けられる操作部（各アナログスティック５３Ａおよび５３Ｂ）の概ね反対側の位置に設けられる。つまり、突起部は、表示部の左右にそれぞれ設けられる操作部の反対側の位置を含む領域に設けられる。したがって、上記操作部を操作する場合、ユーザは、中指あるいは薬指で庇部５９を支えるようにして端末装置７を把持することができる。これによって、端末装置７がより持ちやすくなり、上記操作部もより操作しやすくなる。また、本実施形態では、突起部は、（突起した部分が）左右に延びる庇状の形状を有するので、ユーザは、中指あるいは薬指を突起部の下面に沿わせて端末装置７を把持することができ、端末装置７がより持ちやすくなる。なお、庇部５９は、（突起した部分が）左右方向に延びるように形成されればよく、図７に示すような水平方向に延びる形状に限られない。
【００８４】
本実施形態においては、ハウジングの裏面に形成される突起部として、庇状の形状をした庇部５９を採用するが、突起部はどのような形状であってもよい。例えば、他の実施形態においては、ハウジング５０の裏側において、２つの突起部が左右両側に設けられる（左右方向の中央には突起部が設けられない）構成であってもよい。また、他の実施形態においては、突起部の断面形状（ｘ軸方向に垂直な断面における形状）は、ユーザの指で端末装置７をよりしっかりと支えることができるように（突起部が指によりしっかりと掛かるように）、鈎型（下面が凹んだ形状）であってもよい。
【００８５】
なお、突起部（庇部５９）の上下方向に関する幅は、いくらであってもよい。例えば、突起部は、ハウジング５０の上辺まで形成されてもよい。すなわち、突起部の上面がハウジング５０の上側の側面と同じ位置に形成されてもよい。このとき、ハウジング５０は、下側が薄く、上側が厚い２段の構成となる。このように、ハウジング５０は、裏面における左右両側に、下方を向く面（突起部の下面）が形成されてもよい。
【００８６】
また、図６の（ａ）図、（ｂ）図、および（ｃ）図に示すように、第１Ｌボタン５４Ｉおよび第１Ｒボタン５４Ｊは、ハウジング５０の上側の面における左右の両側にそれぞれ設けられる。なお、他の実施形態においては、ハウジング５０の上側の面における左右にそれぞれ設けられる操作部は、左右の端部に設けられる必要はなく、端部以外の位置に設けられてもよい。また、ハウジング５０の左右の側面に操作部がそれぞれ設けられてもよい。また、図６の（ｃ）図および図７に示すように、第２Ｌボタン５４Ｋおよび第２Ｒボタン５４Ｌは、上記突起部（庇部５９）の上面に配置される。第２Ｌボタン５４Ｋは、庇部５９の左端付近に設けられる。第２Ｒボタン５４Ｌは、庇部５９の右端付近に設けられる。
【００８７】
本実施形態においては、突起部（庇部５９）の下面に指を当てた状態で端末装置７を把持することによって、ユーザは楽に端末装置７を把持することができる。また、ハウジング５０の上側の面に第１Ｌボタン５４Ｉおよび第１Ｒボタン５４Ｊが設けられ、突起部の上面に第２Ｌボタン５４Ｋおよび第２Ｒボタン５４Ｌが設けられるので、ユーザは上記の状態でこれらのボタンを容易に操作することができる。なお、ユーザは、薬指を庇部５９の下面に当てて（薬指で庇部５９を支えるように）端末装置７を把持することも可能であるし、中指を庇部５９の下面に当てて端末装置７を把持することも可能である。
【００８８】
なお、本実施形態における端末装置７に関しては、突起部（庇部５９）が裏面に設けられるので、ＬＣＤ５１の画面（ハウジング５０の表面）が上を向いた状態で端末装置７を載置させる場合、画面がやや傾いた状態となる。これによって、端末装置７を載置した状態において画面がより見やすくなる。また、端末装置７を載置した状態においてタッチパネル５２に対する入力操作が行いやすくなる。また、他の実施形態においては、上記庇部５９と同程度の高さを有する追加の突起部がハウジング５０の裏面に形成されてもよい。これによれば、ＬＣＤ５１の画面が上を向いた状態では、各突起部が床面に接することで、画面が水平になるように端末装置７を載置することができる。また、追加の突起部を着脱可能な（または折り畳み可能な）ものにしてもよい。これによれば、画面がやや傾いた状態と、画面が水平になる状態との両方で端末装置を載置することができる。すなわち、端末装置７を置いて使う場合には、庇部５９は、脚部として使うことができる。
【００８９】
各ボタン５４Ａ〜５４Ｌには、ゲームプログラムに応じた機能が適宜割り当てられる。例えば、十字ボタン５４Ａおよびボタン５４Ｅ〜５４Ｈは方向指示操作や選択操作等に用いられてもよいし、各ボタン５４Ｂ〜５４Ｅは決定操作やキャンセル操作等に用いられてもよい。また、端末装置７は、ＬＣＤ５１の画面表示をオン／オフするためのボタンや、ゲーム装置３との接続設定（ペアリング）を行うためのボタンを有していてもよい。
【００９０】
図６の（ａ）図に示すように、端末装置７は、マーカ５５Ａおよびマーカ５５Ｂからなるマーカ部５５をハウジング５０の表面に備えている。マーカ部５５は、ＬＣＤ５１の上側に設けられる。各マーカ５５Ａおよびマーカ５５Ｂは、マーカ装置６の各マーカ６Ｒおよび６Ｌと同様、１以上の赤外ＬＥＤで構成される。マーカ５５Ａおよび５５Ｂを構成する赤外ＬＥＤは、赤外光を透過する窓部の内側に配置される。マーカ部５５は、上述のマーカ装置６と同様、コントローラ５の動き等をゲーム装置３が算出するために用いられる。また、ゲーム装置３はマーカ部５５が備える各赤外ＬＥＤの点灯を制御することが可能である。
【００９１】
端末装置７は、撮像手段であるカメラ５６を備えている。カメラ５６は、所定の解像度を有する撮像素子（例えば、ＣＣＤイメージセンサやＣＭＯＳイメージセンサ等）と、レンズとを含む。図６に示すように、本実施形態では、カメラ５６はハウジング５０の表面に設けられる。したがって、カメラ５６は、端末装置７を持っているユーザの顔を撮像することができ、例えばＬＣＤ５１を見ながらゲームを行っている時のユーザを撮像することができる。本実施形態においては、カメラ５６は、２つのマーカ５５Ａおよび５５Ｂの間に配置される。
【００９２】
なお、端末装置７は、音声入力手段であるマイク７９を備えている。ハウジング５０の表面には、マイクロフォン用孔５０ｃが設けられる。マイク７９はこのマイクロフォン用孔５０ｃの奥のハウジング５０内部に設けられる。マイク７９は、ユーザの音声等、端末装置７の周囲の音を検出する。
【００９３】
端末装置７は、音声出力手段であるスピーカ７７を備えている。図６の（ｄ）図に示すように、ハウジング５０の表面の下側にはスピーカ孔５７が設けられる。スピーカ７７の出力音はこのスピーカ孔５７から出力される。本実施形態では、端末装置７は２つのスピーカを備えており、左スピーカおよび右スピーカのそれぞれの位置にスピーカ孔５７が設けられる。なお、端末装置７は、スピーカ７７の音量を調節するためのつまみ６４を備える。また、端末装置７は、イヤホン等の音声出力部を接続するための音声出力端子６２を備える。ここでは、ハウジングの下側の側面に付加装置が接続されることを考慮して、上記音声出力端子６２およびつまみ６４はハウジング５０の上画の側面に設けられるが、左右の側面や下側の側面に設けられてもよい。
【００９４】
また、ハウジング５０には、赤外線通信モジュール８２からの赤外線信号を端末装置７の外部に出射するための窓６３が設けられる。ここでは、ＬＣＤ５１の両側を把持した場合にユーザの前方へ赤外線信号が発射されるように、窓６３はハウジング５０の上側の側面に設けられる。ただし、他の実施形態においては、窓６３は、例えばハウジング５０の裏面等、どの位置に設けられてもよい。
【００９５】
また、端末装置７は、他の装置を端末装置７に接続するための拡張コネクタ５８を備えている。拡張コネクタ５８は、端末装置７に接続される他の装置との間でデータ（情報）を送受信するための通信端子である。なお、拡張コネクタ５８に接続される他の付加装置はどのようなものであってもよく、例えば、特定のゲームに用いるコントローラ（銃型のコントローラ等）やキーボード等の入力装置であってもよい。付加装置を接続する必要がなければ、拡張コネクタ５８は設けられていなくともよい。拡張コネクタ５８には、付加装置に電力を供給する端子や、充電のための端子が含まれていてもよい。
【００９６】
また、端末装置７は、拡張コネクタ５８とは別に、付加装置から電力を取得するための充電端子６６を有する。図示しない充電スタンドに充電端子６６が接続された場合、充電スタンドから端末装置７へ電力が供給される。
【００９７】
また、端末装置７は充電コネクタを有し、ハウジング５０は充電コネクタを保護するためのカバー部６１を有する。充電コネクタは、後述する充電器８６に接続可能であり、充電器に充電コネクタが接続された場合、充電器８６から端末装置７へ電力が供給される。
【００９８】
図６（ｄ）および図７に示すように、突起部（庇部５９）の下面には、付加装置が有する爪部が係止可能な係止穴５９ａおよび５９ｂが設けられる。また、ハウジング５０の下面に係止穴５０ａおよび５０ｂが設けられる。端末装置７に付加装置を接続する場合には、付加装置の４つの爪部が上記４つの各係止穴にそれぞれ係止することによって端末装置７と付加装置とが固定される。
【００９９】
また、端末装置７は、ハウジング５０に対して着脱可能な電池蓋６７を有している。電池蓋６７の内側には電池（図８に示す電池８５）が配置される。本実施形態においては、電池蓋６７はハウジング５０の裏側に設けられ、突起部（庇部５９）の下側に設けられる。
【０１００】
また、端末装置７のハウジング５０には、ストラップの紐を結びつけるための孔６５ａおよび６５ｂが設けられる。ユーザは、孔６５ａおよび６５ｂのいずれかにストラップを結びつけ、ストラップを自身の手首に結びつけてもよい。これによって、万一ユーザが端末装置７を落としたり、端末装置７が手から離れたりした場合でも、端末装置７が落下したり他の物に衝突したりすることを防止することができる。
【０１０１】
なお、図６および図７に示した端末装置７に関して、各操作ボタンやハウジング５０の形状や、各構成要素の数および設置位置等は単なる一例に過ぎず、他の形状、数、および設置位置であってもよい。
【０１０２】
次に、図８を参照して、端末装置７の内部構成について説明する。図８は、一例である端末装置７の内部構成を示すブロック図である。図８に示すように、端末装置７は、図６に示した構成の他、タッチパネルコントローラ７１、磁気センサ７２、加速度センサ７３、ジャイロセンサ７４、ユーザインタフェースコントローラ（ＵＩコントローラ）７５、コーデックＬＳＩ７６、スピーカ７７、サウンドＩＣ７８、マイク７９、無線モジュール８０、アンテナ８１、赤外線通信モジュール８２、フラッシュメモリ８３、電源ＩＣ８４、電池８５、およびバイブレータ８９を備える。これらの電子部品は、電子回路基板上に実装されてハウジング５０内に収納される。
【０１０３】
ＵＩコントローラ７５は、各種の入出力部に対するデータの入出力を制御するための回路である。ＵＩコントローラ７５は、タッチパネルコントローラ７１、アナログスティック５３（アナログスティック５３Ａおよび５３Ｂ）、操作ボタン５４（各操作ボタン５４Ａ〜５４Ｌ）、マーカ部５５、磁気センサ７２、加速度センサ７３、ジャイロセンサ７４、およびバイブレータ８９に接続される。また、ＵＩコントローラ７５は、コーデックＬＳＩ７６と拡張コネクタ５８に接続される。また、ＵＩコントローラ７５には電源ＩＣ８４が接続され、ＵＩコントローラ７５を介して各部に電力が供給される。電源ＩＣ８４には内蔵の電池８５が接続され、電力が供給される。また、電源ＩＣ８４には、外部電源から電力を取得可能な充電器８６またはケーブルを充電コネクタを介して接続することが可能であり、端末装置７は、当該充電器８６またはケーブルを用いて外部電源からの電力供給と充電を行うことができる。なお、端末装置７は、図示しない充電機能を有するクレイドルに端末装置７を装着することで充電を行うことも可能である。
【０１０４】
タッチパネルコントローラ７１は、タッチパネル５２に接続され、タッチパネル５２の制御を行う回路である。タッチパネルコントローラ７１は、タッチパネル５２からの信号に基づいて所定の形式の入力位置データを生成してＵＩコントローラ７５へ出力する。入力位置データは、タッチパネル５２の入力面において入力が行われた位置の座標を表す。なお、タッチパネルコントローラ７１は、タッチパネル５２からの信号の読み込み、および、入力位置データの生成を所定時間に１回の割合で行う。また、ＵＩコントローラ７５からタッチパネルコントローラ７１へは、タッチパネル５２に対する各種の制御指示が出力される。
【０１０５】
アナログスティック５３は、ユーザの指で操作されるスティック部がスライドした（または傾倒した）方向および量を表すスティックデータをＵＩコントローラ７５へ出力する。また、操作ボタン５４は、各操作ボタン５４Ａ〜５４Ｌに対する入力状況（押下されたか否か）を表す操作ボタンデータをＵＩコントローラ７５へ出力する。
【０１０６】
磁気センサ７２は、磁界の大きさおよび方向を検知することで方位を検出する。検出された方位を示す方位データは、ＵＩコントローラ７５へ出力される。また、ＵＩコントローラ７５から磁気センサ７２へは、磁気センサ７２に対する制御指示が出力される。磁気センサ７２に関しては、ＭＩ（磁気インピーダンス）素子、フラックスゲートセンサ、ホール素子、ＧＭＲ（巨大磁気抵抗）素子、ＴＭＲ（トンネル磁気抵抗）素子、あるいはＡＭＲ（異方性磁気抵抗）素子等を用いたセンサがあるが、方位を検出することができればどのようなものが用いられてもよい。なお、厳密には、地磁気以外に磁界が発生している場所においては、得られた方位データは方位を示さないことになるが、そのような場合であっても、端末装置７が動いた場合には方位データが変化するため、端末装置７の姿勢の変化を算出することができる。
【０１０７】
加速度センサ７３は、ハウジング５０の内部に設けられ、３軸（図６の（ａ）図に示すｘｙｚ軸）方向に沿った直線加速度の大きさを検出する。具体的には、加速度センサ７３は、ハウジング５０の長辺方向をｘ軸、ハウジング５０の表面に対して垂直な方向をｙ軸、ハウジング５０の短辺方向をｚ軸として、各軸の直線加速度の大きさを検出する。検出された加速度を表す加速度データはＵＩコントローラ７５へ出力される。また、ＵＩコントローラ７５から加速度センサ７３へは、加速度センサ７３に対する制御指示が出力される。加速度センサ７３は、本実施形態では例えば静電容量式のＭＥＭＳ型加速度センサであるとするが、他の実施形態においては他の方式の加速度センサを用いるようにしてもよい。また、加速度センサ７３は１軸または２軸方向を検出する加速度センサであってもよい。
【０１０８】
ジャイロセンサ７４は、ハウジング５０の内部に設けられ、上記ｘ軸、ｙ軸およびｚ軸の３軸周りの角速度を検出する。検出された角速度を表す角速度データは、ＵＩコントローラ７５へ出力される。また、ＵＩコントローラ７５からジャイロセンサ７４へは、ジャイロセンサ７４に対する制御指示が出力される。なお、３軸の角速度を検出するために用いられるジャイロセンサの数および組み合わせはどのようなものであってもよく、ジャイロセンサ７４はジャイロセンサ４８と同様、２軸ジャイロセンサと１軸ジャイロセンサとで構成されてもよい。また、ジャイロセンサ７４は１軸または２軸方向を検出するジャイロセンサであってもよい。
【０１０９】
バイブレータ８９は、例えば振動モータやソレノイドであり、ＵＩコントローラ７５に接続される。ＵＩコントローラ７５の指示によりバイブレータ８９が作動することによって端末装置７に振動が発生する。これによって、端末装置７を把持しているユーザの手にその振動が伝達される、いわゆる振動対応ゲームを実現することができる。
【０１１０】
ＵＩコントローラ７５は、上記の各構成要素から受け取った入力位置データ、スティックデータ、操作ボタンデータ、方位データ、加速度データ、および角速度データを含む操作データをコーデックＬＳＩ７６へ出力する。なお、拡張コネクタ５８を介して端末装置７に他の装置が接続される場合には、当該他の装置に対する操作を表すデータが上記操作データにさらに含まれていてもよい。
【０１１１】
コーデックＬＳＩ７６は、ゲーム装置３へ送信するデータに対する圧縮処理、および、ゲーム装置３から送信されたデータに対する伸張処理を行う回路である。コーデックＬＳＩ７６には、ＬＣＤ５１、カメラ５６、サウンドＩＣ７８、無線モジュール８０、フラッシュメモリ８３、および赤外線通信モジュール８２が接続される。また、コーデックＬＳＩ７６はＣＰＵ８７と内部メモリ８８を含む。端末装置７はゲーム処理自体を行なわない構成であるが、端末装置７の管理や通信のための最小限のプログラムを実行してもよい。電源投入時にフラッシュメモリ８３に格納されたプログラムを内部メモリ８８に読み出してＣＰＵ８７が実行することで、端末装置７が起動する。また、内部メモリ８８の一部の領域はＬＣＤ５１のためのＶＲＡＭとして使用される。
【０１１２】
カメラ５６は、ゲーム装置３からの指示に従って画像を撮像し、撮像した画像データをコーデックＬＳＩ７６へ出力する。また、コーデックＬＳＩ７６からカメラ５６へは、画像の撮像指示等、カメラ５６に対する制御指示が出力される。なお、カメラ５６は動画の撮影も可能である。すなわち、カメラ５６は、繰り返し撮像を行って画像データをコーデックＬＳＩ７６へ繰り返し出力することも可能である。
【０１１３】
サウンドＩＣ７８は、スピーカ７７およびマイク７９に接続され、スピーカ７７およびマイク７９への音声データの入出力を制御する回路である。すなわち、コーデックＬＳＩ７６から音声データを受け取った場合、サウンドＩＣ７８は当該音声データに対してＤ／Ａ変換を行って得られる音声信号をスピーカ７７へ出力し、スピーカ７７から音を出力させる。また、マイク７９は、端末装置７に伝わる音（ユーザの音声等）を検知して、当該音を示す音声信号をサウンドＩＣ７８へ出力する。サウンドＩＣ７８は、マイク７９からの音声信号に対してＡ／Ｄ変換を行い、所定の形式の音声データをコーデックＬＳＩ７６へ出力する。
【０１１４】
赤外線通信モジュール８２は、赤外線信号を発光し、他の装置との間で赤外線通信を行う。ここでは、赤外線通信モジュール８２は、例えばＩｒＤＡの規格に従った赤外線通信を行う機能と、テレビ２を制御するための赤外線信号（制御信号）を出力する機能とを備える。
【０１１５】
コーデックＬＳＩ７６は、カメラ５６からの画像データ、マイク７９からの音声データ、および、ＵＩコントローラ７５からの操作データを、端末操作データとして無線モジュール８０を介してゲーム装置３へ送信する。本実施形態では、コーデックＬＳＩ７６は、画像データおよび音声データに対して、コーデックＬＳＩ２７と同様の圧縮処理を行う。上記端末操作データ、ならびに、圧縮された画像データおよび音声データは、送信データとして無線モジュール８０へ出力される。無線モジュール８０にはアンテナ８１が接続されており、無線モジュール８０はアンテナ８１を介してゲーム装置３へ上記送信データを送信する。無線モジュール８０は、ゲーム装置３の端末通信モジュール２８と同様の機能を有している。すなわち、無線モジュール８０は、例えばＩＥＥＥ８０２．１１ｎの規格に準拠した方式により、無線ＬＡＮに接続する機能を有する。送信されるデータは必要に応じて暗号化されていてもよいし、されていなくともよい。
【０１１６】
以上のように、端末装置７からゲーム装置３へ送信される送信データには、操作データ（端末操作データ）、画像データ、および音声データが含まれる。なお、拡張コネクタ５８を介して端末装置７に他の装置が接続される場合には、当該他の装置から受け取ったデータが上記送信データにさらに含まれていてもよい。コーデックＬＳＩ７６は、赤外線通信モジュール８２による赤外線通信によって受信したデータを、必要に応じて上記送信データに含めてゲーム装置３へ送信してもよい。
【０１１７】
また、上述のように、ゲーム装置３から端末装置７へは、圧縮された画像データおよび音声データが送信される。これらのデータはアンテナ８１（受信部）で受信され、無線モジュール８０を介してコーデックＬＳＩ７６に送られる。コーデックＬＳＩ７６は、受信された画像データおよび音声データを伸張する。伸張された画像データはＬＣＤ５１へ出力され、画像がＬＣＤ５１に表示される。つまり、コーデックＬＳＩ７６（ＣＰＵ８７）は、受信された画像データを表示部に表示させる。また、伸張された音声データはサウンドＩＣ７８へ出力され、サウンドＩＣ７８はスピーカ７７から音を出力させる。
【０１１８】
また、ゲーム装置３から受信されるデータに制御データが含まれる場合、コーデックＬＳＩ７６およびＵＩコントローラ７５は、制御データに従った制御指示を各部に行う。上述のように、制御データは、端末装置７が備える各構成要素（本実施形態では、カメラ５６、タッチパネルコントローラ７１、マーカ部５５、各センサ６２〜６４、および赤外線通信モジュール８２）に対する制御指示を表すデータである。本実施形態では、制御データが表す制御指示としては、上記各構成要素を動作させたり、動作を休止（停止）させたりする指示が考えられる。すなわち、ゲームで使用しない構成要素については電力消費を抑えるために休止させてもよく、その場合、端末装置７からゲーム装置３へ送信される送信データには、休止した構成要素からのデータが含まれないようにする。なお、マーカ部５５は赤外ＬＥＤであるので、制御は単に電力の供給のＯＮ／ＯＦＦでよい。
【０１１９】
また、ゲーム装置３は、上記赤外線通信モジュール８２の出力を制御することによって、テレビ２の動作を制御することが可能である。すなわち、ゲーム装置３は、テレビ２を制御するための制御指令に対応する赤外線信号を赤外線通信モジュール８２に出力させるための指示（上記制御データ）を端末装置７へ出力する。この指示に応じて、コーデックＬＳＩ７６は、上記制御指令に対応する赤外線信号を赤外線通信モジュール８２に出力させる。ここで、テレビ２は赤外線信号を受光可能な赤外線受光部を備えている。赤外線通信モジュール８２から出力された赤外線信号が赤外線受光部によって受光されることで、テレビ２は当該赤外線信号に応じた動作を行う。なお、ゲーム装置３からの上記指示は、赤外線信号のパターンを示すものであってもよいし、端末装置７が赤外線信号のパターンを記憶している場合には、当該パターンを示す指示であってもよい。
【０１２０】
以上のように、端末装置７は、タッチパネル５２、アナログスティック５３、および操作ボタン５４といった操作手段を備えるが、他の実施形態においては、これらの操作手段に代えて、または、これらの操作手段とともに、他の操作手段を備える構成であってもよい。
【０１２１】
また、端末装置７は、端末装置７の動き（位置や姿勢、あるいは、位置や姿勢の変化を含む）を算出するためのセンサとして、磁気センサ７２、加速度センサ７３、およびジャイロセンサ７４を備えるが、他の実施形態においては、これらのセンサのうち１つまたは２つのみを備える構成であってもよい。また、他の実施形態においては、これらのセンサに代えて、または、これらのセンサとともに、他のセンサを備える構成であってもよい。
【０１２２】
また、端末装置７は、カメラ５６およびマイク７９を備える構成であるが、他の実施形態においては、カメラ５６およびマイク７９を備えていなくてもよく、また、いずれか一方のみを備えていてもよい。
【０１２３】
また、端末装置７は、端末装置７とコントローラ５との位置関係（コントローラ５から見た端末装置７の位置および／または姿勢等）を算出するための構成としてマーカ部５５を備える構成であるが、他の実施形態ではマーカ部５５を備えていない構成としてもよい。また、他の実施形態では、端末装置７は、上記位置関係を算出するための構成として他の手段を備えていてもよい。例えば、他の実施形態においては、コントローラ５がマーカ部を備え、端末装置７が撮像素子を備える構成としてもよい。さらにこの場合、マーカ装置６は赤外ＬＥＤに代えて、撮像素子を備える構成としてもよい。
【０１２４】
［５．ゲーム処理の概要］
次に、本実施形態のゲームシステム１において実行されるゲーム処理の概要について説明する。本ゲーム処理によって実行されるゲームは、端末装置７と複数のコントローラ５とを操作装置として用いて、複数人のプレイヤが同時にゲームを行う複数人プレイのゲームである。なお、以下においては、ゲームシステム１が３つのコントローラ５を含み、３つのコントローラ５が用いられる場合について説明する。つまり、以下においては、端末装置７を操作する１人のプレイヤと、３つのコントローラ５を１人につき１つ操作する３人のプレイヤとの合計４人のプレイヤによってゲームが行われる。なお、他の実施形態においては、コントローラ５の数はいくつであってもよい。
【０１２５】
図９は、本実施形態におけるテレビ用ゲーム画像の一例を示す図である。また、図１０は、本実施形態における端末用ゲーム画像の一例を示す図である。図９および図１０に示すように、ゲーム空間には、第１オブジェクト１０１、３つの第２オブジェクト１０２〜１０４、および、敵オブジェクト１０５等が配置される。第１オブジェクト１０１は第１プレイヤの操作対象である。つまり、第１オブジェクト１０１は、端末装置７によって操作される。第２オブジェクト１０２〜１０４は、第２プレイヤの操作対象である。つまり、第２オブジェクト１０２〜１０４は、各コントローラ５によって操作される。第２オブジェクトは、コントローラ５の数に応じて各コントローラ５に対応してゲーム空間に配置される。本実施形態では、コントローラ５と同数の第２オブジェクト１０２〜１０４がゲーム空間に配置され、１つの第２オブジェクトはそれに対応する１つのコントローラ５によって操作される。ただし、他の実施形態においては、１つのコントローラ５によってそれに対応する複数の第２オブジェクトが操作されてもよい。なお、ゲームシステム１において行われるゲームの内容はどのようなものであってもよいが、本実施形態においては、各プレイヤが各オブジェクト１０１〜１０４を操作して、敵オブジェクト１０５を倒すゲームが行われる。
【０１２６】
ゲームシステム１は、第１オブジェクト１０１を端末装置７に対する操作に応じて移動させる（後述するステップＳ１１）。第１オブジェクト１０１を移動させるための操作はどのような操作であってもよい。本実施形態においては、ゲームシステム１は、端末装置７のタッチパネル５２、あるいは、アナログスティック５３Ａまたは５３Ｂに対する入力に応じて第１オブジェクト１０１を移動させる。
【０１２７】
また、ゲームシステム１は、複数の第２オブジェクト１０２〜１０４を、各コントローラ５に対する操作に応じてそれぞれ移動させる（後述するステップＳ１３）。各第２オブジェクト１０２〜１０４を移動させるための操作はどのような操作であってもよい。本実施形態においては、ゲームシステム１は、コントローラ５の十字ボタン３２ａに対する入力に応じて各第２オブジェクト１０２〜１０４をそれぞれ移動させる。
【０１２８】
ゲームシステム１は、ゲーム空間において第１オブジェクト１０１の位置に基づいて第１仮想カメラを設定する（後述するステップＳ２１）。第１仮想カメラは、端末用ゲーム画像を生成するために設定される仮想カメラである。ゲームシステム１は、第１仮想カメラから見たゲーム空間を表す端末用ゲーム画像を端末装置７の表示部（ＬＣＤ５１）に表示させる。第１仮想カメラは、第１オブジェクト１０１の位置に基づいて位置および姿勢が設定されればよい。本実施形態においては、図１０に示すように、第１仮想カメラは、いわゆる三人称視点のゲーム画像が生成されるように設定される。すなわち、第１仮想カメラは、第１オブジェクト１０１を後方から見るように設定される。なお、他の実施形態においては、第１仮想カメラは、いわゆる一人称視点のゲーム画像が生成されるように設定されてもよい。すなわち、第１仮想カメラは、第１オブジェクト１０１の位置に設定されてもよい。
【０１２９】
また、ゲームシステム１は、ゲーム空間において複数の第２オブジェクト１０２〜１０４を少なくとも視野範囲に含むように、各第２オブジェクトの位置に基づいて第２仮想カメラを設定する（後述するステップＳ２３およびＳ２４）。第２仮想カメラは、テレビ用ゲーム画像を生成するために設定される仮想カメラである。ゲームシステム１は、第２仮想カメラから見たゲーム空間を表すテレビ用ゲーム画像を、端末装置７とは別体の所定の表示装置（テレビ２）に表示させる。本実施形態においては、図９に示すように、第２仮想カメラは、各第２オブジェクト１０２〜１０４を上方から見るような位置および姿勢に設定される。
【０１３０】
以上のように、本実施形態においては、各コントローラ５の操作対象である各第２オブジェクト１０２〜１０４を含むゲーム空間を表す画像がテレビ２に表示される。これによれば、各第２プレイヤは、自分が操作する第２オブジェクトとともに、他の第２プレイヤが操作する第２オブジェクトを見ながらゲームを行うことができる。第２プレイヤは、「他の第２プレイヤと一緒にゲームを行っている」という一体感を味わいながらゲームを行うことができる。
【０１３１】
また、本実施形態においては、ゲームシステム１は、ゲーム空間において第１オブジェクト１０１および複数の第２オブジェクト１０２〜１０４を視野範囲に含むように、第１オブジェクト１０１および複数の第２オブジェクト１０２〜１０４の位置に基づいて第２仮想カメラを設定する（後述するステップＳ２４）。つまり、本実施形態においては、第２オブジェクト１０２〜１０４だけでなく第１オブジェクト１０１も第２仮想カメラの視野範囲に含まれ、テレビ２に表示される。これによれば、第１プレイヤの操作する第１オブジェクト１０１の様子や活躍を各第２プレイヤも見ることができるので、第１プレイヤと第２プレイヤとの間においてもゲームの一体感を味わうことができ、ゲームシステム１における全てのプレイヤがゲームの一体感を味わうことができる。また、第１オブジェクト１０１の様子を各第２プレイヤが確認することができるので、例えば第１プレイヤと第２プレイヤとが互いに指示を出し合う等、協力してゲーム操作を行う動機付けを与えることができ、より興趣性の高いゲームを提供することができる。
【０１３２】
なお、詳細は後述するが、本実施形態においては、所定の条件下においては、第１オブジェクト１０１がテレビ２の表示範囲から外れることもある（後述するステップＳ２３，Ｓ２４，Ｓ１６，Ｓ１７）。したがって、本実施形態においては、テレビ用画像は、主に第２プレイヤのための画像と言うことができる。また、端末用画像は、端末装置７を把持する第１プレイヤのための画像と言うことができる。
【０１３３】
また、本実施形態において、第１オブジェクト１０１および第２オブジェクト１０２〜１０４は、単一のゲーム空間に配置される。また、第１および第２仮想カメラは当該単一のゲーム空間に配置され、端末装置７およびテレビ２には当該単一のゲーム空間を表す画像が表示される。ここで、「単一のゲーム空間」とは、単一の仮想空間に設定され、第１および第２オブジェクト１０１〜１０４がその中を移動可能な空間である。例えば、仮想空間において連続して構成される地形オブジェクト上の空間は、単一のゲーム空間である。各オブジェクト１０１〜１０４が単一のゲーム空間に配置されるので、各プレイヤはゲームの一体感を味わうことができる。
【０１３４】
また、本実施形態においては、ゲーム空間を表すゲーム画像はコントローラ５には表示されない。すなわち、本実施形態においてはコントローラ５は表示部を有していないので、ゲーム画像自体がコントローラ５には表示されない。したがって、各第２プレイヤは、各プレイヤのオブジェクトが表示されるテレビ２を見てゲームを行うので、「他の第２プレイヤと一緒にゲームを行っている」という一体感をより味わうことができる。なお、ゲーム空間を表すゲーム画像がコントローラ５には表示されない場合の態様としては、本実施形態のようにコントローラ５が表示部を有していない態様の他、次の態様が考えられる。
（１）コントローラ５は表示部を有しているが、表示部にはゲーム画像が表示されない態様
（２）コントローラ５は表示部を有しているが、ゲーム空間を表す画像以外のゲーム画像が表示部に表示される態様
上記（２）において、「ゲーム空間を表す画像以外のゲーム画像」とは、例えば、ゲームのタイトル画像や、メニュー画像等である。ゲームシステム１が上記（１）または（２）の態様を取る場合であっても、本実施形態と同様に各第２プレイヤはテレビ２を見てゲームを行うので、本実施形態と同様の効果を奏する。
【０１３５】
また、コントローラ５が表示部を有している場合において、表示部は、サブゲーム画像を表示してもよい。サブゲーム画像とは、第２ゲーム画像に対して補助的に用いるための画像である。サブゲーム画像としては、例えば次のようなゲーム画像が考えられる。
・メニュー画像
・テレビ２に表示されるゲーム空間よりも簡略化されたゲーム空間を表す画像（例えばマップ画像）
・ゲーム画像が表示される表示装置（テレビ２）よりも小さい画面に表示される画像
・その一部にのみゲーム空間を表す画像が含まれるゲーム画像
・アイテムを選択するための画像
・ゲーム操作を説明する画像
上記のようなサブゲーム画像がコントローラ５に表示される場合、各第２プレイヤはテレビ２を主に見てゲームを行うので、本実施形態と同様の効果を奏する。
【０１３６】
以上のように、コントローラ５は表示部を有するものであってもよい。したがって、他の実施形態においては、ゲームシステム１は、コントローラ５に代えて端末装置７を含む構成であってもよい。つまり、ゲームシステム１は３つ以上の端末装置を含み、各プレイヤが端末装置を用いてゲーム操作を行うようにしてもよい。
【０１３７】
［６．ゲームシステムにおける処理の詳細］
次に、本ゲームシステムにおいて実行されるゲーム処理の詳細を説明する。まず、ゲーム処理において用いられる各種データについて説明する。図１１は、ゲーム装置３のメインメモリ（外部メインメモリ１２または内部メインメモリ１１ｅ）に記憶されるデータの一例を示す図である。図１１に示すように、ゲーム装置３のメインメモリには、ゲームプログラム１１０、端末操作データ１１１、コントローラ操作データ１１２、および処理用データ１１３が記憶される。なお、メインメモリには、図１１に示すデータの他、ゲーム処理に用いられる各種データ（画像データや音声データ等）が記憶される。また、図１１に示す記憶領域の一部は、ゲーム装置３がアクセス可能な他の記憶装置（フラッシュメモリ１７等）に設けられてもよい。
【０１３８】
ゲームプログラム１１０は、ゲーム装置３に電源が投入された後の適宜のタイミングで光ディスク４からその一部または全部が読み込まれてメインメモリに記憶される。なお、ゲームプログラム１１０は、光ディスク４に代えて、フラッシュメモリ１７やゲーム装置３の外部装置から（例えばインターネットを介して）取得されてもよい。また、ゲームプログラム１１０に含まれる一部（例えば、コントローラ５および／または端末装置７の姿勢を算出するためのプログラム）については、ゲーム装置３内に予め記憶されていてもよい。
【０１３９】
端末操作データ１１１は、端末装置７に対するプレイヤの操作を表すデータである。端末操作データ１１１は、端末装置７から送信されてゲーム装置３において取得され、メインメモリに記憶される。なお、ゲーム装置３は、複数の端末装置と通信可能であり、各端末装置から操作データをそれぞれ取得することが可能である。端末装置が複数である場合、各端末装置からそれぞれ送信されてくる各端末操作データがメインメモリにそれぞれ記憶される。メインメモリには、端末装置毎に最新の（最後に取得された）ものから順に所定個数の端末操作データが記憶されてもよい。
【０１４０】
端末操作データ１１１は、角速度データ、加速度データ、操作ボタンデータ、スティックデータ、タッチ位置データ、および方位データを含む。角速度データは、ジャイロセンサ７４によって検出された角速度を表すデータである。加速度データは、加速度センサ７３によって検出された加速度（加速度ベクトル）を表すデータである。操作ボタンデータは、端末装置７に設けられる各操作ボタン５４Ａ〜５４Ｌに対する入力状態を表すデータである。具体的には、操作ボタンデータは、各操作ボタン５４Ａ〜５４Ｌが押下されているか否かを表す。スティックデータは、アナログスティック５３（アナログスティック５３Ａおよび５３Ｂ）のスティック部がスライドした（または傾倒した）方向および量を表すデータである。タッチ位置データは、タッチパネル５２の入力面において入力が行われた位置（タッチ位置）を表すデータである。本実施形態では、タッチ位置データは、上記入力面上の位置を示すための２次元座標系の座標値を表す。なお、タッチパネル５２がマルチタッチ方式である場合には、タッチ位置データは複数のタッチ位置を表すこともある。方位データは、磁気センサ７２によって検出された方位を表すデータである。
【０１４１】
なお、端末操作データ１１１は、端末装置７に対する操作を表すものであればよく、本実施形態において端末操作データ１１１が含む上記各データのいずれか１つのみを含むものであってもよい。また、端末装置７が他の入力手段（例えば、タッチパッドや、コントローラ５の撮像手段等）を有する場合には、端末操作データ１１１は、当該他の入力手段に対する操作を表すデータを含んでいてもよい。
【０１４２】
コントローラ操作データ１１２は、コントローラ５に対するユーザ（プレイヤ）の操作を表すデータである。コントローラ操作データ１１２は、コントローラ５から送信されてゲーム装置３において取得され、メインメモリに記憶される。コントローラ操作データ１１２は、上記加速度センサ３７およびジャイロセンサ４８の検出結果を表すデータ、各操作ボタン３２ａ〜３２ｉに対する入力状態を表すデータ、および、上記マーカ座標を表すデータを含む。本実施形態においては、３つのコントローラ５からそれぞれ送信されてくる３つのコントローラ操作データ１１２がメインメモリにそれぞれ記憶される。メインメモリには、３つのコントローラ５毎に最新の（最後に取得された）ものから順に所定個数のコントローラ操作データが記憶されてもよい。
【０１４３】
なお、コントローラ操作データ１１２は、コントローラ５を操作するユーザの操作を表すものであればよく、上記の各データの一部のみを含むものであってもよい。また、コントローラ５が他の入力手段（例えば、タッチパネルやアナログスティック等）を有する場合には、コントローラ操作データ１１２は、当該他の入力手段に対する操作を表すデータを含んでいてもよい。
【０１４４】
処理用データ１１３は、後述するゲーム処理（図１２）において用いられるデータである。処理用データ１１３は、第１オブジェクトデータ１１４、第２オブジェクトデータ１１５、第１カメラデータ１１６、第２カメラデータ１１７、および、表示領域データ１１８を含む。なお、図１２に示すデータの他、処理用データ１１３は、ゲームに登場する各種オブジェクトに設定される各種パラメータを表すデータ等、ゲーム処理において用いられる各種データを含む。
【０１４５】
第１オブジェクトデータ１１４は、ゲーム空間における上記第１オブジェクト１０１の位置および向きを表す。また、第２オブジェクトデータ１１５は、ゲーム空間における上記第２オブジェクト１０２〜１０４の位置および向きを表す。本実施形態においては、複数（３つ）の第２オブジェクト１０２〜１０４が登場するので、第２オブジェクト毎に第２オブジェクトデータ１１５がメインメモリに記憶される。
【０１４６】
第１カメラデータ１１６は、端末用画像を生成するためにゲーム空間に設定される第１仮想カメラの位置および姿勢を表す。第２カメラデータ１１７は、テレビ用画像を生成するためにゲーム空間に設定される第２仮想カメラの位置および姿勢を表す。本実施形態においては、１つの第２仮想カメラがゲーム空間に設定される。
【０１４７】
表示領域データ１１８は、第２仮想カメラによって撮影されるゲーム空間の領域（表示領域と呼ぶ）を表す。つまり、表示領域は、テレビ２に表示されるゲーム空間の領域である。本実施形態においては、表示領域は、ゲーム空間において各オブジェクト１０１〜１０４が配置される平面（地面）上における範囲を表す。
【０１４８】
次に、ゲーム装置３において実行されるゲーム処理の詳細を、図１２〜図１８を用いて説明する。図１２は、ゲーム装置３において実行されるゲーム処理の流れの一例を示すメインフローチャートである。ゲーム装置３の電源が投入されると、ゲーム装置３のＣＰＵ１０は、図示しないブートＲＯＭに記憶されている起動プログラムを実行し、これによってメインメモリ等の各ユニットが初期化される。そして、光ディスク４に記憶されたゲームプログラムがメインメモリに読み込まれ、ＣＰＵ１０によって当該ゲームプログラムの実行が開始される。図１２に示すフローチャートは、以上の処理が完了した後に行われる処理を示すフローチャートである。なお、ゲーム装置３においては、電源投入後にゲームプログラムがすぐに実行される構成であってもよいし、電源投入後にまず所定のメニュー画面を表示する内蔵プログラムが実行され、その後例えばプレイヤによるメニュー画面に対する選択操作によってゲームの開始が指示されたことに応じてゲームプログラムが実行される構成であってもよい。
【０１４９】
なお、図１２、図１３、および図１５に示すフローチャートにおける各ステップの処理は、単なる一例に過ぎず、同様の結果が得られるのであれば、各ステップの処理順序を入れ替えてもよい。また、変数の値や、判断ステップで利用される閾値も、単なる一例に過ぎず、必要に応じて他の値を採用してもよい。また、本実施形態では、上記フローチャートの各ステップの処理をゲーム装置３のＣＰＵ１０が実行するものとして説明するが、上記フローチャートにおける一部のステップの処理を、ＣＰＵ１０以外のプロセッサや専用回路が実行するようにしてもよい。
【０１５０】
まずステップＳ１において、ＣＰＵ１０は初期処理を実行する。初期処理は、仮想のゲーム空間を構築し、ゲーム空間に登場する各オブジェクトを初期位置に配置したり、ゲーム処理で用いる各種パラメータの初期値を設定したりする処理である。なお、本実施形態においては、各オブジェクト１０１〜１０５が所定の位置および所定の向きに配置される。すなわち、第１オブジェクト１０１の位置および向きを表すデータが第１オブジェクトデータ１１４としてメインメモリに記憶され、各第２オブジェクト１０２〜１０４の位置および向きを表すデータがそれぞれ第２オブジェクトデータ１１５としてメインメモリに記憶される。また、敵オブジェクト１０５の位置および向きを表すデータがメインメモリに記憶される。さらに、第１オブジェクト１０１の位置および向きに応じた初期位置および初期姿勢となるように第１仮想カメラが設定される。第１仮想カメラの初期位置および初期姿勢を表すデータは、第１カメラデータ１１６としてメインメモリに記憶される。また、第１および第２オブジェクト１０１〜１０４の位置に応じた初期位置および初期姿勢となるように第２仮想カメラが設定される。第２仮想カメラの初期位置および初期姿勢を表すデータは、第２カメラデータ１１７としてメインメモリに記憶される。
【０１５１】
上記ステップＳ１の次にステップＳ２の処理が実行される。以降、ステップＳ２〜Ｓ９の一連の処理からなる処理ループが所定時間（１フレーム時間。例えば１／６０秒）に１回の割合で繰り返し実行される。
【０１５２】
ステップＳ２において、ＣＰＵ１０は、端末装置７から送信されてくる端末操作データを取得する。端末装置７は、端末操作データをゲーム装置３へ繰り返し送信するので、ゲーム装置３は端末操作データを逐次受信する。ゲーム装置３においては、端末通信モジュール２８が端末操作データを逐次受信し、入出力プロセッサ１１ａが端末操作データをメインメモリに逐次記憶する。ステップＳ２においては、ＣＰＵ１０は、最新の端末操作データ１１１をメインメモリから読み出す。ステップＳ２の次にステップＳ３の処理が実行される。
【０１５３】
ステップＳ３において、ＣＰＵ１０は、各コントローラ５から送信されてくるコントローラ操作データをそれぞれ取得する。各コントローラ５はコントローラ操作データをゲーム装置３へ繰り返し送信するので、ゲーム装置３においては、コントローラ通信モジュール１９が各コントローラ操作データを逐次受信し、受信された各コントローラ操作データが入出力プロセッサ１１ａによってメインメモリに逐次記憶される。ステップＳ２においては、ＣＰＵ１０は、最新のコントローラ操作データ１１２をコントローラ５毎にメインメモリから読み出す。ステップＳ３の次にステップＳ４の処理が実行される。
【０１５４】
ステップＳ４において、ＣＰＵ１０はゲーム制御処理を実行する。ゲーム制御処理は、各プレイヤによるゲーム操作に従ってゲーム空間内の各オブジェクトを動作させる処理等を実行し、ゲームを進行させる処理である。具体的には、本実施形態におけるゲーム制御処理においては、各オブジェクト１０１〜１０４の移動を制御する処理、および、各仮想カメラを制御する処理等が実行される。以下、図１３を参照して、ゲーム制御処理の詳細について説明する。
【０１５５】
図１３は、図１２に示すゲーム制御処理（ステップＳ４）の詳細な流れの一例を示すフローチャートである。ゲーム制御処理においてはまずステップＳ１１において、ＣＰＵ１０は第１オブジェクト１０１の移動を制御する。第１オブジェクト１０１の移動は、端末装置７に対する操作（端末操作データ１１１）に基づいて制御されればどのように制御されてもよい。本実施形態においては、ＣＰＵ１０は、アナログスティック５３Ａまたは５３Ｂに対する方向入力に応じて、第１オブジェクト１０１の移動後の位置を算出する。例えば、第１オブジェクト１０１は、アナログスティック５３Ａまたは５３Ｂの操作量に応じた移動量だけ、操作方向に応じた方向へ移動される。また、ＣＰＵ１０は、タッチパネル５２に対する入力（タッチ入力）に応じて第１オブジェクト１０１の移動後の位置を算出してもよい。例えば、第１オブジェクト１０１は、現在位置からタッチ入力によって指定されたゲーム空間内の位置への方向に移動してもよい。
【０１５６】
上記ステップＳ１１の具体的な処理としては、ＣＰＵ１０は、第１オブジェクト１０１の移動前の位置および向きを表す第１オブジェクトデータ１１４をメインメモリから読み出し、当該移動前の位置および向きと、ステップＳ２で読み出した端末操作データ１１１とに基づいて移動後の位置および向きを算出する。そして、算出された移動後の位置および向きを表すデータを新たな第１オブジェクトデータ１１４としてメインメモリに記憶する。ステップＳ１１の次に、ステップＳ１２の処理が実行される。
【０１５７】
ステップＳ１２において、ＣＰＵ１０は、端末装置７に対する所定の操作が行われたことに応じて、第１オブジェクト１０１に所定の動作を行わせる。所定の操作はどのような操作であってもよく、本実施形態においては、タッチパネル５２を用いてゲーム空間の位置を指定する操作である。また、所定の動作はどのような動作であってもよく、例えば、物（アイテムや他のオブジェクト）を投げる動作であってもよいし、他のオブジェクトのパラメータを変化させる動作（具体的には、敵オブジェクトを攻撃する動作や、味方のオブジェクトを回復する動作）であってもよい。
【０１５８】
図１４は、第１および第２オブジェクトによる動作の効果範囲の一例を示す図である。図１４において、点線領域Ａ１は、第１オブジェクト１０１による所定の動作の効果範囲を示す。ここで、動作の効果範囲とは、当該動作がゲーム空間あるいはゲーム空間に配置されるオブジェクトに対して影響を及ぼすことができる範囲である。効果範囲の位置は第１オブジェクト１０１の位置に基づいて決められる。本実施形態においては、効果範囲は、第１オブジェクト１０１の位置を中心とした円形領域となる。
【０１５９】
ステップＳ１２の具体的な処理としては、ＣＰＵ１０は、ステップＳ２で読み出した端末操作データ１１１に基づいて、上記所定の操作が行われたか否かを判定する。上記所定の操作が行われた場合、ＣＰＵ１０は、第１オブジェクト１０１に所定の動作を行わせるように、第１オブジェクト１０１の動作を表すパラメータを算出し、算出されたパラメータのデータをメインメモリに記憶する。一方、上記所定の操作が行われない場合、ＣＰＵ１０は、第１オブジェクト１０１に所定の動作を行わせるための処理を実行しない。ステップＳ１２の次にステップＳ１３の処理が実行される。
【０１６０】
ステップＳ１３において、ＣＰＵ１０は各第２オブジェクト１０２〜１０４の移動をそれぞれ制御する。第２オブジェクトの移動は、第２オブジェクトに対応するコントローラ５に対する操作（コントローラ操作データ１１２）に基づいて制御されればどのように制御されてもよい。本実施形態においては、ＣＰＵ１０は、十字ボタン３２ａに対する方向入力に応じて、第２オブジェクトの移動後の位置を算出する。例えば、第２オブジェクトは、十字ボタン３２ａによる操作方向に応じた方向へ、所定量だけ移動される。
【０１６１】
上記ステップＳ１３の具体的な処理としては、ＣＰＵ１０は、第２オブジェクトの移動前の位置および向きを表す第２オブジェクトデータ１１５をメインメモリから読み出し、当該移動前の位置および向きと、ステップＳ３で読み出したコントローラ操作データ１１２とに基づいて移動後の位置および向きを算出する。そして、算出された移動後の位置および向きを表すデータを新たな第２オブジェクトデータ１１５としてメインメモリに記憶する。ＣＰＵ１０は、移動後の位置および向きを算出して新たな第２オブジェクトデータ１１５を記憶する処理を第２オブジェクト毎に実行する。ステップＳ１３の次に、ステップＳ１４の処理が実行される。
【０１６２】
ステップＳ１４において、ＣＰＵ１０は、コントローラ５に対する所定の操作が行われたことに応じて、第２オブジェクトに所定の動作を行わせる。所定の操作はどのような操作であってもよく、本実施形態においては、コントローラ５の所定のボタンを押下する操作である。また、所定の動作はどのような動作であってもよく、本実施形態においては、第１オブジェクト１０１が行う上記所定の動作と同種の効果を有する動作である。例えば、第１オブジェクト１０１による所定の動作が敵オブジェクトを攻撃する動作である場合、第２オブジェクトによる所定の動作も敵オブジェクトを攻撃する動作となる。ただし、第１オブジェクト１０１による所定の動作と第２オブジェクトによる所定の動作とは同一である必要はなく、具体的な攻撃方法（武器を使って攻撃するかどうか等）は異なっていてもよい。
【０１６３】
図１４において、点線領域Ａ２は、第２オブジェクト１０２による所定の動作の効果範囲を示す。本実施形態においては、当該効果範囲は、第２オブジェクト１０２の位置を中心とした円形領域となる。図１４に示すように、本実施形態においては、第２オブジェクト１０２（他の第２オブジェクトについても同様）による所定の動作の効果範囲は、第１オブジェクト１０１による所定の動作の効果範囲に比べて狭い。
【０１６４】
ステップＳ１４の具体的な処理としては、ＣＰＵ１０は、ステップＳ３で読み出したコントローラ操作データ１１２に基づいて、上記所定の操作が行われたか否かを判定する。上記所定の操作が行われた場合、ＣＰＵ１０は、当該所定の操作が行われたコントローラ５に対応する第２オブジェクトに所定の動作を行わせるように、当該第２オブジェクトの動作を表すパラメータを算出し、算出されたパラメータのデータをメインメモリに記憶する。一方、上記所定の操作が行われない場合、ＣＰＵ１０は、第２オブジェクトに所定の動作を行わせるための処理を実行しない。ＣＰＵ１０は、以上の処理を第２オブジェクト１０２〜１０４毎に実行する。ステップＳ１４の次にステップＳ１５の処理が実行される。
【０１６５】
上記のように、本実施形態においては、ＣＰＵ１０は、第１オブジェクト１０１の周囲の所定範囲に影響を及ぼす所定の動作を第１オブジェクト１０１に行わせることが可能である（ステップＳ１２）。また、ＣＰＵ１０は、第１オブジェクト１０１による所定の動作と同種の効果を有する動作を第２オブジェクトに行わせることが可能である（ステップＳ１４）。ここで、第２オブジェクトによる所定の動作は、第２オブジェクトの周囲の範囲であって、上記所定範囲（第１オブジェクト１０１による所定の動作の効果範囲）よりも狭い範囲に影響を及ぼす（図１４参照）。本実施形態においては、第１オブジェクト１０１と第２オブジェクト１０２〜１０４とは異なる能力を有する。これによれば、自分が操作するオブジェクトの能力に適したゲーム操作が各プレイヤには要求されるので、ゲームの戦略性を向上することができる。
【０１６６】
また、本実施形態においては、端末装置７は、表示部（ＬＣＤ５１）の画面上に設けられるタッチパネル５２を有しており、ＣＰＵ１０は、タッチパネル５２に対する入力に基づいて第１オブジェクト１０１を制御する（第１オブジェクト１０１を移動させる、および／または、第１オブジェクト１０１に所定の動作を行わせる）。さらに、ＣＰＵ１０は、コントローラ５に設けられる操作ボタンに対する入力に基づいて第２オブジェクト１０２〜１０４を制御する。したがって、第１プレイヤはタッチパネル５２を用いて直感的かつ容易なゲーム操作が可能となる。特に、本実施形態においては、第１オブジェクト１０１は相対的に広い効果範囲の動作を行うので、ＣＰＵ１０が当該動作をタッチパネル５２に対する入力に基づいて制御する場合には、第１プレイヤは第１オブジェクト１０１に当該動作を容易な操作で行わせることができる。一方、第２オブジェクトの操作に関しては、テレビ２の画面上を指定する操作を仮に各第２プレイヤが行うとすれば、複数人が単一の画面上を同時に指定するためにかえって操作が行いにくくなる。これに対して、本実施形態においては、各第２プレイヤはテレビ２の画面上を指定する操作を行わずに容易に第２オブジェクトを操作することができる。
【０１６７】
ステップＳ１５において、ＣＰＵ１０はカメラ設定処理を実行する。カメラ設定処理は、第１および第２オブジェクト１０１〜１０４の位置等に基づいて、ゲーム空間において各仮想カメラを設定する処理である。以下、図１５を参照して、カメラ設定処理の詳細について説明する。
【０１６８】
図１５は、図１３に示すカメラ設定処理（ステップＳ１５）の詳細な流れの一例を示すフローチャートである。カメラ設定処理においては、まずステップＳ２１およびＳ２２において、第１仮想カメラの設定が行われる。本実施形態においては、第１仮想カメラは、第１オブジェクト１０１の位置に基づいて制御されるとともに（ステップＳ２１）、端末装置７に対する操作に基づいて制御される（ステップＳ２２）。
【０１６９】
ステップＳ２１において、ＣＰＵ１０は、第１オブジェクト１０１の位置に基づいて第１仮想カメラを設定する。第１仮想カメラの位置および姿勢の具体的な設定方法はどのような方法であってもよい。本実施形態においては、第１仮想カメラの位置は、第１オブジェクト１０１の位置から所定方向へ所定距離だけ離れた位置に設定される。この所定方向は、どのように決定されてもよく、本実施形態においては、後述するステップＳ２２において端末装置７に対する操作に応じて変化する。したがって、ステップＳ２１においては、上記所定方向は、従前の方向（前回のステップＳ２〜Ｓ９の処理ループで算出された所定方向）に設定される。なお、他の実施形態においては、上記所定方向は、予め定められた方向であってもよいし、例えば第１オブジェクト１０１を後方から見る方向となるように、第１オブジェクト１０１の向きおよび／または移動方向に応じて決められてもよい。また例えば、上記所定方向は、第１オブジェクト１０１から特定のオブジェクト（例えば敵オブジェクト１０５）への方向に応じて決められてもよい。これによって、特定のオブジェクトの方を注目するようなゲーム画像を生成することができる。また、第１仮想カメラの姿勢は、第１オブジェクト１０１の方向（具体的には、上記所定方向の逆方向）を向くように設定される。以上によって、第１仮想カメラによって生成される画像は、いわゆる三人称視点でゲーム空間を見た画像となり、第１オブジェクト１０１を含む画像となる。なお、他の実施形態においては、第１仮想カメラの位置は、第１オブジェクト１０１の位置に設定されてもよい。これによって、第１仮想カメラによって生成される画像は、いわゆる一人称視点でゲーム空間を見た画像となり、第１オブジェクト１０１の位置からゲーム空間を見た画像となる。
【０１７０】
図１６は、各仮想カメラの設定方法の一例を示す図である。図１６に示すように、本実施形態において、第１仮想カメラ１２１は、第２仮想カメラ１２２の俯角θ２に比べて小さい俯角θ１となるように設定される。第１仮想カメラ１２１の位置は、第１オブジェクト１０１よりもやや上方の位置に設定される。また、第１仮想カメラ１２１の視線方向（撮影方向）は、第１オブジェクト１０１をやや上方から見る方向となる。なお、俯角θ１は、０°であってもよいし、負の値であってもよい。つまり、第１仮想カメラ１２１の視線方向は、地面と平行であってもよいし、やや上方を向くように設定されてもよい。また、本実施形態においては、上記三人称視点の場合を例として説明したが、一人称視点の場合も同様に、俯角θ１は、第２仮想カメラ１２２の俯角θ２に比べて小さい正の値に設定されてもよいし、０°に設定されてもよいし、負の値に設定されてもよい。
【０１７１】
ステップＳ２１における具体的な処理としては、ＣＰＵ１０は、第１オブジェクトデータ１１４をメインメモリから読み出し、第１オブジェクトデータ１１４に基づいて第１仮想カメラ１２１の位置および姿勢を算出する。なお、本実施形態においては、ステップＳ２１では第１仮想カメラ１２１の姿勢は変化しない（それまでの値が維持される）。ＣＰＵ１０は、算出した位置および姿勢とを表すデータを第１カメラデータ１１６としてメインメモリに記憶する。ステップＳ２１の次にステップＳ２２の処理が実行される。
【０１７２】
ステップＳ２２において、ＣＰＵ１０は、端末装置７に対する所定の回転操作に応じて第１仮想カメラ１２１の向き（姿勢）を変化させる。本実施形態においては、第１仮想カメラ１２１が地面に垂直な軸回りに少なくとも回転するように、第１仮想カメラ１２１の向きは回転操作に応じて変化する。より具体的には、端末装置７に対する回転操作があった場合、第１仮想カメラ１２１は、俯角θ１を一定として、第１オブジェクト１０１を中心として地面に垂直な軸回りに回転移動する。なお、本実施形態のように三人称視点の場合には、回転操作に応じて第１仮想カメラ１２１の位置および姿勢が変化するが、一人称視点の場合には、第１仮想カメラ１２１の位置のみが変化してもよい。また、上記回転操作はどのような操作であってもよく、例えばタッチパネル５２に対する入力操作であってもよいし、端末装置７の所定のボタン（例えば十字ボタン５４Ａや、第１Ｌボタン５４Ｉまたは第１Ｒボタン５４Ｊ）を押下する操作であってもよい。なお、他の実施形態においては、第１仮想カメラ１２１は、地面に垂直な軸回りに回転するだけでなく、他の軸回りにも回転可能であってもよい。
【０１７３】
ステップＳ２２の具体的な処理としては、ＣＰＵ１０は、ステップＳ２で読み出した端末操作データ１１１に基づいて、上記回転操作が行われたか否かを判定する。上記回転操作が行われた場合、ＣＰＵ１０は、第１カメラデータ１１６をメインメモリから読み出し、移動後の第１仮想カメラ１２１の位置および姿勢を算出する。そして、算出された位置および姿勢を表すデータを、新たな第１カメラデータ１１６としてメインメモリに記憶する。一方、上記回転操作が行われない場合、ＣＰＵ１０は、第１カメラデータ１１６を算出する処理を実行しない。ステップＳ２２の次にステップＳ２３の処理が実行される。
【０１７４】
ステップＳ２３およびＳ２４においては、第２仮想カメラの設定が行われる。本実施形態においては、第２仮想カメラは、各オブジェクト（第１オブジェクト１０１および第２オブジェクト１０２〜１０４）の位置に基づいて決定された表示領域を視野範囲に含むように、当該各オブジェクトの位置に応じて移動する。
【０１７５】
ステップＳ２３において、ＣＰＵ１０は、各オブジェクト１０１〜１０４の位置に基づいて表示領域を決定する。図１７は、ゲーム空間に設定される表示領域の一例を示す図である。図１７に示すように、表示領域１２５は、各オブジェクト（第１オブジェクト１０１および第２オブジェクト１０２〜１０４）がその内側に含まれるように決定される。ただし、本実施形態においては、表示領域１２５は、大きさが予め定められた所定範囲内となることを条件として決定される。つまり、ＣＰＵ１０は、所定範囲内の大きさとなることを限度として、各オブジェクト１０１〜１０４ができるだけその内側に含まれるように表示領域１２５を設定する。
【０１７６】
表示領域１２５の具体的な決定方法はどのような方法であってもよいが、本実施形態においては、ＣＰＵ１０はまず、各オブジェクト１０１〜１０４の中心位置Ｐを算出する。中心位置Ｐは、例えば各オブジェクト１０１〜１０４の位置座標の平均値として算出することができる。次に、ＣＰＵ１０は、中心位置Ｐを中心として表示領域１２５を配置し、各オブジェクト１０１〜１０４ができるだけその内側に含まれるように表示領域１２５の大きさを調整する。なお、その時点で設定されている表示領域（前回のステップＳ２３で決定された表示領域）１２５から各オブジェクト１０１〜１０４の少なくともいずれかが出た場合に、表示領域１２５の大きさが調整されるようにしてもよい。ここで、表示領域１２５の大きさを上記所定範囲の最大のサイズにしてもオブジェクト１０１〜１０４の全部が含まれない場合には、ＣＰＵ１０は、当該最大のサイズで表示領域１２５を設定する。より具体的には、ＣＰＵ１０は、各オブジェクト１０１〜１０４のうちで中心位置Ｐから最も外側にいるオブジェクトが表示領域１２５の周に位置するように表示領域１２５の大きさを仮設定する。そして、仮設定した大きさが上記最大のサイズ以下である場合には、仮設定した大きさで表示領域１２５を設定し、仮設定した大きさが上記最大のサイズを超える場合には、最大のサイズで表示領域１２５を設定する。なお、他の実施形態においては、ＣＰＵ１０は、表示領域１２５を仮設定する際、中心位置Ｐから最も外側にいるオブジェクトが表示領域１２５の周から所定距離以上内側に位置するようにしてもよい。これによれば、オブジェクトがゲーム画像の端に配置されて画面の端に表示される結果、プレイヤにとってオブジェクトが見にくくなることを防止することができる。
【０１７７】
なお、図１７および図１８においては表示領域１２５を長方形としているが、表示領域１２５の形状は長方形に限らない。例えば、ゲーム画像の生成方法によっては、表示領域１２５は台形になることもある。
【０１７８】
ステップＳ２３の具体的な処理としては、ＣＰＵ１０は、各オブジェクトデータ１１４および１１５をメインメモリから読み出し、読み出したデータに基づいて例えば上記の方法で表示領域１２５の位置および大きさを算出する。そして、算出された位置および大きさを表すデータを表示領域データ１１８としてメインメモリに記憶する。ステップＳ２３の次にステップＳ２４の処理が実行される。
【０１７９】
ステップＳ２４において、ＣＰＵ１０は、表示領域１２５に基づいて第２仮想カメラを設定する。第２仮想カメラは、表示領域１２５内のゲーム空間がテレビ２に表示されるように、すなわち、表示領域１２５が視野範囲に含まれるように設定される。具体的には、ＣＰＵ１０は、表示領域１２５と視野範囲とが一致するように第２仮想カメラを設定する。
【０１８０】
また、図１６に示すように、本実施形態においては、第２仮想カメラ１２２は、地面に対する俯角θ２が第１仮想カメラ１２１の俯角θ１よりも大きくなるように設定される。図１６においては、第２仮想カメラ１２２は、第１仮想カメラ１２１よりも高い位置に配置される。本実施形態においては、第２仮想カメラ１２２は、第１仮想カメラ１２１よりも上方からの視線でゲーム空間を見る（撮影する）ように設定される。
【０１８１】
ステップＳ２４の具体的な処理としては、ＣＰＵ１０は、表示領域データ１１８をメインメモリから読み出し、読み出したデータに基づいて例えば上記の方法で第２仮想カメラの位置および姿勢を算出する。そして、算出された位置および姿勢を表すデータを第２カメラデータ１１７としてメインメモリに記憶する。ステップＳ２４の後、ＣＰＵ１０はカメラ設定処理を終了する。
【０１８２】
上記ステップＳ２３およびＳ２４の処理によって第２仮想カメラ１２２が設定される。上記ステップＳ２３およびＳ２４の処理によれば、表示領域１２５の最大サイズを設定しておくことによって、第２仮想カメラ１２２の視野範囲を所定範囲内の大きさに制限することができる。これによって、テレビ２に表示されるゲーム空間の範囲が広すぎる（第２仮想カメラ１２２の視野範囲が広すぎる）ことによって、テレビ２に表示される各オブジェクト１０１〜１０４が各プレイヤによって見にくくなることを防止することができる。
なお、他の実施形態においては、ＣＰＵ１０は、第２仮想カメラ１２２の視野範囲の最大サイズと、最小サイズとを設定しておいてもよい。これによれば、テレビ２に表示されるゲーム空間の範囲が狭すぎる（第２仮想カメラ１２２の視野範囲が狭すぎる）ことによって、テレビ２に表示される各オブジェクト１０１〜１０４が各プレイヤによって見にくくなることを防止することができる。
【０１８３】
なお、本実施形態においては、第１オブジェクト１０１および第２オブジェクト１０２〜１０４が第２仮想カメラ１２２の視野範囲に含まれるように（テレビ２に表示されるように）第２仮想カメラ１２２が設定された。ここで、他の実施形態においては、第２仮想カメラ１２２は、第２オブジェクト１０２〜１０４が視野範囲に含まれるように設定されてもよい。また、ＣＰＵ１０は、第１オブジェクト１０１が視野範囲に含まれるように第２仮想カメラ１２２を設定するか否かを、ゲームシーン等のゲーム状況に応じて切り替えるようにしてもよい。
【０１８４】
上記カメラ設定処理によれば、ＣＰＵ１０は、ゲーム空間において各第２オブジェクト１０２〜１０４が移動可能な所定平面（地面）に対する俯角が第１仮想カメラの俯角よりも大きくなるように、第２仮想カメラの向きを設定する。これによれば、テレビ用画像は、ゲーム空間を（相対的に）上方向から見たゲーム画像となるので、所定平面上に配置される複数の第２オブジェクト１０２〜１０４が重なって表示される可能性が少なくなり、第２オブジェクト１０２〜１０４をより見やすく表示することができる。一方、端末用画像はゲーム空間を（相対的に）水平方向から見たゲーム画像となるので、第１プレイヤはオブジェクトの目線に近い視線でゲーム空間を見ることができ、より迫力のあるゲーム画像を見てゲームを行うことができる。また、端末用画像がゲーム空間を水平方向から見た画像となることによって、第１プレイヤにとっては高さ方向（地面に垂直な方向）に関する位置関係がより分かりやすくなる。なお、端末用画像に関しては第２プレイヤが見る必要性は小さいので、第２オブジェクト１０２〜１０４が画面上において重なって表示されても問題とはならない。以上のように、本実施形態によれば、第２仮想カメラ１２２の俯角を第１仮想カメラ１２１の俯角よりも大きくすることによって、各第２プレイヤが見るテレビ用画像を各第２プレイヤにとって見やすい画像とすることができるとともに、第１プレイヤが見る端末用画像を第１プレイヤにとって見やすい画像とすることができる。
【０１８５】
また、上記ステップＳ２２の処理によれば、ＣＰＵ１０は、端末装置７に対する操作に応じて所定平面（地面）に垂直な軸回りに第１仮想カメラ１２１の向きを変化させる。なお、第１仮想カメラ１２１の俯角が相対的に小さく設定される場合には、第１オブジェクト１０１の周囲を均等に表示することは難しくなることがある（例えば、第１オブジェクト１０１の後方の様子が表示されなくなる）。これに対して、本実施形態によれば、第１プレイヤは第１仮想カメラ１２１の向きを変化させることができるので、見たい方向に第１仮想カメラ１２１を向けることで、第１オブジェクト１０１の周囲を容易に把握することができる。また、端末用画像に関しては第２プレイヤが見る必要性は小さいので、端末用画像における視線を第１プレイヤが自由に変更しても各第２プレイヤにとっては問題とはならない。つまり、上記ステップＳ２２の処理によれば、第２プレイヤに不都合を生じさせることなく、第１プレイヤに対してより見やすいゲーム画像を提供することができる。
【０１８６】
図１３に示すゲーム制御処理の説明に戻り、ステップＳ１５の次のステップＳ１６において、ＣＰＵ１０は、第２オブジェクト１０２〜１０４の少なくともいずれかが第２仮想カメラ１２２の視野範囲（表示領域１２５）の外側に配置されているか否かを判定する。例えば、ＣＰＵ１０は、第２オブジェクトデータ１１５および第２カメラデータ１１７（または表示領域データ１１８）をメインメモリから読み出し、読み出したデータに基づいてステップＳ１６の判定を行う。ステップＳ１６の判定結果が肯定である場合、ステップＳ１７の処理が実行される。一方、ステップＳ１６の判定結果が否定である場合、ステップＳ１７の処理がスキップされてステップＳ１８の処理が実行される。
【０１８７】
ステップＳ１７において、ＣＰＵ１０は、第２仮想カメラ１２２の視野範囲（表示領域１２５）外に配置される第２オブジェクトを、視野範囲内の位置に移動させる。当該第２オブジェクトの移動後の位置は、視野範囲の周付近の位置（周より少し内側の位置）であってもよいし、視野範囲内の所定位置（例えば、視野範囲の中央の位置や第１オブジェクト１０１の位置）であってもよい。つまり、視野範囲外に出ようとした第２オブジェクトは、視野範囲の端に位置するように制御されてもよいし、（ＣＰＵ１０によって強制的に）視野範囲の中央の位置まで移動するように制御されてもよい。具体的には、ＣＰＵ１０は、ステップＳ１６において視野範囲外に配置されたと判定された第２オブジェクトに関する第２オブジェクトデータ１１５をメインメモリから読み出し、当該第２オブジェクトの位置を視野範囲内の位置に変更する。そして、変更後の位置を表すデータを新たな第２オブジェクトデータ１１５としてメインメモリに記憶する。ステップＳ１７の次にステップＳ１８の処理が実行される。
【０１８８】
図１８は、各オブジェクトによる第２仮想カメラの視野範囲外への移動の一例を示す図である。上記ステップＳ１６およびＳ１７の処理によれば、第２オブジェクト１０２〜１０４のいずれかが第２仮想カメラ１２２の視野範囲外に移動しそうになった場合には、ＣＰＵ１０は、第２オブジェクトを視野範囲内の位置に修正する。したがって、図１８に示すように、第２オブジェクト１０２〜１０４については、第２仮想カメラ１２２の視野範囲内に常に位置することになる。一方、第１オブジェクト１０１については、上記ステップＳ１６およびＳ１７の処理の対象とはならないので、図１８に示すように、第１オブジェクト１０１は第１プレイヤによる操作に従って視野範囲の外側に移動することが可能である。つまり、ＣＰＵ１０は、第１オブジェクト１０１は、第２仮想カメラ１２２の視野範囲が限度となる場合、第１オブジェクト１０１が視野範囲から出ることを許可する（第１オブジェクト１０１についてはステップＳ１７の処理を実行しない）。そのため、第１オブジェクト１０１は、上記視野範囲の外側に位置することもあり得る。
【０１８９】
以上のように、本実施形態においては、ＣＰＵ１０は、第２仮想カメラ１２２の視野範囲が所定の大きさとなることを限度として第２仮想カメラ１２２を設定する（ステップＳ２３およびＳ２４）。つまり、第２仮想カメラ１２２は、第２仮想カメラ１２２の視野範囲の大きさが所定の大きさを超えないように所定の設定範囲内で設定される。ここで、ＣＰＵ１０は、第２仮想カメラ１２２の視野範囲が限度（最大サイズ）となる場合、当該視野範囲から外へ出ないように各第２オブジェクト１０２〜１０４を制御する。そして、第２仮想カメラ１２２の視野範囲とは独立して、端末装置７に対する操作に応じて第１オブジェクト１０１を移動させる（ステップＳ１６およびＳ１７）。換言すれば、ＣＰＵ１０は、第２仮想カメラ１２２の設定が設定範囲の限度となる場合に、第２仮想カメラ１２２の視野範囲から外へ出ないように各第２オブジェクト１０２〜１０４を制御し、第１オブジェクト１０１が第２仮想カメラ１２２の視野範囲から出ることを許可する。
【０１９０】
したがって、本実施形態においては、各第２オブジェクト１０２〜１０４はテレビ２に常に表示される一方、第１オブジェクト１０１はテレビ２に表示されなくなることもある。ここで、各第２オブジェクト１０２〜１０４は常にテレビ２に表示されるので、テレビ２を主に見てゲームを行う各第２プレイヤは、自分の操作対象を見失うことなく、快適にゲームを行うことができる。
【０１９１】
一方、第１プレイヤは端末装置７を見てゲームを行い、テレビ２を常に見てゲームを行うわけではないので、テレビ２の表示範囲（第２仮想カメラの視野範囲）から第１オブジェクト１０１が出たか否かを第１プレイヤは確認しづらい。そのため、第２オブジェクト１０２〜１０４と同様に、視野範囲から出ないように第１オブジェクト１０１が制御されるとすれば、第１プレイヤの意思に反して第１オブジェクト１０１が移動する場合に第１プレイヤは操作に違和感を抱くおそれがある。また、第１プレイヤは、端末用画像を見てゲームを行うことができるので、テレビ２に第１オブジェクト１０１が表示されなくなっても自分の操作対象を見失うことない。以上より、本実施形態においては、第１オブジェクト１０１については視野範囲から外れることを許可することによって、第１プレイヤの意思に反して第１オブジェクト１０１が移動することを防止することができ、第１プレイヤは第１オブジェクト１０１を違和感なく快適に操作することができる。
【０１９２】
なお、他の実施形態においては、第１オブジェクト１０１が第２仮想カメラの視野範囲の外に位置する場合、ＣＰＵ１０は、当該視野範囲から第１オブジェクト１０１への方向を表す方向画像を含むテレビ用ゲーム画像を生成してもよい。上記方向画像は、例えば、第１オブジェクト１０１への方向を指し示す矢印であってもよい。また例えば、テレビ用画像の中央から第１オブジェクト１０１への直線と、テレビ用画像の周との交点付近に方向画像が表示されてもよい。具体的には、ＣＰＵ１０は、上記ステップＳ１６と同様の方法で第１オブジェクト１０１が第２仮想カメラ１２２の視野範囲の外側に配置されているか否かを判定する。そして、第１オブジェクト１０１が視野範囲の外側に配置されていると判定される場合、後述するステップＳ５で生成されるテレビ用ゲーム画像に上記方向画像を重ねたゲーム画像を生成してテレビ２に表示する。以上によれば、各プレイヤは、第１オブジェクト１０１がテレビ２に表示されなくなった場合でも、テレビ２の表示範囲と第１オブジェクト１０１との位置関係を大まかに知ることができる。
【０１９３】
ステップＳ１８において、ＣＰＵ１０は、その他のゲーム進行処理を実行する。その他のゲーム進行処理とは、上記ステップＳ１１〜Ｓ１７の処理以外にステップＳ４のゲーム制御処理において実行される処理である。上記その他のゲーム進行処理としては、例えば、プレイヤによって操作されるオブジェクト以外のオブジェクトの動作を制御する処理や、ゲーム空間に設置されるアイテムに関する処理等が考えられる。上記の処理の他、ステップＳ１８においてはゲームの進行に必要な処理が適宜実行される。上記ステップＳ１８の後、ＣＰＵ１０はゲーム制御処理を終了する。
【０１９４】
図１２の説明に戻り、ステップＳ４のゲーム制御処理の次にステップＳ５の処理が実行される。ステップＳ５においては、テレビ用画像が生成される。すなわち、ＣＰＵ１０およびＧＰＵ１１ｂは、ステップＳ４のゲーム制御処理の結果を表すデータ（各オブジェクトデータ１１４および１１５等）をメインメモリから読み出し、また、ゲーム画像を生成するために用いるデータ（画像データ等）をＶＲＡＭ１１ｄから読み出す。そして、読み出したデータに基づいてテレビ用画像を生成する。本実施形態では、第２仮想カメラは、相対的に大きい俯角θ２となるように設定される。したがって、比較的鉛直下向きに近い視線方向から見たゲーム空間を表すテレビ用画像が生成される（図９参照）。生成されたテレビ用画像はＶＲＡＭ１１ｄに記憶される。上記ステップＳ５の次にステップＳ６の処理が実行される。
【０１９５】
ステップＳ６においては、端末用画像が上記ゲーム制御処理に基づいて生成される。すなわち、ＣＰＵ１０およびＧＰＵ１１ｂは、ステップＳ４のゲーム制御処理の結果を表すデータをメインメモリから読み出し、また、ゲーム画像を生成するために用いるデータをＶＲＡＭ１１ｄから読み出す。そして、読み出したデータに基づいて端末用画像を生成する。本実施形態では、第１仮想カメラは、相対的に小さい俯角θ１となるように設定される。したがって、比較的水平方向に近い視線方向から見たゲーム空間を表す端末用画像が生成される（図１０参照）。生成された端末用画像はＶＲＡＭ１１ｄに記憶される。上記ステップＳ６の次にステップＳ７の処理が実行される。
【０１９６】
ステップＳ７において、ＣＰＵ１０は、テレビ２へゲーム画像を出力する。具体的には、ＣＰＵ１０は、ＶＲＡＭ１１ｄに記憶されたテレビ用画像のデータをＡＶ−ＩＣ１５へ送る。これに応じて、ＡＶ−ＩＣ１５はテレビ用画像のデータを、ＡＶコネクタ１６を介してテレビ２へ出力する。これによって、テレビ用画像がテレビ２に表示される。また、ゲーム装置３において生成されたゲーム音声がテレビ２へ出力される場合には、ＣＰＵ１０は、生成された音声のデータをＡＶ−ＩＣ１５へ送る。これに応じて、ＡＶ−ＩＣ１５は音声のデータをＡＶコネクタ１６を介してテレビ２へ出力する。これによって、テレビ用ゲーム音声がスピーカ２ａから出力される。ステップＳ７の次にステップＳ８の処理が実行される。
【０１９７】
ステップＳ８において、ＣＰＵ１０は、端末装置７へゲーム画像を出力（送信）する。具体的には、ＶＲＡＭ１１ｄに記憶された端末用画像の画像データは、ＣＰＵ１０によってコーデックＬＳＩ２７に送られ、コーデックＬＳＩ２７によって所定の圧縮処理が行われる。圧縮処理が施された画像のデータは、端末通信モジュール２８によってアンテナ２９を介して端末装置７へ送信される。端末装置７は、ゲーム装置３から送信されてくる画像のデータを無線モジュール８０によって受信し、受信された画像データに対してコーデックＬＳＩ７６によって所定の伸張処理が行われる。伸張処理が行われた画像データはＬＣＤ５１に出力される。これによって、端末用画像がＬＣＤ５１に表示される。また、ゲーム装置３において生成された音声が端末装置７へ出力される場合には、生成された音声のデータは、ＣＰＵ１０によってコーデックＬＳＩ２７に送られ、コーデックＬＳＩ２７によって所定の圧縮処理が行われる。さらに、圧縮処理が施された音声のデータは、端末通信モジュール２８によってアンテナ２９を介して端末装置７へ送信される。端末装置７は、ゲーム装置３から送信されてくる音声のデータを無線モジュール８０によって受信し、コーデックＬＳＩ７６によって所定の伸張処理が行われる。伸張処理が行われた音声データはサウンドＩＣ７８に出力される。これによって、端末用ゲーム音声がスピーカ７７から出力される。ステップＳ８の次にステップＳ９の処理が実行される。
【０１９８】
ステップＳ９において、ＣＰＵ１０は、ゲームを終了するか否かを判定する。ステップＳ９の判定は、例えば、プレイヤがゲームを中止する指示を行ったか否か、ゲームオーバーとなったか否か等によって行われる。ステップＳ９の判定結果が否定の場合、ステップＳ２の処理が再度実行される。一方、ステップＳ９の判定結果が肯定の場合、ＣＰＵ１０は図１６に示すゲーム処理を終了する。なお、ゲーム処理を終了する際には、ゲームデータをメモリカード等にセーブする等の処理が実行されてもよい。以降、ステップＳ２〜Ｓ９の一連の処理は、ステップＳ９でゲームを終了すると判定されるまで繰り返し実行される。
【０１９９】
以上のように、本実施形態においては、端末装置７およびコントローラ５を用いてゲームを行う各プレイヤの操作対象（オブジェクト）を含む単一のゲーム画像が表示される。これによって、ゲームシステム１においてゲームを行う各プレイヤがゲームの一体感を味わうことができる。
【０２００】
［７．変形例］
上記実施形態は一例であり、他の実施形態においては例えば以下に説明する構成でゲームシステム、ゲーム装置、ゲームプログラム、およびゲーム処理方法を実施することも可能である。
【０２０１】
（ゲーム処理を実行する情報処理装置に関する変形例）
上記実施形態においては、ゲームシステム１において実行される一連のゲーム処理をゲーム装置３が実行したが、ゲーム処理の一部は他の装置によって実行されてもよい。例えば、他の実施形態においては、ゲーム処理の一部（例えば、端末用画像の生成処理）または全部を端末装置７が実行するようにしてもよい。なお、ゲーム処理の全部を端末装置７が実行する場合には、端末装置７とコントローラ５とが直接通信を行い、ゲームシステム１がゲーム装置３を有していない構成としてもよい。また、他の実施形態では、互いに通信可能な複数の情報処理装置を有する情報処理システムにおいて、当該複数の情報処理装置がゲーム処理を分担して実行するようにしてもよい。
【０２０２】
なお、複数の情報処理装置において上記の情報処理が実行される場合には、各情報処理装置で実行される処理を同期させる必要があり、情報処理が複雑になってしまう。これに対して、上記各ゲーム例のように、情報処理が１つのゲーム装置３によって実行され、端末装置７が画像を受信して表示する処理を行う場合（つまり、端末装置７やハンドヘルドデバイス９がシンクライアント端末として機能する場合）には、複数の情報処理装置間で情報処理の同期をとる必要がなく、情報処理を簡易化することができる。
【産業上の利用可能性】
【０２０３】
以上のように、本発明は、複数人のプレイヤがゲームを行う場合において各プレイヤに一体感を与えること等を目的として、例えば、ゲームシステム、ゲーム装置、ゲームプログラム、およびゲーム処理方法等として利用することが可能である。
【符号の説明】
【０２０４】
１  ゲームシステム
２  テレビ
３  ゲーム装置
４  光ディスク
５  コントローラ
６  マーカ装置
７  端末装置
１０  ＣＰＵ
１１ｅ  内部メインメモリ
１２  外部メインメモリ
５１  ＬＣＤ
５２  タッチパネル
１０１  第１オブジェクト
１０２〜１０４  第２オブジェクト
１１０  ゲームプログラム
１２１  第１仮想カメラ
１２２  第２仮想カメラ
１２５  表示領域
【図１】
0005951957.tif 000002
【図２】
0005951957.tif 000003
【図３】
0005951957.tif 000004
【図４】
0005951957.tif 000005
【図５】
0005951957.tif 000006
【図６】
0005951957.tif 000007
【図７】
0005951957.tif 000008
【図８】
0005951957.tif 000009
【図９】
0005951957.tif 000010
【図１０】
0005951957.tif 000011
【図１１】
0005951957.tif 000012
【図１２】
0005951957.tif 000013
【図１３】
0005951957.tif 000014
【図１４】
0005951957.tif 000015
【図１５】
0005951957.tif 000016
【図１６】
0005951957.tif 000017
【図１７】
0005951957.tif 000018
【図１８】
0005951957.tif 000019