説明

ゲームシステム、ゲーム装置、ゲームプログラム、およびゲーム処理方法

【課題】複数人でゲームをプレイするゲームの戦略性を向上する。
【解決手段】ゲームシステムは、第1操作データを出力する複数の操作装置と、第2操作データを出力する可搬型表示装置と、ゲーム装置とを含む。ゲーム装置は、仮想空間内において、各第1操作データに基づいて複数の第1操作対象の動作をそれぞれ制御し、第2操作データに基づいて第2操作対象の動作を制御する。また、ゲーム装置は、複数の第1操作対象に1つずつ対応する複数の第1仮想カメラからそれぞれ見た仮想空間を表す複数の画像を含む第1ゲーム画像を生成する。さらに、ゲーム装置は、第2操作対象に対応し、第1仮想カメラとは異なる視点に設定される第2仮想カメラから見た仮想空間を表す画像を含む第2ゲーム画像を生成する。第1ゲーム画像は、可搬型表示装置とは別体の所定の表示装置に出力される。第2ゲーム画像は可搬型表示装置に無線送信され、可搬型表示装置に表示される。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数の操作装置と複数の表示装置とを用いて複数人でゲームをプレイするためのゲームシステム、ゲーム装置、ゲームプログラム、およびゲーム処理方法に関する。
【背景技術】
【0002】
従来、複数人のプレイヤが同時にゲームを行うことが可能なゲームシステムがある。例えば、特許文献1には、複数のプレイヤによって行われる競争ゲームを実行するゲームシステムが記載されている。このゲームシステムでは、各プレイヤが操作する操作対象を含むゲーム画像がプレイヤ毎に生成され、複数のゲーム画像は、表示装置の画面領域を複数に分割した各領域にそれぞれ表示される。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2006−081753号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
上記特許文献1のように、各プレイヤのためのゲーム画像が1つの表示装置に表示される場合には、あるプレイヤのためのゲーム画像が他のプレイヤにも見えてしまう。そのため、例えば、自己の操作対象の(ゲーム空間内における)位置が他のプレイヤに知られてしまったり、射撃ゲーム等において自己の操作対象が狙っている位置が他のプレイヤに知られてしまったりする等の不都合によって、ゲーム上の戦略性が損なわれるという問題があった。
【0005】
それ故、本発明の目的は、複数人でゲームをプレイするゲームの戦略性を向上することができ、興趣性の高いゲームを提供することが可能なゲームシステム、ゲーム装置、ゲームプログラム、およびゲーム処理方法を提供することである。
【課題を解決するための手段】
【0006】
本発明は、上記の課題を解決するために、以下の(1)〜(20)の構成を採用した。
【0007】
(1)
本発明の一例は、第1操作データを出力する複数の操作装置と、第2操作データを出力する可搬型表示装置と、ゲーム装置とを含むゲームシステムである。
ゲーム装置は、操作データ取得部と、動作制御部と、第1カメラ設定部と、第1画像生成部と、第2カメラ設定部と、第2画像生成部と、第1画像出力部と、第2画像出力部とを備える。操作データ取得部は、複数の操作装置からの第1操作データと、可搬型表示装置からの第2操作データとを取得する。動作制御部は、仮想空間内において、各第1操作データに基づいて複数の第1操作対象の動作をそれぞれ制御し、第2操作データに基づいて第2操作対象の動作を制御する。第1カメラ設定部は、複数の第1操作対象に1つずつ対応する複数の第1仮想カメラを仮想空間に設定する。第1画像生成部は、複数の第1仮想カメラからそれぞれ見た仮想空間を表す複数の画像を含む第1ゲーム画像を生成する。第2カメラ設定部は、第2操作対象に対応し、第1仮想カメラとは異なる視点に設定される第2仮想カメラを仮想空間に設定する。第2画像生成部は、第2仮想カメラから見た仮想空間を表す画像を含む第2ゲーム画像を生成する。第1画像出力部は、第1ゲーム画像を可搬型表示装置とは別体の所定の表示装置に出力する。第2画像出力部は、第2ゲーム画像を可搬型表示装置に無線送信する。
可搬型表示装置は、画像受信部と、表示部とを備える。画像受信部は、第2ゲーム画像を受信する。表示部は、第2ゲーム画像を表示する。
【0008】
上記「操作装置」は、プレイヤによって操作可能であり、操作データを出力する装置であればどのようなものであってもよい。上記「操作装置」は、後述するコントローラ5のように、操作ボタン等の操作手段と、加速度センサやジャイロセンサといった各種センサとを備える構成であってもよいし、いずれか一方のみを備える構成であってもよいし、例えばタッチパネル等、他の入力手段を備える構成であってもよい。
上記「可搬型表示装置」は、後述する実施形態においては端末装置7のように、プレイヤによって操作可能であり、操作データを出力するとともに、ゲーム画像を表示する表示部を備える装置であればどのようなものであってもよい。なお、上記「可搬型」とは、プレイヤが手に持って動かしたり、任意の位置に配置を変更したりすることができる程度の大きさである意味である。
上記「ゲーム装置」は、ゲーム処理を実行し、ゲーム処理に基づいてゲーム画像を生成する情報処理装置であればどのようなものであってもよい。上記ゲーム装置は、ゲーム専用の情報処理装置であってもよいし、一般的なパーソナルコンピュータのような多用途の情報処理装置であってもよい。
上記「ゲームシステム」は、ゲーム装置と操作装置と可搬型表示装置とを含んでいればよく、第1ゲーム画像を表示する所定の表示装置を含んでいなくともよいし、含んでいてもよい。すなわち、ゲームシステムは、当該所定の表示装置を含まない形態で提供されてもよいし、含む形態で提供されてもよい。
上記「操作対象」とは、ゲーム空間に配置されるオブジェクト等、プレイヤの操作によって動作が制御されるものであればよい。
上記において、「仮想カメラが操作対象に対応する」とは、その仮想カメラを用いて生成されるゲーム画像に操作対象が含まれるように設定されること、あるいは、操作対象の位置に応じた位置に仮想カメラが設定されることを含む概念である。
【0009】
上記(1)の構成によれば、所定の表示装置には、複数の第1仮想カメラによって生成されたゲーム空間の画像(第1ゲーム画像)が表示され、可搬型表示装置には、第1仮想カメラとは異なる位置に設定される第2仮想カメラによって生成されたゲーム空間の画像(第2ゲーム画像)が表示される。したがって、操作装置を用いるプレイヤ(第1プレイヤと呼ぶ)が見る第1ゲーム画像と、可搬型表示装置を用いるプレイヤ(第2プレイヤと呼ぶ)が見る第2ゲーム画像との間で、ゲーム画像の視点が異なることとなる。
【0010】
ここで、第2ゲーム画像の内容は第2プレイヤが操作する可搬型表示装置に表示されるので、第1プレイヤには見えず、第2プレイヤのみが第2ゲーム画像によって表されるゲーム状況を知ることができる。このように、ある情報(ゲーム状況)を第2プレイヤだけが知ることができるようにすることで、戦略性の高いゲームを提供することができる。すなわち、第2プレイヤは、自分だけが知ることができる情報を上手く使ってゲームを進めることによって、戦略的にゲームを進めることができる。一方、各第1プレイヤは、所定の表示装置に表示される第1ゲーム画像を見ることができるので、他の第1プレイヤのためのゲーム画像をも見ることができる。そのため、各第1プレイヤは、他の第1プレイヤのためのゲーム画像を見たり、あるいは、第1プレイヤ同士で情報を交換したりすることで、第2プレイヤのみが知る情報を推測し、戦略的にゲームを行うことができる。以上のように、上記(1)の構成によれば、2つの表示装置に表示する各ゲーム画像においてゲーム空間の表示領域を異ならせ、かつ、一方のゲーム画像を一部のプレイヤしか見ることができない構成としたことによって、複数人でゲームをプレイするゲームの戦略性を向上することができ、興趣性の高いゲームを提供することができる。また、例えば複数の第1プレイヤと第2プレイヤとが対戦する形式のゲームの場合には、一対多の状況においても第2プレイヤが不利になりすぎることなく、興趣性の高いゲームを提供することができる。
【0011】
(2)
動作制御部は、仮想空間内に配置される複数の第1オブジェクトを複数の第1操作対象として第1操作データに基づいて移動させる制御を行ってもよい。このとき、第1カメラ設定部は、各第1オブジェクトがそれに対応する第1仮想カメラの視野範囲にそれぞれ含まれるように各第1仮想カメラを設定する。
【0012】
上記(2)の構成によれば、第1ゲーム画像には、各プレイヤが操作する各第1オブジェクトを含む複数のゲーム画像が含まれる。これによれば、各第1プレイヤは、自身の操作対象を含むゲーム画像を見ることでゲーム操作を容易に行うことができる。
【0013】
(3)
動作制御部は、仮想空間内に配置される第2オブジェクトを第2操作対象として第2操作データに基づいて移動させる制御を行ってもよい。このとき、第2カメラ設定部は、第2オブジェクトが視野範囲に含まれるように第2仮想カメラを設定する。
【0014】
上記(3)の構成によれば、第2ゲーム画像には、第2プレイヤが操作する第2オブジェクトを含む複数のゲーム画像が含まれる。これによれば、第2プレイヤは、自身の操作対象を含むゲーム画像を見ることでゲーム操作を容易に行うことができる。
【0015】
(4)
第2カメラ設定部は、仮想空間において各第1操作対象が移動可能な所定平面に対する俯角が各第1仮想カメラの俯角よりも大きくなるように第2仮想カメラを設定してもよい。
【0016】
上記「所定平面」とは、例えばゲーム空間にフィールドオブジェクト(地形オブジェクト)が配置される場合には、当該フィールドオブジェクトの平面であってもよいが、必ずしもフィールドオブジェクトが配置される必要はない。
上記「仮想カメラの俯角」とは、仮想カメラの視線方向と所定平面とのなす角を指す。
【0017】
上記(4)の構成によれば、第2仮想カメラの俯角は第1仮想カメラよりも大きく設定されるので、第2ゲーム画像は第1ゲーム画像に含まれる各画像に比べて、所定平面上における各第1操作対象の位置をより広い範囲において表すことになる。したがって、上記(4)の構成によれば、第2プレイヤは、第2ゲーム画像を見ることで、各第1操作対象の位置を、第1ゲーム画像を見る第1プレイヤに比べて容易に把握することができる。これによれば、第2プレイヤは、自分だけが各第1操作対象の位置を知っていることを活かして戦略的にゲームを進めることができる。すなわち、ゲーム空間の状況を把握しやすいゲーム画像を第2プレイヤにより確実に提供することができる。
【0018】
(5)
第1カメラ設定部は、第1仮想カメラの向きが当該第1仮想カメラに対応する第1操作対象の向きに応じて変化するように、各第1仮想カメラを設定してもよい。このとき、第2カメラ設定部は、所定平面に略垂直な向きとなるように第2仮想カメラを設定する。
【0019】
上記(5)の構成によれば、第1仮想カメラは第1操作対象の向きに応じた向きとなるので、第1ゲーム画像は、所定位置から第1操作対象の向きに応じた方向を見たときのゲーム空間を表すことになる。そのため、第1プレイヤは、第1操作対象の向きに応じた方向しかゲーム空間の状況を確認することができない。一方、第2仮想カメラは所定平面に対して垂直な方向を向くので、第2ゲーム画像は、各操作対象の位置を上方から見る形で所定平面の広範囲を表すことになる。そのため、第2プレイヤは、各操作対象の位置を容易に把握することができる。したがって、上記(5)の構成によれば、ゲーム空間の状況を把握しやすいゲーム画像を第2プレイヤにより確実に提供することができる。
【0020】
(6)
第2カメラ設定部は、仮想空間において各第1操作対象が移動可能な所定平面に対する高さが各第1仮想カメラよりも高くなるように第2仮想カメラを設定してもよい。
【0021】
上記(6)の構成によれば、第2仮想カメラは第1仮想カメラよりも高く設定されるので、第2ゲーム画像は第1ゲーム画像に含まれる各画像に比べて、所定平面上における各第1操作対象の位置をより広い範囲において表すことになる。したがって、上記(6)の構成によれば、第2プレイヤは、第2ゲーム画像を見ることで、各第1操作対象の位置を、第1ゲーム画像を見る第1プレイヤに比べて容易に把握することができる。これによれば、第2プレイヤは、自分だけが各第1操作対象の位置を知っていることを活かして戦略的にゲームを進めることができる。すなわち、ゲーム空間の状況を把握しやすいゲーム画像を第2プレイヤにより確実に提供することができる。
【0022】
(7)
第1カメラ設定部は、所定平面に対して所定範囲の高さを有する障害物オブジェクトよりも低い位置に各第1仮想カメラを設定してもよい。このとき、第2カメラ設定部は、障害物オブジェクトよりも高い位置に第2仮想カメラを設定する。
【0023】
上記(7)の構成によれば、第1仮想カメラは障害物オブジェクトよりも低い位置に設定されるので、第1ゲーム画像は、障害物によって視界が遮られる画像となる。一方、第2仮想カメラは障害物オブジェクトよりも高い位置に設定されるので、第2ゲーム画像は、障害物オブジェクトによって視界が遮られることなく所定平面を見ることができる画像となる。したがって、第1プレイヤは、障害物オブジェクトによって限定された狭い範囲しかゲーム空間の状況を把握できないのに対して、第2プレイヤは、ゲーム空間のより広い範囲の状況を把握することができる。すなわち、第2プレイヤは、各第1操作対象の位置を第1プレイヤに比べて容易に把握することができ、上記(7)の構成によれば、ゲーム空間の状況を把握しやすい有利なゲーム画像を第2プレイヤにより確実に提供することができる。
【0024】
(8)
第1画像生成部は、複数の第1仮想カメラから見た仮想空間を表す複数の画像が、第1ゲーム画像の領域を複数に分割した各領域にそれぞれ配置されたゲーム画像を第1ゲーム画像として生成してもよい。
【0025】
上記(8)の構成によれば、所定の表示装置には、各第1プレイヤのためのゲーム画像がそれぞれの画面領域に表示されるので、各第1プレイヤは、自分のためのゲーム画像(自分が操作する操作対象に対応するゲーム画像)と、他の第1プレイヤのためのゲーム画像とを容易に視認することができる。
【0026】
(9)
可搬型表示装置は、慣性センサを含んでいてもよい。このとき、動作制御部は、慣性センサの出力に基づいて第2仮想カメラを設定する。
【0027】
上記(9)の構成によれば、第2プレイヤは、可搬型表示装置を動かすことによって第2仮想カメラを制御することができ、可搬型表示装置を動かすという直感的かつ容易な操作で第2仮想カメラを動かすことができる。
【0028】
(10)
本発明の他の一例は、第1操作データを出力する複数の操作装置と、第2操作データを出力する可搬型表示装置と、ゲーム装置とを含むゲームシステムである。
ゲーム装置は、操作データ取得部と、動作制御部と、第1画像生成部と、第2画像生成部と、第1画像出力部と、第2画像出力部とを備える。操作データ取得部は、複数の操作装置からの第1操作データと、可搬型表示装置からの第2操作データとを取得する。動作制御部は、仮想空間内において、各第1操作データに基づいて複数の第1操作対象の動作をそれぞれ制御し、第2操作データに基づいて第2操作対象の動作を制御する。第1画像生成部は、仮想空間のうち、複数の第1操作対象の位置に応じて決められる所定範囲の領域を表す第1ゲーム画像を生成する。第2画像生成部は、仮想空間のうちの第2操作対象を含む範囲で、かつ、第1ゲーム画像が表す範囲よりも広い範囲の領域を表す第2ゲーム画像を生成する。第1画像出力部は、第1ゲーム画像を可搬型表示装置とは別体の所定の表示装置に出力する。第2画像出力部は、第2ゲーム画像を可搬型表示装置に無線送信する。
可搬型表示装置は、画像受信部と、表示部とを備える。画像受信部は、第2ゲーム画像を受信する。表示部は、第2ゲーム画像を表示する。
【0029】
上記「第1ゲーム画像が表す範囲よりも広い範囲の領域を表す」とは、ゲーム画像によって表される(ゲーム空間の)範囲の大きさに関して、第1ゲーム画像よりも第2ゲーム画像の方が大きいことを意味し、第1ゲーム画像が表す全範囲が、第2ゲーム画像が表す範囲に含まれている必要はない。例えば、後述する実施形態や第1の変形例のように、ゲーム空間における所定平面上に障害物オブジェクトが設置される場合や、あるいは、所定平面上に設置されるフィールドオブジェクトに凹凸がある場合においては、第2ゲーム画像の視点の高さを第1ゲーム画像より高くする、または、第2ゲーム画像の視線方向の俯角を第1ゲーム画像より大きくすることによって、第2ゲーム画像は、第1ゲーム画像が表す範囲よりも広い範囲の領域を表すものとなる。
【0030】
上記(10)の構成によれば、所定の表示装置に表示される第1ゲーム画像は、第1操作対象の位置に応じて決められる所定範囲の領域を表し、可搬型表示装置に表示される第2ゲーム画像は、第1ゲーム画像よりも広い範囲の領域を表すことになる。これによれば、上記(1)の構成と同様、2つの表示装置に表示する各ゲーム画像においてゲーム空間の表示領域を異ならせ、かつ、一方のゲーム空間を一部のプレイヤしか見ることができない構成としたことによって、複数人でゲームをプレイするゲームの戦略性を向上することができ、興趣性の高いゲームを提供することができる。また、例えば複数の第1プレイヤと第2プレイヤとが対戦する形式のゲームの場合には、一対多の状況においても第2プレイヤが不利になりすぎることなく、興趣性の高いゲームを提供することができる。
【0031】
(11)
第1画像生成部は、第1操作対象の向きに対応する視線方向で仮想空間を表す画像を各第1操作対象について生成することで第1ゲーム画像を生成してもよい。このとき、第2画像生成部は、各第1操作対象が移動可能な所定平面を当該所定平面に略垂直な視線方向から見たゲーム画像を第2ゲーム画像として生成する。
【0032】
上記(11)の構成によれば、第1ゲーム画像は、所定位置から第1操作対象の向きに応じた方向を見たときのゲーム空間を表すことになる。そのため、第1プレイヤは、第1操作対象の向きに応じた方向しかゲーム空間の状況を確認することができない。一方、第2ゲーム画像は、各操作対象の位置を上方から見る形で所定平面の広範囲を表すことになる。そのため、第2プレイヤは、各操作対象の位置を容易に把握することができる。したがって、上記(11)の構成によれば、ゲーム空間の状況を把握しやすいゲーム画像を第2プレイヤにより確実に提供することができる。
【0033】
(12)
仮想空間には、各第1操作対象が移動可能な所定平面に対して所定範囲の高さを有する障害物オブジェクトが設置されてもよい。このとき、第1画像生成部は、障害物オブジェクトよりも低い視点から見た第1ゲーム画像を生成する。第2画像生成部は、障害物オブジェクトよりも高い視点から見た第2ゲーム画像を生成する。
【0034】
上記(12)の構成によれば、第1ゲーム画像は、障害物によって視界が遮られる画像となるのに対して、第2ゲーム画像は、障害物オブジェクトによって視界が遮られることなく所定平面を見ることができる画像となる。これによれば、第1プレイヤは、障害物オブジェクトによって限定された狭い範囲しかゲーム空間の状況を把握できないのに対して、第2プレイヤは、ゲーム空間のより広い範囲の状況を把握することができる。したがって、第2プレイヤは、各第1操作対象の位置を第1プレイヤに比べて容易に把握することができ、上記(12)の構成によれば、ゲーム空間の状況を把握しやすい有利なゲーム画像を第2プレイヤにより確実に提供することができる。
【0035】
(13)
第1画像生成部は、仮想空間における所定範囲の領域のうち、各第1操作対象の位置に応じて決められる一部領域のみを視認可能な第1ゲーム画像を生成してもよい。このとき、第2画像生成部は、仮想空間における所定範囲の領域を表す第2ゲーム画像を生成する。
【0036】
上記「一部領域のみを視認可能」とは、一部領域のみが表示画面に表示される状態や、所定範囲のうちで一部領域以外の他の領域が黒く(あるいは半透明やぼかしが入った状態で)表示される状態を含む概念である。
【0037】
上記(13)の構成によれば、第1ゲーム画像は、所定範囲のうちの一部領域のみが視認可能であるのに対して、第2ゲーム画像は、所定範囲の全領域が視認可能である。これによれば、第1プレイヤは、狭い範囲しかゲーム空間の状況を把握できないのに対して、第2プレイヤは、ゲーム空間のより広い範囲の状況を把握することができる。したがって、第2プレイヤは、各第1操作対象の位置を第1プレイヤに比べて容易に把握することができ、上記(13)の構成によれば、ゲーム空間の状況を把握しやすい有利なゲーム画像を第2プレイヤにより確実に提供することができる。
【0038】
(14)
第1画像生成部は、仮想空間に仮想カメラを設定し、仮想カメラから見た仮想空間を表す画像を第1ゲーム画像として生成してもよい。このとき、第2画像生成部は、仮想空間を表す画像としてゲーム装置がアクセス可能な記憶手段に予め記憶されている画像データを用いて第2ゲーム画像を生成する。
【0039】
上記(14)の構成によれば、予め用意された画像データを用いて第2ゲーム画像が生成されるので、第2ゲーム画像を簡易な処理で容易に生成することができる。
【0040】
(15)
第2画像生成部は、仮想空間を表すゲーム画像上の第1操作対象および第2操作対象の位置を表し、かつ操作対象または仮想カメラの向きを表す画像が描かれた第2ゲーム画像を生成してもよい。
【0041】
上記(15)の構成によれば、第2プレイヤは、第2ゲーム画像によって各操作対象の位置や、各操作対象または対応する各仮想カメラの向きを知ることができるので、ゲーム空間の状況を把握しやすい有利なゲーム画像を第2プレイヤにより確実に提供することができる。
【0042】
(16)
可搬型表示装置は、表示部の画面上に設けられるタッチパネルをさらに備えていてもよい。このとき、動作制御部は、タッチパネルに対する入力に基づいて第2操作対象を移動させる。
【0043】
上記(16)の構成によれば、第2プレイヤは、タッチパネルを用いた操作で操作対象を移動させることができ、直感的かつ容易な操作方法でゲーム操作を行うことができる。
【0044】
(17)
可搬型表示装置は、少なくとも上下左右の4方向の入力が可能な方向入力部をさらに備えていてもよい。このとき、動作制御部は、方向入力部に対する方向入力に応じて第2操作対象を移動させる。
【0045】
上記(17)の構成によれば、第2プレイヤは、方向入力部を用いた操作で操作対象を移動させることができ、容易な操作方法でゲーム操作を行うことができる。
【0046】
(18)
動作制御部は、仮想空間に設置される所定平面上において複数の第1操作対象および第2操作対象を移動させてもよい。このとき、ゲーム装置は、複数の第1操作対象のいずれかと第2操作対象とが接触したことに応じて所定のゲーム効果を発生させる効果発生部をさらに備える。
【0047】
上記「ゲーム効果」とは、例えば、得点の付与や、所定のエフェクト画像の表示等、ゲーム上における任意の効果を含む概念である。
【0048】
上記(18)の構成によれば、後述する実施形態のように、第1操作対象と第2操作対象とのいずれか一方が他方を捕まえるゲームを実現することができる。このようなゲームでは、他のプレイヤの操作対象の位置を知ることができれば有利になるので、上記(18)の構成のように、第2ゲーム画像によって他の操作対象の位置を把握することができる第2プレイヤは第1プレイヤよりも有利になる。したがって、複数の第1プレイヤと第2プレイヤとが対戦する一対多の状況においても第2プレイヤが不利になりすぎることなく、興趣性の高いゲームを提供することができる。
【0049】
(19)
動作制御部は、仮想空間に設置される所定平面上における移動動作と射撃動作とを複数の第1操作対象を行わせ、所定平面の上方の空間における移動動作と射撃動作とを第2操作対象に行わせてもよい。
【0050】
上記(19)の構成によれば、第1操作対象と第2操作対象とで射撃を行う射撃ゲームを実現することができる。このようなゲームでは、他のプレイヤの操作対象の位置を知ることができれば有利になるので、上記(19)の構成のように、第2ゲーム画像によって他の操作対象の位置を把握することができる第2プレイヤは第1プレイヤよりも有利になる。したがって、複数の第1プレイヤと第2プレイヤとが対戦する一対多の状況においても第2プレイヤが不利になりすぎることなく、興趣性の高いゲームを提供することができる。
【0051】
(20)
ゲーム装置は、第2ゲーム画像を圧縮する画像圧縮部をさらに備えていてもよい。このとき、第2画像出力部は、圧縮された第2ゲーム画像を無線送信する。可搬型表示装置は、画像受信部によって受信される、圧縮された第2ゲーム画像を伸張する画像伸張部をさらに備える。表示部は、画像伸張部によって伸張された第2ゲーム画像を表示する。
【0052】
上記(20)の構成によれば、第2ゲーム画像は、圧縮されてゲーム装置から可搬型表示装置へ送信されるので、ゲーム画像を高速に無線送信することができ、ゲーム処理が行われてからゲーム画像が表示されるまでの遅延を少なくすることができる。
【0053】
本発明の別の一例は、上記(1)〜(20)のゲームシステムに含まれるゲーム装置の形態であってもよい。また、本発明の別の一例は、ゲーム装置のコンピュータを上記ゲーム処理部における各部(第1画像出力部および第2画像出力部が含まれなくてもよい)と同等の手段として機能させるゲームプログラムの形態であってもよい。さらに、本発明の別の一例は、上記(1)〜(20)のゲームシステムにおいて行われるゲーム処理方法の形態であってもよい。
【発明の効果】
【0054】
以上のように、本発明によれば、2つの表示装置に表示する各ゲーム画像においてゲーム空間の表示範囲を異ならせ、かつ、一方のゲーム画像を一部のプレイヤしか見ることができない構成としたことによって、複数人でゲームをプレイするゲームの戦略性を向上することができ、興趣性の高いゲームを提供することができる。
【図面の簡単な説明】
【0055】
【図1】ゲームシステム1の外観図
【図2】ゲーム装置3の内部構成を示すブロック図
【図3】メインコントローラ8の外観構成を示す斜視図
【図4】メインコントローラ8の外観構成を示す斜視図
【図5】メインコントローラ8の内部構造を示す図
【図6】メインコントローラ8の内部構造を示す図
【図7】サブコントローラ9の外観構成を示す斜視図
【図8】コントローラ5の構成を示すブロック図
【図9】端末装置7の外観構成を示す図
【図10】ユーザが端末装置7を把持した様子を示す図
【図11】端末装置7の内部構成を示すブロック図
【図12】本実施形態におけるテレビ用ゲーム画像の一例を示す図
【図13】本実施形態における端末用ゲーム画像の一例を示す図
【図14】第1仮想カメラおよび第2仮想カメラの配置を示す図
【図15】拡大画像の一例を示す図
【図16】ゲーム処理において用いられる各種データを示す図
【図17】ゲーム装置3において実行されるゲーム処理の流れを示すメインフローチャート
【図18】図17に示すゲーム制御処理(ステップS4)の詳細な流れを示すフローチャート
【図19】図17に示すテレビ用ゲーム画像の生成処理(ステップS5)の詳細な流れを示すフローチャート
【図20】図17に示す端末用ゲーム画像の生成処理(ステップS6)の詳細な流れを示すフローチャート
【図21】第1の変形例における端末用ゲーム画像の一例を示す図
【図22】端末装置7の姿勢と第2仮想カメラの姿勢との対応を示す図
【図23】第2の変形例におけるテレビ用ゲーム画像の一例を示す図
【図24】第2の変形例における端末用ゲーム画像の一例を示す図
【発明を実施するための形態】
【0056】
[1.ゲームシステムの全体構成]
以下、図面を参照して、本発明の一実施形態に係るゲームシステム1について説明する。図1は、ゲームシステム1の外観図である。図1において、ゲームシステム1は、テレビジョン受像器等に代表される据置型のディスプレイ装置(以下、「テレビ」と記載する)2、据置型のゲーム装置3、光ディスク4、コントローラ5、マーカ装置6、および、端末装置7を含む。ゲームシステム1は、コントローラ5および端末装置7を用いたゲーム操作に基づいてゲーム装置3においてゲーム処理を実行し、ゲーム処理によって得られるゲーム画像をテレビ2および/または端末装置7に表示するものである。
【0057】
ゲーム装置3には、当該ゲーム装置3に対して交換可能に用いられる情報記憶媒体の一例である光ディスク4が脱着可能に挿入される。光ディスク4には、ゲーム装置3において実行されるための情報処理プログラム(典型的にはゲームプログラム)が記憶されている。ゲーム装置3の前面には光ディスク4の挿入口が設けられている。ゲーム装置3は、挿入口に挿入された光ディスク4に記憶されている情報処理プログラムを読み出して実行することによってゲーム処理を実行する。
【0058】
ゲーム装置3には、テレビ2が接続コードを介して接続される。テレビ2は、ゲーム装置3において実行されるゲーム処理によって得られるゲーム画像を表示する。テレビ2はスピーカ2a(図2)を有しており、スピーカ2aは、上記ゲーム処理の結果得られるゲーム音声を出力する。なお、他の実施形態においては、ゲーム装置3と据置型の表示装置とは一体となっていてもよい。また、ゲーム装置3とテレビ2との通信は無線通信であってもよい。
【0059】
テレビ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を設置する位置および向きは任意である。
【0060】
コントローラ5は、自機に対して行われた操作の内容を表す操作データをゲーム装置3に与えるものである。本実施形態では、コントローラ5は、メインコントローラ8とサブコントローラ9とを有し、サブコントローラ9がメインコントローラ8に着脱可能に装着される構成である。コントローラ5とゲーム装置3とは無線通信によって通信可能である。本実施形態では、コントローラ5とゲーム装置3との間の無線通信には例えばBluetooth(ブルートゥース)(登録商標)の技術が用いられる。なお、他の実施形態においてはコントローラ5とゲーム装置3とは有線で接続されてもよい。また、図1では、ゲームシステム1に含まれるコントローラ5は1つとするが、本実施形態においては、ゲームシステム1は複数(4つ)のコントローラ5を含むものとする。ゲーム装置3は複数のコントローラと通信可能であり、所定台数のコントローラを同時に使用することによって複数人でゲームをプレイすることが可能である。コントローラ5の詳細な構成については後述する。
【0061】
端末装置7は、ユーザが把持可能な程度の大きさであり、ユーザは端末装置7を手に持って動かしたり、あるいは、端末装置7を自由な位置に配置したりして使用することが可能である。詳細な構成は後述するが、端末装置7は、表示手段であるLCD(Liquid Crystal Display:液晶表示装置)51、および、入力手段(後述するタッチパネル52やジャイロセンサ64等)を備える。端末装置7とゲーム装置3とは無線(有線であってもよい)によって通信可能である。端末装置7は、ゲーム装置3で生成された画像(例えばゲーム画像)のデータをゲーム装置3から受信し、画像をLCD51に表示する。なお、本実施形態では表示装置としてLCDを用いているが、端末装置7は、例えばEL(Electro Luminescence:電界発光)を利用した表示装置等、他の任意の表示装置を有していてもよい。また、端末装置7は、自機に対して行われた操作の内容を表す操作データをゲーム装置3に送信する。
【0062】
[2.ゲーム装置3の内部構成]
次に、図2を参照して、ゲーム装置3の内部構成について説明する。図2は、ゲーム装置3の内部構成を示すブロック図である。ゲーム装置3は、CPU(Central Processing Unit)10、システムLSI11、外部メインメモリ12、ROM/RTC13、ディスクドライブ14、およびAV−IC15等を有する。
【0063】
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に読み出したデータを書き込む。
【0064】
システムLSI11には、入出力プロセッサ(I/Oプロセッサ)11a、GPU(Graphics Processor Unit)11b、DSP(Digital Signal Processor)11c、VRAM(Video RAM)11d、および内部メインメモリ11eが設けられる。図示は省略するが、これらの構成要素11a〜11eは内部バスによって互いに接続される。
【0065】
GPU11bは、描画手段の一部を形成し、CPU10からのグラフィクスコマンド(作画命令)に従って画像を生成する。VRAM11dは、GPU11bがグラフィクスコマンドを実行するために必要なデータ(ポリゴンデータやテクスチャデータ等のデータ)を記憶する。画像が生成される際には、GPU11bは、VRAM11dに記憶されたデータを用いて画像データを作成する。なお、本実施形態においては、ゲーム装置3は、テレビ2に表示するゲーム画像と、端末装置7に表示するゲーム画像との両方を生成する。以下では、テレビ2に表示されるゲーム画像を「テレビ用ゲーム画像」と呼び、端末装置7に表示されるゲーム画像を「端末用ゲーム画像」と呼ぶことがある。
【0066】
DSP11cは、オーディオプロセッサとして機能し、内部メインメモリ11eや外部メインメモリ12に記憶されるサウンドデータや音波形(音色)データを用いて、音声データを生成する。なお、本実施形態においては、ゲーム音声についてもゲーム画像と同様、テレビ2のスピーカから出力するゲーム音声と、端末装置7のスピーカから出力するゲーム音声との両方が生成される。以下では、テレビ2から出力されるゲーム音声を「テレビ用ゲーム音声」と呼び、端末装置7から出力されるゲーム音声を「端末用ゲーム音声」と呼ぶことがある。
【0067】
上記のようにゲーム装置3において生成される画像および音声のうちで、テレビ2において出力される画像および音声のデータは、AV−IC15によって読み出される。AV−IC15は、読み出した画像データをAVコネクタ16を介してテレビ2に出力するとともに、読み出した音声データを、テレビ2に内蔵されるスピーカ2aに出力する。これによって、テレビ2に画像が表示されるとともにスピーカ2aから音が出力される。
【0068】
また、ゲーム装置3において生成される画像および音声のうちで、端末装置7において出力される画像および音声のデータは、入出力プロセッサ11a等によって端末装置7へ送信される。入出力プロセッサ11a等による端末装置7へのデータの送信については後述する。
【0069】
入出力プロセッサ11aは、それに接続される構成要素との間でデータの送受信を実行したり、外部装置からのデータのダウンロードを実行したりする。入出力プロセッサ11aは、フラッシュメモリ17、ネットワーク通信モジュール18、コントローラ通信モジュール19、拡張コネクタ20、メモリカード用コネクタ21、コーデックLSI27に接続される。また、ネットワーク通信モジュール18にはアンテナ22が接続される。コントローラ通信モジュール19にはアンテナ23が接続される。コーデックLSI27は端末通信モジュール28に接続され、端末通信モジュール28にはアンテナ29が接続される。
【0070】
ゲーム装置3は、インターネット等のネットワークに接続して外部情報処理装置(例えば他のゲーム装置や、各種サーバ等)と通信を行うことが可能である。すなわち、入出力プロセッサ11aは、ネットワーク通信モジュール18およびアンテナ22を介してインターネット等のネットワークに接続し、ネットワークに接続される外部情報処理装置と通信することができる。入出力プロセッサ11aは、定期的にフラッシュメモリ17にアクセスし、ネットワークへ送信する必要があるデータの有無を検出し、当該データが有る場合には、ネットワーク通信モジュール18およびアンテナ22を介してネットワークに送信する。また、入出力プロセッサ11aは、外部情報処理装置から送信されてくるデータやダウンロードサーバからダウンロードしたデータを、ネットワーク、アンテナ22およびネットワーク通信モジュール18を介して受信し、受信したデータをフラッシュメモリ17に記憶する。CPU10はゲームプログラムを実行することにより、フラッシュメモリ17に記憶されたデータを読み出してゲームプログラムで利用する。フラッシュメモリ17には、ゲーム装置3と外部情報処理装置との間で送受信されるデータの他、ゲーム装置3を利用してプレイしたゲームのセーブデータ(ゲームの結果データまたは途中データ)が記憶されてもよい。また、フラッシュメモリ17にはゲームプログラムが記憶されてもよい。
【0071】
また、ゲーム装置3は、コントローラ5からの操作データを受信することが可能である。すなわち、入出力プロセッサ11aは、コントローラ5から送信される操作データをアンテナ23およびコントローラ通信モジュール19を介して受信し、内部メインメモリ11eまたは外部メインメモリ12のバッファ領域に記憶(一時記憶)する。
【0072】
また、ゲーム装置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との間の無線通信を高速に行うようにしてもよいし、他の通信方式を用いてもよい。
【0073】
また、ゲーム装置3は、画像データの他、音声データを端末装置7へ送信する。すなわち、入出力プロセッサ11aは、DSP11cが生成した音声データを、コーデックLSI27を介して端末通信モジュール28へ出力する。コーデックLSI27は、音声データに対しても画像データと同様に圧縮処理を行う。音声データに対する圧縮の方式は、どのような方式であってもよいが、圧縮率が高く、音声の劣化が少ない方式が好ましい。また、他の実施形態においては、音声データは圧縮されずに送信されてもよい。端末通信モジュール28は、圧縮された画像データおよび音声データを、アンテナ29を介して端末装置7へ送信する。
【0074】
さらに、ゲーム装置3は、上記画像データおよび音声データの他に、必要に応じて各種の制御データを端末装置7へ送信する。制御データは、端末装置7が備える構成要素に対する制御指示を表すデータであり、例えばマーカ部(図10に示すマーカ部55)の点灯を制御する指示や、カメラ(図10に示すカメラ56)の撮像を制御する指示等を表す。入出力プロセッサ11aは、CPU10の指示に応じて制御データを端末装置7へ送信する。なお、この制御データに関して、本実施形態ではコーデックLSI27はデータの圧縮処理を行わないが、他の実施形態においては圧縮処理を行うようにしてもよい。なお、ゲーム装置3から端末装置7へ送信される上述のデータは、必要に応じて暗号化がされていてもよいし、されていなくともよい。
【0075】
また、ゲーム装置3は、端末装置7から各種データを受信可能である。詳細は後述するが、本実施形態では、端末装置7は、操作データ、画像データ、および音声データを送信する。端末装置7から送信される各データはアンテナ29を介して端末通信モジュール28によって受信される。ここで、端末装置7からの画像データおよび音声データは、ゲーム装置3から端末装置7への画像データおよび音声データと同様の圧縮処理が施されている。したがって、これら画像データおよび音声データについては、端末通信モジュール28からコーデックLSI27に送られ、コーデックLSI27によって伸張処理が施されて入出力プロセッサ11aに出力される。一方、端末装置7からの操作データに関しては、画像や音声に比べてデータ量が少ないので、圧縮処理が施されていなくともよい。また、必要に応じて暗号化がされていてもよいし、されていなくともよい。したがって、操作データは、端末通信モジュール28で受信された後、コーデックLSI27を介して入出力プロセッサ11aに出力される。入出力プロセッサ11aは、端末装置7から受信したデータを、内部メインメモリ11eまたは外部メインメモリ12のバッファ領域に記憶(一時記憶)する。
【0076】
また、ゲーム装置3は、他の機器や外部記憶媒体に接続することが可能である。すなわち、入出力プロセッサ11aには、拡張コネクタ20およびメモリカード用コネクタ21が接続される。拡張コネクタ20は、USBやSCSIのようなインターフェースのためのコネクタである。拡張コネクタ20に対しては、外部記憶媒体のようなメディアを接続したり、他のコントローラ等の周辺機器を接続したり、有線の通信用コネクタを接続することによってネットワーク通信モジュール18に替えてネットワークとの通信を行ったりすることができる。メモリカード用コネクタ21は、メモリカードのような外部記憶媒体を接続するためのコネクタである。例えば、入出力プロセッサ11aは、拡張コネクタ20やメモリカード用コネクタ21を介して外部記憶媒体にアクセスし、外部記憶媒体にデータを保存したり、外部記憶媒体からデータを読み出したりすることができる。
【0077】
ゲーム装置3には、電源ボタン24、リセットボタン25、およびイジェクトボタン26が設けられる。電源ボタン24およびリセットボタン25は、システムLSI11に接続される。電源ボタン24がオンされると、図示しないACアダプタによって外部の電源からゲーム装置3の各構成要素に対して電力が供給される。リセットボタン25が押されると、システムLSI11は、ゲーム装置3の起動プログラムを再起動する。イジェクトボタン26は、ディスクドライブ14に接続される。イジェクトボタン26が押されると、ディスクドライブ14から光ディスク4が排出される。
【0078】
なお、他の実施形態においては、ゲーム装置3が備える各構成要素のうちでいくつかの構成要素は、ゲーム装置3とは別体の拡張機器として構成されてもよい。このとき、拡張機器は、例えば上記拡張コネクタ20を介してゲーム装置3と接続されるようにしてもよい。具体的には、拡張機器は、例えば上記コーデックLSI27、端末通信モジュール28およびアンテナ29の各構成要素を備えており、拡張コネクタ20に対して着脱可能であってもよい。これによれば、上記各構成要素を備えていないゲーム装置に対して上記拡張機器を接続することによって、当該ゲーム装置を端末装置7と通信可能な構成とすることができる。
【0079】
[3.コントローラ5の構成]
次に、図3〜図7を参照して、コントローラ5について説明する。上述のように、コントローラ5は、メインコントローラ8とサブコントローラ9とによって構成される。図3は、メインコントローラ8の外観構成を示す斜視図である。図4は、メインコントローラ8の外観構成を示す斜視図である。図3は、メインコントローラ8の上側後方から見た斜視図であり、図4は、メインコントローラ8を下側前方から見た斜視図である。
【0080】
図3および図4において、メインコントローラ8は、例えばプラスチック成型によって形成されたハウジング31を有している。ハウジング31は、その前後方向(図3に示すZ軸方向)を長手方向とした略直方体形状を有しており、全体として大人や子供の片手で把持可能な大きさである。ユーザは、メインコントローラ8に設けられたボタンを押下すること、および、メインコントローラ8自体を動かしてその位置や姿勢(傾き)を変えることによってゲーム操作を行うことができる。
【0081】
ハウジング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を誤って押下することを防止することができる。
【0082】
ハウジング31の後面にはコネクタ33が設けられている。コネクタ33は、メインコントローラ8に他の機器(例えば、サブコントローラ9や他のセンサユニット等)を接続するために利用される。また、ハウジング31の後面におけるコネクタ33の両側には、上記他の機器が容易に離脱することを防止するために係止穴33aが設けられている。
【0083】
ハウジング31上面の後方には複数(図3では4つ)のLED34a〜34dが設けられる。ここで、コントローラ5(メインコントローラ8)には、他のコントローラと区別するためにコントローラ種別(番号)が付与される。各LED34a〜34dは、コントローラ5に現在設定されている上記コントローラ種別をユーザに通知したり、コントローラ5の電池残量をユーザに通知したりする等の目的で用いられる。具体的には、コントローラ5を用いてゲーム操作が行われる際、上記コントローラ種別に応じて複数のLED34a〜34dのいずれか1つが点灯する。
【0084】
また、メインコントローラ8は撮像情報演算部35(図6)を有しており、図4に示すように、ハウジング31前面には撮像情報演算部35の光入射面35aが設けられる。光入射面35aは、マーカ6Rおよび6Lからの赤外光を少なくとも透過する材質で構成される。
【0085】
ハウジング31上面における1番ボタン32bとホームボタン32fとの間には、メインコントローラ8に内蔵されるスピーカ47(図5)からの音を外部に放出するための音抜き孔31aが形成されている。
【0086】
次に、図5および図6を参照して、メインコントローラ8の内部構造について説明する。図5および図6は、メインコントローラ8の内部構造を示す図である。なお、図5は、メインコントローラ8の上筐体(ハウジング31の一部)を外した状態を示す斜視図である。図6は、メインコントローラ8の下筐体(ハウジング31の一部)を外した状態を示す斜視図である。図6に示す斜視図は、図5に示す基板30を裏面から見た斜視図となっている。
【0087】
図5において、ハウジング31の内部には基板30が固設されており、当該基板30の上主面上に各操作ボタン32a〜32h、各LED34a〜34d、加速度センサ37、アンテナ45、およびスピーカ47等が設けられる。これらは、基板30等に形成された配線(図示せず)によってマイクロコンピュータ(Micro Computer:マイコン)42(図6参照)に接続される。本実施形態では、加速度センサ37は、X軸方向に関してメインコントローラ8の中心からずれた位置に配置されている。これによって、メインコントローラ8をZ軸回りに回転させたときのメインコントローラ8の動きが算出しやすくなる。また、加速度センサ37は、長手方向(Z軸方向)に関してメインコントローラ8の中心よりも前方に配置されている。また、無線モジュール44(図6)およびアンテナ45によって、コントローラ5(メインコントローラ8)がワイヤレスコントローラとして機能する。
【0088】
一方、図6において、基板30の下主面上の前端縁に撮像情報演算部35が設けられる。撮像情報演算部35は、メインコントローラ8の前方から順に赤外線フィルタ38、レンズ39、撮像素子40、および画像処理回路41を備えている。これらの部材38〜41はそれぞれ基板30の下主面に取り付けられる。
【0089】
さらに、基板30の下主面上には、上記マイコン42およびバイブレータ46が設けられている。バイブレータ46は、例えば振動モータやソレノイドであり、基板30等に形成された配線によってマイコン42と接続される。マイコン42の指示によりバイブレータ46が作動することによってメインコントローラ8に振動が発生する。これによって、メインコントローラ8を把持しているユーザの手にその振動が伝達される、いわゆる振動対応ゲームを実現することができる。本実施形態では、バイブレータ46は、ハウジング31のやや前方寄りに配置される。つまり、バイブレータ46がメインコントローラ8の中心よりも端側に配置することによって、バイブレータ46の振動によりメインコントローラ8全体を大きく振動させることができる。また、コネクタ33は、基板30の下主面上の後端縁に取り付けられる。なお、図5および図6に示す他、メインコントローラ8は、マイコン42の基本クロックを生成する水晶振動子、スピーカ47に音声信号を出力するアンプ等を備えている。
【0090】
図7は、サブコントローラ9の外観構成を示す斜視図である。サブコントローラ9は、例えばプラスチック成型によって形成されたハウジング80を有している。ハウジング80は、メインコントローラ8と同様に、全体として大人や子供の片手で把持可能な大きさである。このサブコントローラ9を用いることによっても、プレイヤは、ボタンやスティックを操作することと、コントローラ自体の位置や向きを変えることとによって、ゲーム操作を行うことができる。
【0091】
図7に示すように、ハウジング80の上面(y’軸負方向側の面)の先端側(z’軸正側)には、アナログスティック81が設けられる。また、図示されないが、ハウジング80の先端には、後方にやや傾斜する先端面が設けられており、この先端面には、上下方向(図3に示すy軸方向)に並べて、CボタンおよびZボタンが設けられる。アナログジョイスティック81および各ボタン(CボタンおよびZボタン)には、ゲーム装置3が実行するゲームプログラムに応じてそれぞれ適宜の機能が割り当てられる。なお、アナログジョイスティック81および各ボタンを包括的に「操作部82(図8参照)」と呼ぶことがある。
【0092】
また、図7では示されないが、サブコントローラ9は、ハウジング80の内部に加速度センサ(図8に示す加速度センサ83)を有している。本実施形態においては、加速度センサ83は、メインコントローラ8の加速度センサ37と同様のものが用いられる。ただし、加速度センサ83は、加速度センサ37とは異なるものであってもよく、例えば所定の1軸または2軸の加速度を検出するものであってもよい。
【0093】
また、図7に示すように、ハウジング80の後端にはケーブルの一端が接続されている。図7では示されないが、ケーブルの他端にはコネクタ(図8に示すコネクタ84)が接続される。このコネクタはメインコントローラ8のコネクタ33と接続可能である。つまり、コネクタ33とコネクタ84とを接続することによって、メインコントローラ8とサブコントローラ9とが接続される。
【0094】
なお、図3〜図7に示したメインコントローラ8およびサブコントローラ9の形状や、各操作ボタンの形状、加速度センサやバイブレータの数および設置位置等は単なる一例に過ぎず、他の形状、数、および設置位置であってもよい。また、本実施形態では、メインコントローラ8の撮像手段による撮像方向はZ軸正方向であるが、撮像方向はいずれの方向であってもよい。すなわち、コントローラ5における撮像情報演算部35の位置(撮像情報演算部35の光入射面35a)は、ハウジング31の前面でなくてもよく、ハウジング31の外部から光を取り入れることができれば他の面に設けられてもかまわない。
【0095】
図8は、コントローラ5の構成を示すブロック図である。図8に示すように、メインコントローラ8は、操作部32(各操作ボタン32a〜32i)、撮像情報演算部35、通信部36、加速度センサ37、およびジャイロセンサ48を備えている。また、サブコントローラ9は、操作部82および加速度センサ83を備えている。コントローラ5は、自機に対して行われた操作内容を表すデータを操作データとしてゲーム装置3へ送信するものである。なお、以下では、コントローラ5が送信する操作データを「コントローラ操作データ」と呼び、端末装置7が送信する操作データを「端末操作データ」と呼ぶことがある。
【0096】
操作部32は、上述した各操作ボタン32a〜32iを含み、各操作ボタン32a〜32iに対する入力状態(各操作ボタン32a〜32iが押下されたか否か)を表す操作ボタンデータを通信部36のマイコン42へ出力する。
【0097】
撮像情報演算部35は、撮像手段が撮像した画像データを解析してその中で輝度が高い領域を判別してその領域の重心位置やサイズなどを算出するためのシステムである。撮像情報演算部35は、例えば最大200フレーム/秒程度のサンプリング周期を有するので、比較的高速なコントローラ5の動きでも追跡して解析することができる。
【0098】
撮像情報演算部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の向きや位置を算出することができる。
【0099】
なお、他の実施形態においては、コントローラ5は画像処理回路41を備えていない構成であってもよく、撮像画像自体がコントローラ5からゲーム装置3へ送信されてもよい。このとき、ゲーム装置3は、画像処理回路41と同様の機能を有する回路あるいはプログラムを有しており、上記マーカ座標を算出するようにしてもよい。
【0100】
加速度センサ37は、コントローラ5の加速度(重力加速度を含む)を検出する、すなわち、コントローラ5に加わる力(重力を含む)を検出する。加速度センサ37は、当該加速度センサ37の検出部に加わっている加速度のうち、センシング軸方向に沿った直線方向の加速度(直線加速度)の値を検出する。例えば、2軸以上の多軸加速度センサの場合には、加速度センサの検出部に加わっている加速度として、各軸に沿った成分の加速度をそれぞれ検出する。なお、加速度センサ37は、例えば静電容量式のMEMS(Micro Electro Mechanical System)型加速度センサであるとするが、他の方式の加速度センサを用いるようにしてもよい。
【0101】
本実施形態では、加速度センサ37は、コントローラ5を基準とした上下方向(図3に示すY軸方向)、左右方向(図3に示すX軸方向)および前後方向(図3に示すZ軸方向)の3軸方向に関してそれぞれ直線加速度を検出する。加速度センサ37は、各軸に沿った直線方向に関する加速度を検出するものであるため、加速度センサ37からの出力は3軸それぞれの直線加速度の値を表すものとなる。すなわち、検出された加速度は、コントローラ5を基準に設定されるXYZ座標系(コントローラ座標系)における3次元のベクトルとして表される。
【0102】
加速度センサ37が検出した加速度を表すデータ(加速度データ)は、通信部36へ出力される。なお、加速度センサ37が検出した加速度は、コントローラ5自体の向き(傾斜角度)や動きに対応して変化するので、ゲーム装置3は取得された加速度データを用いてコントローラ5の向きや動きを算出することができる。本実施形態では、ゲーム装置3は、取得された加速度データに基づいてコントローラ5の姿勢や傾斜角度等を算出する。
【0103】
なお、加速度センサ37(後述する加速度センサ63についても同様)から出力される加速度の信号に基づいて、ゲーム装置3のプロセッサ(例えばCPU10)またはコントローラ5のプロセッサ(例えばマイコン42)等のコンピュータが処理を行うことによって、コントローラ5に関するさらなる情報を推測または算出(判定)することができることは、当業者であれば本明細書の説明から容易に理解できるであろう。例えば、加速度センサ37を搭載するコントローラ5が静止状態であることを前提としてコンピュータ側の処理が実行される場合(すなわち、加速度センサによって検出される加速度が重力加速度のみであるとして処理が実行される場合)、コントローラ5が現実に静止状態であれば、検出された加速度に基づいてコントローラ5の姿勢が重力方向に対して傾いているか否かまたはどの程度傾いているかを知ることができる。具体的には、加速度センサ37の検出軸が鉛直下方向を向いている状態を基準としたとき、1G(重力加速度)がかかっているか否かによって、コントローラ5が基準に対して傾いているか否かを知ることができるし、その大きさによって基準に対してどの程度傾いているかも知ることができる。また、多軸の加速度センサ37の場合には、さらに各軸の加速度の信号に対して処理を施すことによって、重力方向に対してコントローラ5がどの程度傾いているかをより詳細に知ることができる。この場合において、プロセッサは、加速度センサ37からの出力に基づいてコントローラ5の傾斜角度を算出してもよいし、当該傾斜角度を算出せずに、コントローラ5の傾斜方向を算出するようにしてもよい。このように、加速度センサ37をプロセッサと組み合わせて用いることによって、コントローラ5の傾斜角度または姿勢を判定することができる。
【0104】
一方、コントローラ5が動的な状態(コントローラ5が動かされている状態)であることを前提とする場合には、加速度センサ37は重力加速度に加えてコントローラ5の動きに応じた加速度を検出するので、検出された加速度から重力加速度の成分を所定の処理により除去することによってコントローラ5の動き方向を知ることができる。また、コントローラ5が動的な状態であることを前提とする場合であっても、検出された加速度から、加速度センサの動きに応じた加速度の成分を所定の処理により除去することによって、重力方向に対するコントローラ5の傾きを知ることが可能である。なお、他の実施例では、加速度センサ37は、内蔵の加速度検出手段で検出された加速度信号をマイコン42に出力する前に当該加速度信号に対して所定の処理を行うための、組込み式の処理装置または他の種類の専用の処理装置を備えていてもよい。組込み式または専用の処理装置は、例えば、加速度センサ37が静的な加速度(例えば、重力加速度)を検出するために用いられる場合、加速度信号を傾斜角(あるいは、他の好ましいパラメータ)に変換するものであってもよい。
【0105】
ジャイロセンサ48は、3軸(本実施形態では、XYZ軸)回りの角速度を検出する。本明細書では、コントローラ5の撮像方向(Z軸正方向)を基準として、X軸回りの回転方向をピッチ方向、Y軸回りの回転方向をヨー方向、Z軸回りの回転方向をロール方向と呼ぶ。ジャイロセンサ48は、3軸回りの角速度を検出することができればよく、用いるジャイロセンサの数および組み合わせはどのようなものであってもよい。例えば、ジャイロセンサ48は、3軸ジャイロセンサであってもよいし、2軸ジャイロセンサと1軸ジャイロセンサとを組み合わせて3軸周りの角速度を検出するものであってもよい。ジャイロセンサ48で検出された角速度を表すデータは、通信部36へ出力される。また、ジャイロセンサ48は1軸または2軸回りの角速度を検出するものであってもよい。
【0106】
また、サブコントローラ9の操作部82は、上述したアナログジョイスティック81、CボタンおよびZボタンを含む。操作部82は、アナログスティック81に対する傾倒方向および傾倒量を表すスティックデータ(サブスティックデータと呼ぶ)と、各ボタンに対する入力状態(各ボタンが押下されたか否か)を表す操作ボタンデータ(サブ操作ボタンデータと呼ぶ)とを、コネクタ84を介してメインコントローラ8へ出力する。
【0107】
また、サブコントローラ9の加速度センサ83は、メインコントローラ8の加速度センサ37と同様のセンサであり、サブコントローラ9の加速度(重力加速度を含む)を検出する、すなわち、サブコントローラ9に加わる力(重力を含む)を検出する。加速度センサ83は、当該加速度センサ83の検出部に加わっている加速度のうち、所定の3軸方向に沿った直線方向の加速度(直線加速度)の値を検出する。検出された加速度を表すデータ(サブ加速度データと呼ぶ)は、コネクタ84を介してメインコントローラ8へ出力される。
【0108】
以上のように、サブコントローラ9は、上記サブスティックデータ、サブ操作ボタンデータ、およびサブ加速度データを含むサブコントローラデータをメインコントローラ8へ出力する。
【0109】
メインコントローラ8の通信部36は、マイコン42、メモリ43、無線モジュール44、およびアンテナ45を含んでいる。マイコン42は、処理を行う際にメモリ43を記憶領域として用いながら、マイコン42が取得したデータをゲーム装置3へ無線送信する無線モジュール44を制御する。
【0110】
サブコントローラ9からのサブコントローラデータは、マイコン42に入力され、一時的にメモリ43に格納される。また、操作部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へ出力する。
【0111】
以上のように、メインコントローラ8は、自機に対する操作を表す操作データとして、マーカ座標データ、加速度データ、角速度データ、および操作ボタンデータを送信可能である。サブコントローラ9は、自機に対する操作を表す操作データとして、加速度データ、スティックデータ、および操作ボタンデータを送信可能である。また、ゲーム装置3は、上記操作データをゲーム入力として用いてゲーム処理を実行する。したがって、上記コントローラ5を用いることによって、ユーザは、各操作ボタンを押下するという従来の一般的なゲーム操作に加えて、コントローラ5自体を動かすゲーム操作を行うことができる。例えば、メインコントローラ8および/またはサブコントローラ9を任意の姿勢に傾ける操作、メインコントローラ8によって画面上の任意の位置を指示する操作、および、メインコントローラ8および/またはサブコントローラ9自体を動かす操作等を行うことが可能となる。
【0112】
また、本実施形態において、コントローラ5は、ゲーム画像を表示する表示手段を有しないが、例えば電池残量を表す画像等を表示するための表示手段を有していてもよい。
【0113】
[4.端末装置7の構成]
次に、図9〜図11を参照して、端末装置7の構成について説明する。図9は、端末装置7の外観構成を示す図である。図9における(a)図は端末装置7の正面図であり、(b)図は上面図であり、(c)図は右側面図であり、(d)図は下面図である。また、図10は、ユーザが端末装置7を把持した様子を示す図である。
【0114】
図9に示されるように、端末装置7は、大略的には横長の長方形の板状形状であるハウジング50を備える。ハウジング50は、ユーザが把持することができる程度の大きさである。したがって、ユーザは、端末装置7を持って動かしたり、端末装置7の配置位置を変更したりすることができる。
【0115】
端末装置7は、ハウジング50の表面にLCD51を有する。LCD51は、ハウジング50の表面の中央付近に設けられる。したがって、ユーザは、図10に示すようにLCD51の両側部分のハウジング50を持つことによって、LCD51の画面を見ながら端末装置を持って動かすことができる。なお、図10ではユーザがLCD51の左右両側の部分のハウジング50を持つことで端末装置7を横持ちで(横に長い向きにして)持つ例を示しているが、端末装置7を縦持ちで(縦に長い向きにして)持つことも可能である。
【0116】
図9の(a)図に示すように、端末装置7は、操作手段として、LCD51の画面上にタッチパネル52を有する。本実施形態では、タッチパネル52は抵抗膜方式のタッチパネルである。ただし、タッチパネルは抵抗膜方式に限らず、例えば静電容量方式等、任意の方式のタッチパネルを用いることができる。また、タッチパネル52はシングルタッチ方式でもよいし、マルチタッチ方式であってもよい。本実施形態では、タッチパネル52として、LCD51の解像度と同解像度(検出精度)のものを利用する。ただし、必ずしもタッチパネル52の解像度とLCD51の解像度が一致している必要はない。タッチパネル52に対する入力は通常タッチペンを用いて行われるが、タッチペンに限らずユーザの指でタッチパネル52に対する入力をすることも可能である。なお、ハウジング50には、タッチパネル52に対する操作を行うために用いられるタッチペンを収納するための収納穴が設けられていてもよい。このように、端末装置7はタッチパネル52を備えるので、ユーザは、端末装置7を動かしながらタッチパネル52を操作することができる。つまりユーザは、LCD51の画面を動かしつつ、その画面に対して直接(タッチパネル52によって)入力を行うことができる。
【0117】
図9に示すように、端末装置7は、操作手段として、2つのアナログスティック53Aおよび53Bと、複数のボタン54A〜54Lとを備えている。各アナログスティック53Aおよび53Bは、方向を指示するデバイスである。各アナログスティック53Aおよび53Bは、ユーザの指で操作されるスティック部がハウジング50の表面に対して任意の方向(上下左右および斜め方向の任意の角度)にスライド(または傾倒)することができるように構成されている。また、左アナログスティック53AはLCD51の画面の左側に、右アナログスティック53BはLCD51の画面の右側にそれぞれ設けられる。したがって、ユーザは、左右いずれの手でもアナログスティックを用いて方向を指示する入力を行うことができる。また、図10に示すように、各アナログスティック53Aおよび53Bは、ユーザが端末装置7の左右部分を把持した状態で操作可能な位置に設けられるので、ユーザは、端末装置7を持って動かす場合においても各アナログスティック53Aおよび53Bを容易に操作することができる。
【0118】
各ボタン54A〜54Lは、所定の入力を行うための操作手段である。以下に示すように、各ボタン54A〜54Lは、ユーザが端末装置7の左右部分を把持した状態で操作可能な位置に設けられる(図10参照)。したがって、ユーザは、端末装置7を持って動かす場合においてもこれらの操作手段を容易に操作することができる。
【0119】
図9の(a)図に示すように、ハウジング50の表面には、各操作ボタン54A〜54Lのうち、十字ボタン(方向入力ボタン)54Aと、ボタン54B〜54Hとが設けられる。つまり、これらのボタン54A〜54Hは、ユーザの親指で操作可能な位置に配置されている(図10参照)。
【0120】
十字ボタン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を機能させることも可能である。
【0121】
また、図9の(a)図、(b)図、および(c)図に示すように、第1Lボタン54Iおよび第1Rボタン54Jは、ハウジング50の斜め上部分(左上部分および右上部分)に設けられる。具体的には、第1Lボタン54Iは、板状のハウジング50における上側の側面の左端に設けられ、上側および左側の側面から露出している。また、第1Rボタン54Jは、ハウジング50における上側の側面の右端に設けられ、上側および右側の側面から露出している。このように、第1Lボタン54Iは、ユーザの左手人差し指で操作可能な位置に配置され、第1Rボタン54Jは、ユーザの右手人差し指で操作可能な位置に配置される(図10参照)。
【0122】
また、図9の(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は、ユーザの右手中指で操作可能な位置に配置される(図10参照)。また、第2Lボタン54Kおよび第2Rボタン54Lは、図9の(c)図に示すように、上記足部59Aおよび59Bの斜め上方を向く面に設けられ、斜め上方を向くボタン面を有する。ユーザが端末装置7を把持した場合には中指は上下方向に動くと考えられるので、ボタン面を上方に向けることで、ユーザは第2Lボタン54Kおよび第2Rボタン54Lを押下しやすくなる。また、ハウジング50の裏面に足部が設けられることにより、ユーザはハウジング50を把持しやすくなり、かつ、足部にボタンが設けられることで、ハウジング50を把持したまま操作しやすくなる。
【0123】
なお、図9に示す端末装置7に関しては、第2Lボタン54Kおよび第2Rボタン54Lが裏面に設けられるので、LCD51の画面(ハウジング50の表面)が上を向いた状態で端末装置7を載置させる場合、画面が完全に水平にはならない場合がある。そのため、他の実施形態においては、ハウジング50の裏面に3つ以上の足部が形成されてもよい。これによれば、LCD51の画面が上を向いた状態では足部が床面に接することで床面に載置できるので、画面が水平になるように端末装置7を載置することができる。また、着脱可能な足部を追加することで端末装置7を水平に載置するようにしてもよい。
【0124】
各ボタン54A〜54Lには、ゲームプログラムに応じた機能が適宜割り当てられる。例えば、十字ボタン54Aおよびボタン54E〜54Hは方向指示操作や選択操作等に用いられてもよいし、各ボタン54B〜54Eは決定操作やキャンセル操作等に用いられてもよい。
【0125】
なお、図示しないが、端末装置7は、端末装置7の電源をオン/オフするための電源ボタンを有している。また、端末装置7は、LCD51の画面表示をオン/オフするためのボタンや、ゲーム装置3との接続設定(ペアリング)を行うためのボタンや、スピーカ(図11に示すスピーカ67)の音量を調節するためのボタンを有していてもよい。
【0126】
図9の(a)図に示すように、端末装置7は、マーカ55Aおよびマーカ55Bからなるマーカ部(図11に示すマーカ部55)をハウジング50の表面に備えている。マーカ部55は、LCD51の上側に設けられる。各マーカ55Aおよびマーカ55Bは、マーカ装置6の各マーカ6Rおよび6Lと同様、1以上の赤外LEDで構成される。マーカ部55は、上述のマーカ装置6と同様、コントローラ5(メインコントローラ8)の動き等をゲーム装置3が算出するために用いられる。また、ゲーム装置3はマーカ部55が備える各赤外LEDの点灯を制御することが可能である。
【0127】
端末装置7は、撮像手段であるカメラ56を備えている。カメラ56は、所定の解像度を有する撮像素子(例えば、CCDイメージセンサやCMOSイメージセンサ等)と、レンズとを含む。図9に示すように、本実施形態では、カメラ56はハウジング50の表面に設けられる。したがって、カメラ56は、端末装置7を持っているユーザの顔を撮像することができ、例えばLCD51を見ながらゲームを行っている時のユーザを撮像することができる。
【0128】
なお、端末装置7は、音声入力手段であるマイク(図11に示すマイク69)を備えている。ハウジング50の表面には、マイクロフォン用孔60が設けられる。マイク69はこのマイクロフォン用孔60の奥のハウジング50内部に設けられる。マイクは、ユーザの音声等、端末装置7の周囲の音を検出する。
【0129】
端末装置7は、音声出力手段であるスピーカ(図11に示すスピーカ67)を備えている。図9の(d)図に示すように、ハウジング50の下側側面にはスピーカ孔57が設けられる。スピーカ67の出力音はこのスピーカ孔57から出力される。本実施形態では、端末装置7は2つのスピーカを備えており、左スピーカおよび右スピーカのそれぞれの位置にスピーカ孔57が設けられる。
【0130】
また、端末装置7は、他の装置を端末装置7に接続するための拡張コネクタ58を備えている。本実施形態においては、図9の(d)図に示すように、拡張コネクタ58は、ハウジング50の下側側面に設けられる。なお、拡張コネクタ58に接続される他の装置はどのようなものであってもよく、例えば、特定のゲームに用いるコントローラ(銃型のコントローラ等)やキーボード等の入力装置であってもよい。他の装置を接続する必要がなければ、拡張コネクタ58は設けられていなくともよい。
【0131】
なお、図9に示した端末装置7に関して、各操作ボタンやハウジング50の形状や、各構成要素の数および設置位置等は単なる一例に過ぎず、他の形状、数、および設置位置であってもよい。
【0132】
次に、図11を参照して、端末装置7の内部構成について説明する。図11は、端末装置7の内部構成を示すブロック図である。図11に示すように、端末装置7は、図9に示した構成の他、タッチパネルコントローラ61、磁気センサ62、加速度センサ63、ジャイロセンサ64、ユーザインタフェースコントローラ(UIコントローラ)65、コーデックLSI66、スピーカ67、サウンドIC68、マイク69、無線モジュール70、アンテナ71、赤外線通信モジュール72、フラッシュメモリ73、電源IC74、および電池75を備える。これらの電子部品は、電子回路基板上に実装されてハウジング50内に収納される。
【0133】
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を装着することで充電を行うようにしてもよい。
【0134】
タッチパネルコントローラ61は、タッチパネル52に接続され、タッチパネル52の制御を行う回路である。タッチパネルコントローラ61は、タッチパネル52からの信号に基づいて所定の形式のタッチ位置データを生成してUIコントローラ65へ出力する。タッチ位置データは、タッチパネル52の入力面において入力が行われた位置の座標を表す。なお、タッチパネルコントローラ61は、タッチパネル52からの信号の読み込み、および、タッチ位置データの生成を所定時間に1回の割合で行う。また、UIコントローラ65からタッチパネルコントローラ61へは、タッチパネル52に対する各種の制御指示が出力される。
【0135】
アナログスティック53は、ユーザの指で操作されるスティック部がスライドした(または傾倒した)方向および量を表すスティックデータをUIコントローラ65へ出力する。また、操作ボタン54は、各操作ボタン54A〜54Lに対する入力状況(押下されたか否か)を表す操作ボタンデータをUIコントローラ65へ出力する。
【0136】
磁気センサ62は、磁界の大きさおよび方向を検知することで方位を検出する。検出された方位を示す方位データは、UIコントローラ65へ出力される。また、UIコントローラ65から磁気センサ62へは、磁気センサ62に対する制御指示が出力される。磁気センサ62に関しては、MI(磁気インピーダンス)素子、フラックスゲートセンサ、ホール素子、GMR(巨大磁気抵抗)素子、TMR(トンネル磁気抵抗)素子、あるいはAMR(異方性磁気抵抗)素子等を用いたセンサがあるが、方位を検出することができればどのようなものが用いられてもよい。なお、厳密には、地磁気以外に磁界が発生している場所においては、得られた方位データは方位を示さないことになるが、そのような場合であっても、端末装置7が動いた場合には方位データが変化するため、端末装置7の姿勢の変化を算出することができる。
【0137】
加速度センサ63は、ハウジング50の内部に設けられ、3軸(図9の(a)図に示すxyz軸)方向に沿った直線加速度の大きさを検出する。具体的には、加速度センサ63は、ハウジング50の長辺方向をx軸、ハウジング50の短辺方向をy軸、ハウジング50の表面に対して垂直な方向をz軸として、各軸の直線加速度の大きさを検出する。検出された加速度を表す加速度データはUIコントローラ65へ出力される。また、UIコントローラ65から加速度センサ63へは、加速度センサ63に対する制御指示が出力される。加速度センサ63は、本実施形態では例えば静電容量式のMEMS型加速度センサであるとするが、他の実施形態においては他の方式の加速度センサを用いるようにしてもよい。また、加速度センサ63は1軸または2軸方向を検出する加速度センサであってもよい。
【0138】
ジャイロセンサ64は、ハウジング50の内部に設けられ、上記x軸、y軸およびz軸の3軸周りの角速度を検出する。検出された角速度を表す角速度データは、UIコントローラ65へ出力される。また、UIコントローラ65からジャイロセンサ64へは、ジャイロセンサ64に対する制御指示が出力される。なお、3軸の角速度を検出するために用いられるジャイロセンサの数および組み合わせはどのようなものであってもよく、ジャイロセンサ64はジャイロセンサ48と同様、2軸ジャイロセンサと1軸ジャイロセンサとで構成されてもよい。また、ジャイロセンサ64は1軸または2軸方向を検出するジャイロセンサであってもよい。
【0139】
UIコントローラ65は、上記の各構成要素から受け取ったタッチ位置データ、スティックデータ、操作ボタンデータ、方位データ、加速度データ、および角速度データを含む操作データをコーデックLSI66に出力する。なお、拡張コネクタ58を介して端末装置7に他の装置が接続される場合には、当該他の装置に対する操作を表すデータが上記操作データにさらに含まれていてもよい。
【0140】
コーデックLSI66は、ゲーム装置3へ送信するデータに対する圧縮処理、および、ゲーム装置3から送信されたデータに対する伸張処理を行う回路である。コーデックLSI66には、LCD51、カメラ56、サウンドIC68、無線モジュール70、フラッシュメモリ73、および赤外線通信モジュール72が接続される。また、コーデックLSI66はCPU77と内部メモリ78を含む。端末装置7はゲーム処理自体を行なわない構成であるが、端末装置7の管理や通信のための最小限のプログラムを実行する必要がある。電源投入時にフラッシュメモリ73に格納されたプログラムを内部メモリ78に読み出してCPU77が実行することで、端末装置7が起動する。また、内部メモリ78の一部の領域はLCD51のためのVRAMとして使用される。
【0141】
カメラ56は、ゲーム装置3からの指示に従って画像を撮像し、撮像した画像データをコーデックLSI66へ出力する。また、コーデックLSI66からカメラ56へは、画像の撮像指示等、カメラ56に対する制御指示が出力される。なお、カメラ56は動画の撮影も可能である。すなわち、カメラ56は、繰り返し撮像を行って画像データをコーデックLSI66へ繰り返し出力することも可能である。
【0142】
サウンドIC68は、スピーカ67およびマイク69に接続され、スピーカ67およびマイク69への音声データの入出力を制御する回路である。すなわち、コーデックLSI66から音声データを受け取った場合、サウンドIC68は当該音声データに対してD/A変換を行って得られる音声信号をスピーカ67へ出力し、スピーカ67から音を出力させる。また、マイク69は、端末装置7に伝わる音(ユーザの音声等)を検知して、当該音を示す音声信号をサウンドIC68へ出力する。サウンドIC68は、マイク69からの音声信号に対してA/D変換を行い、所定の形式の音声データをコーデックLSI66へ出力する。
【0143】
コーデックLSI66は、カメラ56からの画像データ、マイク69からの音声データ、および、UIコントローラ65からの操作データを、端末操作データとして無線モジュール70を介してゲーム装置3へ送信する。本実施形態では、コーデックLSI66は、画像データおよび音声データに対して、コーデックLSI27と同様の圧縮処理を行う。上記端末操作データ、ならびに、圧縮された画像データおよび音声データは、送信データとして無線モジュール70に出力される。無線モジュール70にはアンテナ71が接続されており、無線モジュール70はアンテナ71を介してゲーム装置3へ上記送信データを送信する。無線モジュール70は、ゲーム装置3の端末通信モジュール28と同様の機能を有している。すなわち、無線モジュール70は、例えばIEEE802.11nの規格に準拠した方式により、無線LANに接続する機能を有する。送信されるデータは必要に応じて暗号化されていてもよいし、されていなくともよい。
【0144】
以上のように、端末装置7からゲーム装置3へ送信される送信データには、操作データ(端末操作データ)、画像データ、および音声データが含まれる。なお、拡張コネクタ58を介して端末装置7に他の装置が接続される場合には、当該他の装置から受け取ったデータが上記送信データにさらに含まれていてもよい。また、赤外線通信モジュール72は、他の装置との間で例えばIRDAの規格に従った赤外線通信を行う。コーデックLSI66は、赤外線通信によって受信したデータを、必要に応じて上記送信データに含めてゲーム装置3へ送信してもよい。
【0145】
また、上述のように、ゲーム装置3から端末装置7へは、圧縮された画像データおよび音声データが送信される。これらのデータはアンテナ71および無線モジュール70を介してコーデックLSI66に受信される。コーデックLSI66は、受信した画像データおよび音声データを伸張する。伸張された画像データはLCD51へ出力され、画像がLCD51に表示される。また、伸張された音声データはサウンドIC68へ出力され、サウンドIC68はスピーカ67から音を出力させる。
【0146】
また、ゲーム装置3から受信されるデータに制御データが含まれる場合、コーデックLSI66およびUIコントローラ65は、制御データに従った制御指示を各部に行う。上述のように、制御データは、端末装置7が備える各構成要素(本実施形態では、カメラ56、タッチパネルコントローラ61、マーカ部55、各センサ62〜64、および赤外線通信モジュール72)に対する制御指示を表すデータである。本実施形態では、制御データが表す制御指示としては、上記各構成要素を動作させたり、動作を休止(停止)させたりする指示が考えられる。すなわち、ゲームで使用しない構成要素については電力消費を抑えるために休止させてもよく、その場合、端末装置7からゲーム装置3へ送信される送信データには、休止した構成要素からのデータが含まれないようにする。なお、マーカ部55は赤外LEDであるので、制御は単に電力の供給のON/OFFでよい。
【0147】
以上のように、端末装置7は、タッチパネル52、アナログスティック53、および操作ボタン54といった操作手段を備えるが、他の実施形態においては、これらの操作手段に代えて、または、これらの操作手段とともに、他の操作手段を備える構成であってもよい。
【0148】
また、端末装置7は、端末装置7の動き(位置や姿勢、あるいは、位置や姿勢の変化を含む)を算出するためのセンサとして、磁気センサ62、加速度センサ63、およびジャイロセンサ64を備えるが、他の実施形態においては、これらのセンサのうち1つまたは2つのみを備える構成であってもよい。また、他の実施形態においては、これらのセンサに代えて、または、これらのセンサとともに、他のセンサを備える構成であってもよい。
【0149】
また、端末装置7は、カメラ56およびマイク69を備える構成であるが、他の実施形態においては、カメラ56およびマイク69を備えていなくてもよく、また、いずれか一方のみを備えていてもよい。
【0150】
また、端末装置7は、端末装置7とメインコントローラ8との位置関係(メインコントローラ8から見た端末装置7の位置および/または姿勢等)を算出するための構成としてマーカ部55を備える構成であるが、他の実施形態ではマーカ部55を備えていない構成としてもよい。また、他の実施形態では、端末装置7は、上記位置関係を算出するための構成として他の手段を備えていてもよい。例えば、他の実施形態においては、メインコントローラ8がマーカ部を備え、端末装置7が撮像素子を備える構成としてもよい。さらにこの場合、マーカ装置6は赤外LEDに代えて、撮像素子を備える構成としてもよい。
【0151】
[5.ゲーム処理の概要]
次に、本実施形態のゲームシステム1において実行されるゲーム処理の概要について説明する。本ゲーム処理によって実行されるゲームは、端末装置7と複数のコントローラ5とを操作装置として用いて、複数人のプレイヤが対戦する形式のゲームである。なお、本実施形態においては、ゲームシステム1が4つのコントローラ5を含み、4つのコントローラ5が用いられる場合について説明する。つまり、本実施形態においては、端末装置7を操作する1人のプレイヤと、4つのコントローラ5を1つずつ操作する4人のプレイヤとの合計5人のプレイヤによってゲームが行われる。なお、他の実施形態においては、コントローラ5の数はいくつであってもよい。
【0152】
(ゲームの概要)
本ゲーム処理によって実行されるゲームは、鬼ごっこのゲームである。すなわち、ゲームシステム1で実行されるゲームは、端末装置7を用いるプレイヤの操作対象であるオブジェクトが、コントローラ5を用いる各プレイヤの操作対象であるオブジェクトを捕まえるゲームである。以下では、コントローラ5を用いるプレイヤを「第1プレイヤ」と呼び、第1プレイヤの操作対象を「第1オブジェクト」と呼ぶ。また、端末装置7を用いるプレイヤを「第2プレイヤ」と呼び、第2プレイヤの操作対象を「第2オブジェクト」と呼ぶ。本ゲームでは、第2プレイヤは、第1オブジェクトを捕まえるように第2オブジェクトを移動させ、第1プレイヤは、第2オブジェクトから逃げるように第1オブジェクトを移動させて遊ぶ。
【0153】
図12は、本実施形態におけるテレビ用ゲーム画像の一例を示す図である。図12に示すように、テレビ2の画面は、コントローラ5の数(第1プレイヤの人数。ここでは4つ)に分割されてそれぞれにゲーム画像が表示される。分割された4つの領域90a〜90dには、4つの第1オブジェクト91a〜91dが1つずつ対応付けられており、各領域90a〜90dには、その領域に対応する第1オブジェクトを含むゲーム空間の画像が表示される。図12に示すように、本実施形態では、各領域90a〜90dには、その領域に対応する第1オブジェクトを後方から見たゲーム空間の画像が表示される。また、本実施形態においては、各領域90a〜90dに表示されるゲーム画像は、ゲーム空間に設定される仮想カメラを用いて生成される。以下では、テレビ用ゲーム画像を生成するために設定される仮想カメラを「第1仮想カメラ」と呼ぶ。本実施形態においては、4つの第1仮想カメラがゲーム空間に設定される。
【0154】
図13は、本実施形態における端末用ゲーム画像の一例を示す図である。図13に示すように、端末装置7の画面には、端末用ゲーム画像として、狭域画像95および広域画像96が表示される。狭域画像95は、ゲーム空間のうち、第2オブジェクトを基準とした所定範囲の領域を表す画像である。広域画像96は、狭域画像95よりも広い範囲の領域を表す画像である。本実施形態においては、広域画像96は、各オブジェクト(第1および第2オブジェクト)が移動可能な領域の全体を表すが、他の実施形態においては、当該領域の一部のみを表す画像であってもよい。また、図13に示すように、狭域画像95および広域画像96は共に、ゲーム空間を上から見た画像である。本実施形態においては、狭域画像95および広域画像96は、ゲーム空間に設定される仮想カメラを用いて生成される。以下では、狭域画像95を生成するために設定される仮想カメラを「第2仮想カメラ」と呼ぶ。本実施形態においては、端末用ゲーム画像を生成するための仮想カメラとして、狭域画像95を生成するための第2仮想カメラと、広域画像96を生成するための仮想カメラとの、合計2つの仮想カメラが用いられる。
【0155】
図14は、第1仮想カメラおよび第2仮想カメラの配置を示す図である。図14に示すように、第1仮想カメラ101は、対応する第1オブジェクト91(以下、4つの第1オブジェクトを特に区別しない場合、単に「第1オブジェクト91」と記載することがある。)を後方から見るように設定される。具体的には、第1仮想カメラ101の位置は、第1オブジェクト91の後方であって第1オブジェクト91よりもやや高い所定位置に設定される。なお、本実施形態においては、第1仮想カメラ101は、ゲーム空間の地面(フィールドオブジェクト)上に設置される壁や建物等の障害物オブジェクト103よりも低い位置に設定される。また、第1仮想カメラ101の姿勢は、第1オブジェクト91の方を向くように設定される。すなわち、第1仮想カメラ101の視線方向は、第1オブジェクト91の左右方向(ゲーム空間の鉛直方向を軸とした回転方向)に関しては第1オブジェクト91の向きと同じになり、かつ、水平方向よりもやや下方を向くように設定される。ただし、第1オブジェクト91の向きを急変化させる操作が可能な場合には、第1オブジェクト91の向きに合わせて第1仮想カメラ101の向きも急激に変わると、ゲーム画像の表示に対してユーザが違和感を抱く場合があるので、第1仮想カメラ101の向きは、第1オブジェクト91の向きに徐々に追従するようにした方が自然な表示を行うことができる。また、第1プレイヤの操作によって、第1オブジェクト91の向きを変化させずに第1仮想カメラ101の向きのみを変化させることができるようにしてもよい。なお、図14では、第1仮想カメラ101を1つのみ示しているが、4つの第1オブジェクトにそれぞれ対応する各第1仮想カメラが上記と同様に設定される。
【0156】
一方、狭域画像95を生成するための第2仮想カメラ102は、対応する第2オブジェクト92を真上から見た視線方向となるように設定される。具体的には、図14に示すように、第2仮想カメラ102は、第2オブジェクト92の真上の位置であって、第2オブジェクト92を向く姿勢(すなわち、鉛直下向き)となるように設定される。なお、本実施形態においては、第2仮想カメラ102は、上記障害物オブジェクト103よりもかなり高い位置に設定される。図14に示すように、第2仮想カメラ102の位置を高くするとともに画角を小さくすることで、障害物オブジェクト103による死角を小さくすることができる。なお、別の実施例においては、狭域画像95については正射影の仮想カメラを用いる(正射影変換によって狭域画像95を生成する)ようにしてもよい。また、広域画像96を生成するための仮想カメラは、各オブジェクト(第1および第2オブジェクト)が移動可能な領域の全体を視野範囲に含むように、位置および姿勢が固定されて設定される。
【0157】
以上のように、本実施形態においては、第2仮想カメラ102は、各オブジェクトが移動可能な所定平面(地面)に対する俯角が第1仮想カメラ101の俯角よりも大きくなるように設定される。また、第2仮想カメラ102は、上記所定平面に対する高さが第1仮想カメラ101よりも高くなるように設定される。これによれば、第1仮想カメラ101では障害物オブジェクト103が邪魔になって見えない領域を、第2仮想カメラ102では見ることができる(図14参照)。つまり、第1仮想カメラ101に基づくテレビ用ゲーム画像(図12)では、障害物オブジェクト103によって周囲に存在する他のオブジェクトが見えないのに対して、第2仮想カメラ102に基づく端末用ゲーム画像(図13)では、他のオブジェクトの位置を把握することができる。また、端末用ゲーム画像は、端末装置7を操作する第2プレイヤのみが見ることができるので、第2プレイヤのみが各オブジェクトの位置を把握することができる。
【0158】
ここで、本ゲームは、1人の第2プレイヤと、複数人(4人)の第1プレイヤとが対戦する一対多の形式であるので、第1プレイヤと第2プレイヤとの間で条件を全く同じにするとすれば第2プレイヤが不利になる。これに対して、本実施形態においては、第1プレイヤが見るゲーム画像の表示範囲と、第2プレイヤが見るゲーム画像の表示範囲とを異ならせることで、第2プレイヤが不利にならないようにしている。すなわち、各オブジェクトの位置が表示される端末用ゲーム画像は第2プレイヤしか見ることができないので、第2プレイヤのみが各オブジェクトの位置を把握することができる点で有利となる。第2プレイヤは、各オブジェクトの位置がわかることを活かして戦略的にゲーム操作を行うことで、一対多による不利を解消することができる。例えば、第2プレイヤは、障害物に隠れておき、第2オブジェクト92の位置を知らずに接近してきた第1オブジェクト91を捕まえる、といった戦略的なゲーム操作によって第1オブジェクト91を捕まえることができる。
【0159】
一方、各第1プレイヤは、個人では第2オブジェクトの位置を把握することが難しいものの、各第1プレイヤが協力することによって第2オブジェクトの位置を把握(推測)することができる。すなわち、第2オブジェクトを見つけた第1プレイヤが他の第1プレイヤに第2オブジェクトの位置を口頭で伝えたり、他の第1プレイヤが操作する第1オブジェクトが表示されるゲーム画像を見たりすることで、第1プレイヤも第2オブジェクトの位置を推測して把握することができる。例えば、図12に示す状況においては、第1オブジェクト91bを操作する第1プレイヤが第2オブジェクトの位置を他の第1プレイヤに伝えることによって、各第1プレイヤが第2オブジェクトの位置を推測するとよい。このように、本ゲームでは、各第1プレイヤにとっては、相互に的確に情報を伝え合うことができるかどうかがゲームを有利に進める上で重要になる。したがって、本ゲームは、単に第2オブジェクトから逃げるゲーム操作を行うだけのゲームに比べて、より戦略性が向上し、興趣性の高いゲームとなる。
【0160】
以上のように、本実施形態においては、表示範囲の異なる2種類のゲーム画像を生成するとともに、一方のゲーム画像(端末用ゲーム画像)を一部のプレイヤのみが見ることができる構成とした。これによって、複数人プレイのゲームの戦略性を高めることができ、興趣性の高いゲームを提供することができる。すなわち、端末装置7を操作する第2プレイヤは、端末用ゲーム画像によって自分のみが各オブジェクトの位置がわかることを活かして戦略的にゲームを行うことができる。また、各コントローラ5を操作する各第1プレイヤは、各人が情報を伝え合うことで第2オブジェクトの位置を推測することで戦略的にゲームを行うことができる。
【0161】
(位置指示画像の表示)
なお、本実施形態では、テレビ用ゲーム画像の各領域90a〜90dには、他の第1オブジェクトの位置を表す第1位置指示画像が表示されることがある。例えば図12では、領域90bに、3つの第1位置指示画像93a,93c,および93dが表示されている。第1位置指示画像は、画面上における第1オブジェクトの位置と、第1オブジェクトを識別する情報(例えばプレイヤ名、図12では、“A”,“C”,“D”と記載する)とを表す。ここで、本実施形態においては、第1位置指示画像は、第1仮想カメラの視野範囲に他の第1オブジェクトが含まれる場合に表示される。ここで、本明細書において、「仮想カメラの視野範囲にオブジェクトが含まれる」とは、仮想カメラの画角によって決められる範囲内に含まれることを意味し、仮想カメラと当該オブジェクトとの間に他のオブジェクト(障害物オブジェクト等)が存在するか否かは無関係である。つまり、第1仮想カメラから見て他の第1オブジェクトが障害物オブジェクトの向こう側に位置する場合であっても、第1仮想カメラの視野範囲内に他の第1オブジェクトが含まれる場合は、第1位置指示画像は表示される。
【0162】
上記第1位置指示画像によって、第1プレイヤは、自己の操作対象以外の他の第1オブジェクト(仲間)の位置を知ることができ、第1仮想カメラの位置からは見えない位置に他の第1オブジェクトが存在する場合であっても、大まかな位置を知ることができる。これによれば、第1プレイヤは、第2オブジェクトに関する情報を他の第1プレイヤに対してより的確に伝えることができる。例えば、図12に示す状況においては、第1オブジェクト91bを操作する第1プレイヤは、第1位置指示画像93aが表す第1オブジェクト91aを操作する第1プレイヤに対して、近くに第2オブジェクト92が存在することを教えるとよい。また、第1位置指示画像93cおよび93dが表す第1オブジェクト91cおよび91dを操作する第1プレイヤに対しては、第2オブジェクト92の大まかな位置を伝え、その位置から離れる方向に逃げるように促せばよい。このように、第1位置指示画像によって、第1プレイヤは、第1オブジェクトの位置に応じた適切な指示を他の第1プレイヤ毎に個別に伝えることができるので、ゲームの戦略性がさらに向上される。
【0163】
なお、テレビ用ゲーム画像の各領域90a〜90dには、第2オブジェクト92の位置を表す第2位置指示画像が表示されることもある。例えば図12では、領域90bに第2位置指示画像93eが表示されている。第2位置指示画像は、画面上における第2オブジェクト92の位置と、第2オブジェクト92を識別する情報(例えばプレイヤ名、図12では、“E”と記載する)を表す。第2位置指示画像は、第2オブジェクト92が画面に表示される場合に表示される。つまり、第1仮想カメラから見て第2オブジェクト92が障害物オブジェクトの向こう側に位置する場合には、第2位置指示画像は表示されない。例えば、図12に示す領域90aでは、第2オブジェクト92が第1仮想カメラの視野範囲に入っているものの、壁の向こう側に位置しているので、第2位置指示画像は表示されない。このように、本実施形態においては、第2オブジェクト92が実際に表示される場合にのみ第2位置指示画像を表示することで、第1プレイヤが第2オブジェクト92の位置を容易に知ることを防止し、第2プレイヤが不利になりすぎることを防止している。
【0164】
なお、図12に示すように、テレビ用ゲーム画像の各領域90a〜90dには、方位画像94a〜94dが表示される。方位画像94a〜94dは、ゲーム空間内における方位(ゲーム空間における所定の方向)を示す。したがって、方位画像94a〜94dによって、第1プレイヤは、操作対象となる第1オブジェクト91や第1仮想カメラ101がどちらを向いているか、あるいは、どちらに移動しているかを知ることができる。本実施形態においては、第1プレイヤは、ゲーム空間の全体構成を見ることができないが、方位画像94a〜94dによって、ゲーム空間の構成を大まかに把握・推測することができる。
【0165】
(方向指示画像の表示)
また、図13に示すように、端末用ゲーム画像の狭域画像95には、各第1オブジェクトの位置に、各第1仮想カメラの視線方向を示す第1方向指示画像97a〜97dが表示され、第2オブジェクトの位置に、第2オブジェクトの向きを示す第2方向指示画像98が表示される。各方向指示画像97a〜97d,98は、仮想カメラやオブジェクトの位置および方向を示す画像である。また、第1方向指示画像97a〜97dは、相手の仮想カメラの視線方向を示すことによって、第2オブジェクトが相手(第1プレイヤ)から見つからないように第2プレイヤが操作を行うためのものである。なお、第1方向指示画像97a〜97dには、各第1オブジェクトを識別するための画像(例えばプレイヤ名を表す文字情報)が付されている。また、本実施形態においては、広域画像96にも、狭域画像95と同様に各方向指示画像が表示される。
【0166】
ここで、端末側ゲーム画像は、ゲーム空間を真上から見たゲーム画像であるので、各オブジェクトの位置が表示される一方、各オブジェクトが小さく表示されるために、各オブジェクトの位置や向きが分かりにくくなるおそれがある。これに対して、本実施形態によれば、上記方向指示画像を表示することによって、各オブジェクトの位置および向きを分かりやすく表現することができる。
【0167】
(拡大画像の表示)
さらに、本実施形態においては、第2オブジェクト92が第1オブジェクト91に近づき、両者の距離が所定距離以内となった場合、狭域画像95が拡大された拡大画像が表示される。図15は、拡大画像の一例を示す図である。図15に示すように、拡大画像は、狭域画像95よりも拡大された、第2オブジェクト92の周囲のゲーム空間を表すゲーム画像である。なお、図15では広域画像96は表示されないが、他の実施形態においては表示されてもよい。
【0168】
上記狭域画像95および広域画像96は、ゲーム空間の広い範囲の様子が表示され、各オブジェクトの位置を表すものの、各オブジェクトが小さく表示される。そのため、狭域画像95および広域画像96を見てゲームを行う第2プレイヤは、第2オブジェクト92の詳細な動きを制御することが難しくなるおそれがある。また、第2プレイヤにとっては、画面に小さく表示されたマーク(方向指示画像)を操作しているだけの感覚になり、ゲームの迫力や臨場感に欠けるおそれがある。そこで、本実施形態においては、第1オブジェクト91と第2オブジェクト92との距離が所定距離以内となった場合には、ゲーム装置3は端末用ゲーム画像を拡大して表示する。これによって、端末装置7にゲーム空間がより詳細に表示されるので、第2プレイヤにとってはゲーム操作が行いやすくなるとともに、迫力のあるゲーム画像を表示することができる。
【0169】
なお、上記拡大画像が表示される条件は上記に限らない。例えば、他の実施形態においては、ゲーム装置3は、第2プレイヤが所定の操作を行ったことを条件として拡大画像を表示してもよいし、第2オブジェクト92が第1オブジェクト91の視界に入った(テレビ用ゲーム画像に第2オブジェクト92が含まれた)ことを条件として拡大画像を表示してもよい。また、他の実施形態においては、拡大画像は表示されなくてもよい。
【0170】
[6.ゲーム処理の詳細]
次に、本ゲームシステムにおいて実行されるゲーム処理の詳細を説明する。まず、ゲーム処理において用いられる各種データについて説明する。図16は、ゲーム処理において用いられる各種データを示す図である。図16において、ゲーム装置3のメインメモリ(外部メインメモリ12または内部メインメモリ11e)に記憶される主なデータを示す図である。図16に示すように、ゲーム装置3のメインメモリには、ゲームプログラム110、コントローラ操作データ111、端末操作データ119、および処理用データ126が記憶される。なお、メインメモリには、図16に示すデータの他、ゲームに登場する各種オブジェクトの画像データやゲームに使用される音声データ等、ゲームに必要なデータが記憶される。
【0171】
ゲームプログラム110は、ゲーム装置3に電源が投入された後の適宜のタイミングで光ディスク4からその一部または全部が読み込まれてメインメモリに記憶される。なお、ゲームプログラム110は、光ディスク4に代えて、フラッシュメモリ17やゲーム装置3の外部装置から(例えばインターネットを介して)取得されてもよい。また、ゲームプログラム110に含まれる一部(例えば、コントローラ5および/または端末装置7の姿勢を算出するためのプログラム)については、ゲーム装置3内に予め記憶されていてもよい。
【0172】
コントローラ操作データ111は、コントローラ5に対するユーザ(プレイヤ)の操作を表すデータである。コントローラ操作データ111は、コントローラ5から送信されてゲーム装置3において取得され、メインメモリに記憶される。コントローラ操作データ111は、第1操作ボタンデータ112、第1加速度データ113、第1角速度データ114、マーカ座標データ115、サブスティックデータ116、サブ操作ボタンデータ117、および、サブ加速度データ118を含む。なお、メインメモリには、最新の(最後に取得された)ものから順に所定個数のコントローラ操作データが記憶されてもよい。
【0173】
第1操作ボタンデータ112は、コントローラ5に設けられる各操作ボタン32a〜32iに対する入力状態を表すデータである。具体的には、第1操作ボタンデータ112は、各操作ボタン32a〜32iが押下されているか否かを表す。
【0174】
第1加速度データ113は、コントローラ5の加速度センサ37によって検出された加速度(加速度ベクトル)を表すデータである。ここでは、第1加速度データ113は、図3に示すXYZの3軸の方向に関する加速度を各成分とする3次元の加速度を表すものであるが、他の実施形態においては、任意の1以上の方向に関する加速度を表すものであってもよい。
【0175】
第1角速度データ114は、コントローラ5におけるジャイロセンサ48によって検出された角速度を表すデータである。ここでは、第1角速度データ114は、図3に示すXYZの3軸回りのそれぞれの角速度を表すものであるが、他の実施形態においては、任意の1軸以上の軸回り角速度を表すものであればよい。
【0176】
マーカ座標データ115、撮像情報演算部35の画像処理回路41によって算出される座標、すなわち上記マーカ座標を表すデータである。マーカ座標は、撮像画像に対応する平面上の位置を表すための2次元座標系で表現され、マーカ座標データ115は、当該2次元座標系における座標値を表す。
【0177】
サブスティックデータ116は、上記サブコントローラ9のアナログジョイスティック81に対する操作を表すデータである。具体的には、サブスティックデータ116は、アナログスティック81に対する傾倒方向および傾倒量を表す。
【0178】
サブ操作ボタンデータ117は、上記サブコントローラ9に設けられる各操作ボタンに対する入力状態を表すデータである。具体的には、サブ操作ボタンデータ117は、各操作ボタンが押下されているか否かを表す。
【0179】
サブ加速度データ118は、サブコントローラ9の加速度センサ83によって検出された加速度(加速度ベクトル)を表すデータである。ここでは、サブ加速度データ118は、図7に示すx’y’z’の3軸の方向に関する加速度を各成分とする3次元の加速度を表すものであるが、他の実施形態においては、任意の1以上の方向に関する加速度を表すものであってもよい。
【0180】
なお、コントローラ操作データ111は、コントローラ5を操作するユーザの操作を表すものであればよく、上記各データ112〜118の一部のみを含むものであってもよい。また、コントローラ5が他の入力手段(例えば、タッチパネルやアナログスティック等)を有する場合には、コントローラ操作データ111は、当該他の入力手段に対する操作を表すデータを含んでいてもよい。なお、本実施形態のようにコントローラ5自体の動きをゲーム操作として用いる場合には、コントローラ操作データ111は、第1加速度データ113、第1角速度データ114、マーカ座標データ115、またはサブ加速度データ118のように、コントローラ5自体の動きに応じて値が変化するデータを含むようにする。
【0181】
端末操作データ119は、端末装置7に対するユーザの操作を表すデータである。端末操作データ119は、端末装置7から送信されてゲーム装置3において取得され、メインメモリに記憶される。端末操作データ119は、第2操作ボタンデータ120、スティックデータ121、タッチ位置データ122、第2加速度データ123、第2角速度データ124、および方位データ125を含む。端末操作データ119は、図16に示す各データの他、カメラ56によって撮像された画像のデータや、マイク69によって検出された音声データを含んでいてもよい。なお、メインメモリには、最新の(最後に取得された)ものから順に所定個数の端末操作データが記憶されてもよい。
【0182】
第2操作ボタンデータ120は、端末装置7に設けられる各操作ボタン54A〜54Lに対する入力状態を表すデータである。具体的には、第2操作ボタンデータ120は、各操作ボタン54A〜54Lが押下されているか否かを表す。
【0183】
スティックデータ121は、アナログスティック53(アナログスティック53Aおよび53B)のスティック部がスライドした(または傾倒した)方向および量を表すデータである。上記方向および量は、例えば2次元座標や2次元ベクトルとして表されてもよい。
【0184】
タッチ位置データ122は、タッチパネル52の入力面において入力が行われた位置(タッチ位置)を表すデータである。本実施形態では、タッチ位置データ122は、上記入力面上の位置を示すための2次元座標系の座標値を表す。なお、タッチパネル52がマルチタッチ方式である場合には、タッチ位置データ122は複数のタッチ位置を表すこともある。
【0185】
第2加速度データ123は、加速度センサ63によって検出された加速度(加速度ベクトル)を表すデータである。本実施形態では、第2加速度データ123は、図8に示すxyzの3軸の方向に関する加速度を各成分とする3次元の加速度を表すものであるが、他の実施形態においては、任意の1以上の方向に関する加速度を表すものであればよい。
【0186】
第2角速度データ124は、ジャイロセンサ64によって検出された角速度を表すデータである。本実施形態では、第2角速度データ124は、図8に示すxyzの3軸回りのそれぞれの角速度を表すものであるが、他の実施形態においては、任意の1軸以上の軸回り角速度を表すものであればよい。
【0187】
方位データ125は、磁気センサ62によって検出された方位を表すデータである。本実施形態では、方位データ125は、端末装置7を基準として所定の方位(例えば北)の向きを表す。なお、地磁気以外の磁界が発生している場所においては、方位データ125は厳密には絶対的な方位(北等)を示さないことになる。ただし、その場所における磁界の方向に対する端末装置7の相対的な方向が方位データ125によって示されるので、そのような場合であっても方位データ125に基づいて端末装置7の姿勢または姿勢の変化を算出することが可能である。
【0188】
なお、端末操作データ119は、端末装置7を操作するユーザの操作を表すものであればよく、上記各データ117〜122のいずれか1つのみを含むものであってもよい。また、端末装置7が他の入力手段(例えば、タッチパッドや、コントローラ5の撮像手段等)を有する場合には、端末操作データ119は、当該他の入力手段に対する操作を表すデータを含んでいてもよい。なお、本実施形態のように端末装置7自体の動きをゲーム操作として用いる場合には、端末操作データ119は、第2加速度データ123、第2角速度データ124、または方位データ125のように、端末装置7自体の動きに応じて値が変化するデータを含むようにする。
【0189】
処理用データ126は、後述するゲーム処理(図17)において用いられるデータである。処理用データ126は、第1オブジェクトデータ127、第2オブジェクトデータ128、第1カメラデータ129、および、第2カメラデータ130を含む。なお、図16に示すデータの他、処理用データ126は、ゲームに登場する各種オブジェクトに設定される各種パラメータを表すデータ等、ゲーム処理において用いられる各種データを含む。
【0190】
第1オブジェクトデータ127は、ゲーム空間における上記第1オブジェクトの位置および向きを表す。本実施形態においては、4つの第1オブジェクトが登場するので、第1オブジェクト毎に第1オブジェクトデータ127がメインメモリに記憶される。また、第2オブジェクトデータ128は、ゲーム空間における上記第2オブジェクトの位置および向きを表す。
【0191】
第1カメラデータ129は、ゲーム空間に設定される上記第1仮想カメラの位置および姿勢を表す。本実施形態においては、4つの第1仮想カメラが設定されるので、第1仮想カメラ毎に第1カメラデータ129がメインメモリに記憶される。また、第2カメラデータ130は、ゲーム空間に設定される上記第2仮想カメラの位置および姿勢を表す。
【0192】
次に、ゲーム装置3において実行されるゲーム処理の詳細を、図17〜図20を用いて説明する。図17は、ゲーム装置3において実行されるゲーム処理の流れを示すメインフローチャートである。ゲーム装置3の電源が投入されると、ゲーム装置3のCPU10は、図示しないブートROMに記憶されている起動プログラムを実行し、これによってメインメモリ等の各ユニットが初期化される。そして、光ディスク4に記憶されたゲームプログラムがメインメモリに読み込まれ、CPU10によって当該ゲームプログラムの実行が開始される。図17に示すフローチャートは、以上の処理が完了した後に行われる処理を示すフローチャートである。なお、ゲーム装置3においては、電源投入後にゲームプログラムがすぐに実行される構成であってもよいし、電源投入後にまず所定のメニュー画面を表示する内蔵プログラムが実行され、その後ユーザによってゲームの開始が指示されたことに応じてゲームプログラムが実行される構成であってもよい。
【0193】
なお、図17〜図20に示すフローチャートの各ステップの処理は、単なる一例に過ぎず、同様の結果が得られるのであれば、各ステップの処理順序を入れ替えてもよい。また、変数の値や、判断ステップで利用される閾値も、単なる一例に過ぎず、必要に応じて他の値を採用してもよい。また、本実施形態では、上記フローチャートの各ステップの処理をCPU10が実行するものとして説明するが、上記フローチャートの一部のステップの処理を、CPU10以外のプロセッサや専用回路が実行するようにしてもよい。
【0194】
まずステップS1において、CPU10は初期処理を実行する。初期処理は、仮想のゲーム空間を構築し、ゲーム空間に登場する各オブジェクトを初期位置に配置したり、ゲーム処理で用いる各種パラメータの初期値を設定したりする処理である。なお、本実施形態においては、各オブジェクト91および92が所定の位置および所定の向きに配置される。すなわち、第1オブジェクト91の位置および向きを表すデータが第1オブジェクトデータ127としてメインメモリに記憶され、第2オブジェクト92の位置および向きを表すデータが第2オブジェクトデータ128としてメインメモリに記憶される。また、各オブジェクト91および92の位置および向きに応じた初期位置および初期姿勢で各仮想カメラ(第1および第2仮想カメラ)101および102がそれぞれ設定される。各第1仮想カメラ101の初期位置および初期姿勢を表すデータは、第1カメラデータ129としてメインメモリに記憶され、第2仮想カメラ102の初期位置および初期姿勢を表すデータは、第2カメラデータ130としてメインメモリに記憶される。ステップS1の次にステップS2の処理が実行される。以降、ステップS2〜S9の一連の処理からなる処理ループが所定時間(1フレーム時間。例えば1/60秒)に1回の割合で繰り返し実行される。
【0195】
ステップS2において、CPU10は、4つのコントローラ5から送信されてくるコントローラ操作データをそれぞれ取得する。各コントローラ5はコントローラ操作データをゲーム装置3へ繰り返し送信するので、ゲーム装置3においては、コントローラ通信モジュール19が各コントローラ操作データを逐次受信し、受信された各コントローラ操作データが入出力プロセッサ11aによってメインメモリに逐次記憶される。コントローラ5とゲーム装置3との間における送受信の間隔はゲームの処理時間よりも短い方が好ましく、例えば200分の1秒である。ステップS2においては、CPU10は、最新のコントローラ操作データ111をメインメモリから読み出す。ステップS2の次にステップS3の処理が実行される。
【0196】
ステップS3において、CPU10は、端末装置7から送信されてくる端末操作データを取得する。端末装置7は、端末操作データをゲーム装置3へ繰り返し送信するので、ゲーム装置3は端末操作データを逐次受信する。ゲーム装置3においては、端末通信モジュール28が端末操作データを逐次受信し、入出力プロセッサ11aが端末操作データをメインメモリに逐次記憶する。ステップS3においては、CPU10は、最新の端末操作データ119をメインメモリから読み出す。ステップS3の次にステップS4の処理が実行される。
【0197】
ステップS4において、CPU10はゲーム制御処理を実行する。ゲーム制御処理は、プレイヤによるゲーム操作に従ってゲーム空間内のオブジェクトを動作させる処理等を実行し、ゲームを進行させる処理である。具体的には、本実施形態におけるゲーム制御処理においては、各オブジェクト91および92の移動を制御する処理、および、各仮想カメラ101および102を制御する処理等が実行される。以下、図18を参照して、ゲーム制御処理の詳細について説明する。
【0198】
図18は、図17に示すゲーム制御処理(ステップS4)の詳細な流れを示すフローチャートである。ゲーム制御処理においてはまずステップS11において、CPU10は、各第1オブジェクト91のうち1つを選択する。ここで選択される第1オブジェクト91は、ステップS11〜S14の処理ループにおいてまだ選択されていない第1オブジェクト91である。ステップS11の次にステップS12の処理が実行される。
【0199】
ステップS12において、CPU10は、ステップS11で選択された第1オブジェクト91の移動を制御する。第1オブジェクト91の移動は、コントローラ操作データ111に基づいて制御されればどのように制御されてもよい。本実施形態においては、CPU10は、例えば、サブコントローラ9のアナログスティック81に対する方向入力に応じて第1オブジェクト91の移動後の位置を算出する。すなわち、第1オブジェクト91は、アナログスティック81の操作量(傾倒量)に応じた移動量だけ、操作方向(傾倒方向)に応じた方向へ移動される。ステップS12の具体的な処理としては、CPU10は、第1オブジェクト91の移動前の位置および向きを表す第1オブジェクトデータ127をメインメモリから読み出し、当該移動前と位置および向きと、ステップS2で読み出したサブスティックデータ116とに基づいて移動後の位置および向きを算出する。そして、算出された移動後の位置および向きを表すデータを新たな第1オブジェクトデータ127としてメインメモリに記憶する。ステップS12の次に、ステップS13の処理が実行される。
【0200】
ステップS13において、CPU10は、ステップS12で移動された第1オブジェクト91の位置および向きに基づいて、当該第1オブジェクト91に対応する第1仮想カメラ101を設定する。本実施形態においては、第1仮想カメラ101は、対応する第1オブジェクト91が、当該第1仮想カメラ101によって生成されるゲーム画像に含まれるように設定される。具体的には、第1仮想カメラ101は、第1オブジェクト91の後方であって第1オブジェクト91よりもやや高い所定位置に設定され、第1オブジェクト91の方を向く姿勢に設定される(図14参照)。なお、他の実施形態においては、第1仮想カメラ101は、第1オブジェクト91の位置に設定されてもよい。このとき、ゲーム画像はいわゆる一人称視点のゲーム画像となる。ステップS13の具体的な処理としては、CPU10は、第1オブジェクトデータ127をメインメモリから読み出し、第1オブジェクトデータ127に基づいて第1仮想カメラ101の位置および向きを算出する。そして、算出された位置および向きを表すデータを第1カメラデータ129としてメインメモリに記憶する。ステップS13の次にステップS14の処理が実行される。
【0201】
なお、上記ステップS13においては、第1仮想カメラ101は、第1オブジェクト91の位置および向きに基づいて制御された。ここで、第1仮想カメラ101は第1オブジェクト91に対応するように設定されことが好ましく、第1オブジェクト91の移動に応じて移動するように制御されることが好ましい。例えば、他の実施形態においては、第1仮想カメラ101は、第1オブジェクト91の位置に加えてコントローラ操作データ111に基づいて制御されてもよい。具体的には、CPU10は、メインコントローラ8の十字ボタン32aに対する方向入力に応じて第1仮想カメラ101の向きを変化させてもよい。このとき、CPU10は、第1オブジェクト91の位置を中心とした球面上において第1仮想カメラ101を移動させるとともに、当該中心を向くように第1仮想カメラ101の姿勢を制御してもよい。これによれば、第1プレイヤは、十字ボタン32aを用いて第1オブジェクト91の周りを見渡すように第1仮想カメラ101を移動させることができる。また、他の実施形態においては、CPU10は、所定のボタン(例えば、サブコントローラ9のZボタン)が押下されていない場合にのみ、上記ステップS12およびS13の方法で第1オブジェクト91および第1仮想カメラ101を制御してもよい。そして、上記所定のボタンが押下されている場合には、第1オブジェクト91を移動させず、アナログスティック81に対する方向入力に応じて第1仮想カメラ101の位置および向きを変化させるようにしてもよい。
【0202】
ステップS14において、CPU10は、各第1オブジェクト91に対する移動制御が終了したか否か、すなわち、上記ステップS11において全ての第1オブジェクト91を選択したか否かを判定する。ステップS14の判定結果が肯定である場合、ステップS15の処理が実行される。一方、ステップS14の判定結果が否定である場合、ステップS11の処理が再度実行される。したがって、上記ステップS11〜S14の処理は各第1オブジェクト91に対して実行され、これによって各第1オブジェクト91が移動される。
【0203】
ステップS15において、CPU10は第2オブジェクト92の移動を制御する。第2オブジェクト92の移動は、端末操作データ119に基づいて制御されればどのように制御されてもよい。本実施形態においては、CPU10は、例えば、端末装置7の左アナログスティック53Aに対する方向入力に応じて第2オブジェクト92の移動後の位置を算出する。すなわち、第2オブジェクト92は、左アナログスティック53Aの操作量に応じた移動量だけ、操作方向に応じた方向へ移動される。また、本実施形態においては、第2オブジェクト92の移動速度は、各第1オブジェクト91の移動速度と同じであるとする。これによれば、第2オブジェクト92は第1オブジェクト91を単に追いかけるだけでは捕まえられず、障害物オブジェクトに隠れて待ち伏せする等、戦略的にゲームを進める必要が生じるので、ゲームの興趣性を高めることができる。なお、他の実施形態においては、所定の条件が満たされたことに応じて(例えば、ゲーム空間に配置される所定のアイテムを取得したことに応じて)各オブジェクトの移動速度が変化するようにしてもよい。
【0204】
上記ステップS15の具体的な処理としては、CPU10は、第2オブジェクト92の移動前の位置および向きを表す第2オブジェクトデータ128をメインメモリから読み出し、当該移動前の位置および向きと、ステップS3で読み出したスティックデータ121とに基づいて移動後の位置および向きを算出する。そして、算出された移動後の位置および向きを表すデータを新たな第2オブジェクトデータ128としてメインメモリに記憶する。ステップS15の次に、ステップS16の処理が実行される。
【0205】
なお、本実施形態においては、第2オブジェクト92は、少なくとも上下左右の4方向の入力が可能な方向入力部(アナログスティック53)に対する方向入力に応じての移動が制御された。ここで、他の実施形態においては、第2オブジェクト92は、タッチパネル52に対する入力に基づいて移動が制御されてもよい。例えば、上記ステップS15においてCPU10は、タッチ位置データ122をメインメモリから読み出し、タッチ位置に対応するゲーム空間内の位置に向かって第2オブジェクト92を移動させるようにしてもよい。上記の他、第2オブジェクト92は、端末装置7に対する操作に基づいて制御されればどのように制御されてもよい。
【0206】
ステップS16において、CPU10は、第2オブジェクト92の近くに第1オブジェクト91が存在するか否かを判定する。具体的には、CPU10は、各オブジェクトデータ127および128をメインメモリから読み出し、各第1オブジェクトのうちに、第2オブジェクト92からの距離が所定距離内となる第1オブジェクトが存在するか否かを判定する。ステップS16の判定結果が否定である場合、ステップS17の処理が実行される。一方、ステップS16の判定結果が肯定である場合、ステップS18の処理が実行される。
【0207】
ステップS17において、CPU10は、第2オブジェクト92の位置に基づいて、大きい画角で第2仮想カメラ102を設定する。本実施形態においては、第2仮想カメラ102は、第2オブジェクト92の位置に応じた位置に、所定の姿勢となるように設定される。具体的には、第2仮想カメラ102は、第2オブジェクト92の真上の位置であって、第2オブジェクト92を向く姿勢となるように設定される(図14参照)。なお、ステップS17では、第2仮想カメラ102の画角は、後述するステップS18の場合と比べて相対的に大きい画角となるように設定される。ステップS17の具体的な処理としては、CPU10は、第2オブジェクトデータ128をメインメモリから読み出し、第2オブジェクトデータ128に基づいて第2仮想カメラ102の位置を算出する。そして、算出された位置および上記所定の姿勢を表すデータを第2カメラデータ130としてメインメモリに記憶する。ステップS17の次にステップS19の処理が実行される。
【0208】
なお、上記ステップS17において、第2仮想カメラ102は、第2オブジェクト92が視野範囲に含まれるように設定されることが好ましいが、第2オブジェクト92の移動に応じて必ずしも移動される必要はない。例えば他の実施形態においては、第2仮想カメラ102は、広域画像96を生成するための仮想カメラのように、各オブジェクトが移動可能なゲーム空間の全体を視野範囲に含むように固定的に設定されてもよい。なお、このとき、上記広域画像は生成・表示されなくてもよい。
【0209】
ステップS18において、CPU10は、第2オブジェクト92の位置に基づいて、小さい画角で第2仮想カメラ102を設定する。ここで、ステップS18において設定される第2仮想カメラの102の位置および姿勢は、上記ステップS17と同じである。ただし、ステップS18では、第2仮想カメラ102の画角は、上記ステップS17の場合と比べて相対的に小さい画角となるように設定される。これによって、ステップS18の処理によれば、第2仮想カメラ102を用いて生成されるゲーム画像は、ステップS17の処理が実行される場合よりも拡大されることになり、上述した拡大画像(図15)が生成されることとなる。ステップS18の次にステップS19の処理が実行される。
【0210】
なお、上記ステップS18においては、第2仮想カメラの102の画角をステップS17の場合よりも小さくするようにしたが、拡大画像を生成することができれば第2仮想カメラ102はどのように設定されてもよい。例えば他の実施形態においては、CPU10は、第2仮想カメラ102の高さをステップS17の場合よりも低く設定するようにしてもよい。
【0211】
ステップS19において、CPU10は、第1オブジェクト91のいずれかが第2オブジェクト92に捕まったか否かを判定する。すなわち、CPU10は、第1オブジェクトデータ127および第2オブジェクトデータ128をメインメモリから読み出し、各第1オブジェクト91と第2オブジェクト92とが接触したか否かを判定する。別の実施例において、第2オブジェクトが第1オブジェクトから逃げるゲームの場合は、接触した場合に第2オブジェクトが捕まったということになる。ステップS19の判定結果が肯定である場合、ステップS20の処理が実行される。一方、ステップS19の判定結果が否定である場合、ステップS20の処理がスキップされてステップS21の処理が再度実行される。
【0212】
ステップS20において、CPU10は所定の捕捉処理を実行する。捕捉処理は、第2オブジェクト92が第1オブジェクト91を捕まえた場合に実行する処理であり、所定のゲーム効果を発生させる処理である。捕捉処理は、例えば、捕まった第1オブジェクト91をゲーム空間から消滅させたり、体力パラメータを減少させたりする処理や、第2オブジェクト92に得点を付与する処理等である。なお、補足処理の内容は、ゲーム上の効果を与える(すなわち、ゲーム処理において用いられる各種パラメータの値を変更する)処理であればどのようなものであってもよい。ステップS20の次にステップS21の処理が実行される。
【0213】
ステップS21において、CPU10は、その他のゲーム進行処理を行う。その他のゲーム進行処理とは、上記ステップS11〜S20の処理以外にステップS4のゲーム制御処理において実行される処理である。上記その他のゲーム進行処理としては、例えば、プレイヤによって操作されるオブジェクト以外のオブジェクトの動作を制御する処理や、ゲーム空間に設置されるアイテムに関する処理や、制限時間をカウントする処理等が考えられる。上記の処理の他、ステップS21においてはゲームの進行に必要な処理が適宜実行される。上記ステップS21の後、CPU10はゲーム制御処理を終了する。
【0214】
図17の説明に戻り、ステップS4のゲーム制御処理の次にステップS5の処理が実行される。ステップS5においては、テレビ用ゲーム画像の生成処理が実行される。テレビ用ゲーム画像の生成処理においては、各第1オブジェクト91の後方の所定位置から見たゲーム空間を表す画像が生成される。以下、図19を参照して、テレビ用ゲーム画像の生成処理の詳細について説明する。
【0215】
図19は、図17に示すテレビ用ゲーム画像の生成処理(ステップS5)の詳細な流れを示すフローチャートである。テレビ用ゲーム画像の生成処理においてはまずステップS31において、CPU10は、4つの第1仮想カメラ101のうち1つを選択する。ここで選択される第1仮想カメラ101は、ステップS31〜S38の処理ループにおいてまだ選択されていない第1仮想カメラ101である。以下のステップS32〜S37においては、ステップS31で選択された第1仮想カメラ101を用いて処理が実行される。ステップS31の次にステップS32の処理が実行される。
【0216】
ステップS32においては、第1仮想カメラ101から見たゲーム空間を表す画像がCPU10およびGPU11bによって生成される。すなわち、CPU10およびGPU11bは、ステップS4のゲーム制御処理の結果を表すデータをメインメモリから読み出し、また、ゲーム画像を生成するために必要なデータをVRAM11dから読み出し、ゲーム画像を生成する。生成されたゲーム画像はVRAM11dに記憶される。なお、上記「ゲーム制御処理の結果を表すデータ」には、各オブジェクトデータ127および第1カメラデータ129が含まれる。上記ステップS32の次にステップS33の処理が実行される。
【0217】
ステップS33において、CPU10は、第1仮想カメラ101の視野範囲内に、他の第1オブジェクトが存在するか否かを判定する。ここで「他の第1オブジェクト」とは、ステップS31で選択された第1仮想カメラ101に対応する第1オブジェクト以外の第1オブジェクトである。具体的には、CPU10は、第1オブジェクトデータ127および第1カメラデータ129をメインメモリから読み出し、上記他の第1オブジェクトの位置が第1仮想カメラ101の視野範囲内に含まれるか否かを判定する。なお、上述したように、ステップS32で生成されたゲーム画像に他の第1オブジェクトが含まれない場合であっても、当該他の第1オブジェクトが視野範囲内に含まれる場合がある。ステップS33の判定結果が肯定である場合、ステップS34の処理が実行される。一方、ステップS33の判定結果が否定である場合、ステップS34の処理がスキップされてステップS35の処理が実行される。
【0218】
ステップS34において、CPU10およびGPU11bは、第1仮想カメラ101の視野範囲に含まれる他の第1オブジェクトを表す第1位置指示画像を生成する。上述のように、第1位置指示画像は、上記他の第1オブジェクトの位置と、他の第1オブジェクトを識別する情報とを表す画像である(図12参照)。また、第1位置指示画像は、上記他の第1オブジェクトの位置を表すように、ステップS32で生成されたゲーム画像上の所定位置に描画される。具体的には、CPU10およびGPU11bは、第1位置指示画像を表す画像データをVRAM11dから読み出し、ステップS32で生成されてVRAM11dに記憶されているゲーム画像の上記所定位置に第1位置指示画像を追加する。ステップS34の次にステップS35の処理が実行される。
【0219】
ステップS35において、CPU10は、ステップS32で生成されたゲーム画像に第2オブジェクト92の画像が含まれているか否かを判定する。なお、上述したように、第2オブジェクト92が第1仮想カメラ101の視野範囲内であっても、障害物オブジェクト等に隠れて第1仮想カメラ101の位置からは第2オブジェクト92が見えない場合には、ステップS35の判定結果は否定となる。ステップS35の判定結果が肯定である場合、ステップS36の処理が実行される。一方、ステップS35の判定結果が否定である場合、ステップS36の処理がスキップされてステップS37の処理が実行される。
【0220】
ステップS36において、CPU10およびGPU11bは、第2オブジェクトの位置を表す第2位置指示画像を生成する。第2位置指示画像は、上記第2オブジェクトの位置を表すように、ステップS32で生成されたゲーム画像上の所定位置に描画される。具体的には、CPU10およびGPU11bは、第2位置指示画像を表す画像データをVRAM11dから読み出し、ステップS32で生成されてVRAM11dに記憶されているゲーム画像の上記所定位置に第2位置指示画像を追加する。ステップS36の次にステップS37の処理が実行される。
【0221】
ステップS37においては、ステップS32で生成されたゲーム画像に対して、上記位置指示画像以外の他の画像が追加される。上記他の画像とは、本実施形態においては上記方位画像94(図12参照)である。なお、他の実施形態においては、ステップS37において、例えばゲームに設定された制限時間を表す画像や、第1オブジェクト91から第2オブジェクト92までの距離を表す画像等が追加されてもよい。ステップS37の具体的な処理としては、CPU10およびGPU11bは、上記他の画像を表す画像データをVRAM11dから読み出し、ステップS32で生成されてVRAM11dに記憶されているゲーム画像に当該他の画像を追加する。ステップS37の次にステップS38の処理が実行される。
【0222】
ステップS38において、CPU10は、上記ステップS31において全ての第1仮想カメラ101を選択したか否かを判定する。ステップS38の判定結果が肯定である場合、ステップS39の処理が実行される。一方、ステップS38の判定結果が否定である場合、ステップS31の処理が再度実行される。したがって、上記ステップS31〜S37の処理は各第1仮想カメラ101に対して実行され、第1仮想カメラ101毎にゲーム画像が生成される。本実施形態においては、上記ステップS31〜S38の処理によって、4つのゲーム画像が生成され、各ゲーム画像のデータがそれぞれVRAM11dに記憶される。
【0223】
ステップS39において、CPU10およびGPU11bは、ステップS31〜S38で生成された複数(4つ)のゲーム画像を1つのゲーム画像にした画像を生成する。具体的には、ステップS31〜S38で生成された4つのゲーム画像のデータがVRAM11dから読み出され、4つのゲーム画像を合わせて1つにしたゲーム画像が生成される(図12参照)。生成されたゲーム画像がVRAM11dに記憶され、後述するステップS7の処理によってテレビ用ゲーム画像として表示される。このように、本実施形態では、第1ゲーム画像の領域が複数に分割され、複数の第1仮想カメラから見た仮想空間を表す複数の画像が、分割された各領域に配置される。なお、本実施形態においては、テレビ2の画面を縦に2分割するとともに横に2分割することによって画面を4つの領域に分割し、分割された4つの領域に4つのゲーム画像が対応するようにテレビ用ゲーム画像が生成された。ここで、画面はどのように分割されてもよく、他の実施形態においては、例えば縦または横に4分割されてもよい。ステップS39の後、CPU10はテレビ用ゲーム画像の生成処理を終了する。
【0224】
図17の説明に戻り、ステップS5のテレビ用ゲーム画像の生成処理の次にステップS6の処理が実行される。ステップS6においては、端末用ゲーム画像の生成処理が実行される。端末用ゲーム画像の生成処理においては、第2オブジェクト92の上方の位置から見たゲーム空間を表す画像が生成される。以下、図20を参照して、端末用ゲーム画像の生成処理の詳細について説明する。
【0225】
図20は、図17に示す端末用ゲーム画像の生成処理(ステップS6)の詳細な流れを示すフローチャートである。端末用ゲーム画像の生成処理においてはまずステップS41において、CPU10は、第2オブジェクト92の近くに第1オブジェクト91が存在するか否かを判定する。ステップS41の処理は、上記ステップS16の処理と同様である。ステップS41の判定結果が否定である場合、ステップS42の処理が実行される。一方、ステップS41の判定結果が肯定である場合、後述するステップS46の処理が実行される。
【0226】
ステップS42においては、第2仮想カメラ102から見たゲーム空間を表す上記狭域画像がCPU10およびGPU11bによって生成される。すなわち、CPU10およびGPU11bは、ステップS4のゲーム制御処理の結果を表すデータをメインメモリから読み出し、また、ゲーム画像を生成するために必要なデータをVRAM11dから読み出し、ゲーム画像を生成する。生成されたゲーム画像はVRAM11dに記憶される。なお、上記「ゲーム制御処理の結果を表すデータ」には、各オブジェクトデータ127および第2カメラデータ130が含まれる。上記ステップS42の次にステップS43の処理が実行される。
【0227】
ステップS43においては、狭域画像よりも広い範囲のゲーム空間を表す広域画像がCPU10およびGPU11bによって生成される。なお、ステップS43の処理は、画像の生成に用いられる仮想カメラが異なる以外は、上記ステップS42の処理と同様の方法で実行することができる。本実施形態においては、各オブジェクト(第1および第2オブジェクト)が移動可能な領域の全体を視野範囲に含むように固定的に設定される仮想カメラを用いて、ゲーム空間を表す画像が生成される。生成された広域画像は、上記狭域画像の所定位置に重ねて配置される(図13参照)。すなわち、CPU10およびGPU11bは、狭域画像を表す画像データをVRAM11dから読み出し、狭域画像の上記所定位置に広域画像を追加する。ステップS43の次にステップS44の処理が実行される。
【0228】
ステップS44において、CPU10およびGPU11bは、各仮想カメラの向きを表す各方向指示画像(第1および第2方向指示画像)をそれぞれ生成する。各方向指示画像は、上記狭域画像上における各オブジェクトの位置(オブジェクトの付近の位置、または、仮想カメラの位置でもよい。)にそれぞれ配置され、また、水平方向に関する各仮想カメラの向き(第2方向指示画像については、第2オブジェクトの向き)に対応する向きとなるように生成される(図13参照)。なお、本実施形態においては、方向指示画像は、各オブジェクトの位置に表示される、矢印のような形状の画像であるが、オブジェクトの位置と、オブジェクトまたはそれに対応する仮想カメラの向きとを表すものであればどのような画像であってもよい。例えば、他の実施形態においては、第1方向指示画像は、第1仮想カメラの向きに代えて、第1オブジェクトの向きを表してもよい。ステップS44の具体的な処理としては、CPU10およびGPU11bは、方向指示画像を表す画像データをVRAM11dから読み出し、ステップS42およびS43で生成されてVRAM11dに記憶されているゲーム画像における各オブジェクトの位置に各方向指示画像を追加する。さらに、本実施形態においては、狭域画像の場合と同様の方法で、広域画像にも方向指示画像が追加される。ステップS44の次にステップS45の処理が実行される。
【0229】
ステップS45においては、上記狭域画像、広域画像、および、方向指示画像以外の他の画像が生成される。他の画像とは、本実施形態においては、第1方向指示画像に付される、各第1オブジェクトを識別するための画像である(図13参照)。なお、他の実施形態においては、ステップS45において、例えばゲームに設定された制限時間を表す画像等が追加されてもよい。ステップS45の具体的な処理としては、CPU10およびGPU11bは、上記他の画像を表す画像データをVRAM11dから読み出し、VRAM11dに記憶されている狭域画像(および広域画像)に当該他の画像を追加する。本実施形態においては、ステップS45の処理によってVRAM11dに記憶されたゲーム画像が端末用ゲーム画像として用いられる。ステップS45の後、CPU10は、端末用ゲーム画像の生成処理を終了する。
【0230】
一方、ステップS46においては、上述の拡大画像がCPU10およびGPU11bによって生成される。拡大画像の生成方法は、上記ステップS42における狭域画像の生成方法と同様である。ただし、ステップS46が実行される場合には、上記ステップS18の処理によって第2仮想カメラ102の画角が小さく設定されているので、上記ステップS42の場合に比べて拡大された画像が生成される。生成された拡大画像はVRAM11dに記憶される。
【0231】
上記ステップS46の次に、上記ステップS44の処理が実行される。したがって、本実施形態においては、拡大画像が生成される場合には、上記広域画像は生成されず、拡大画像に追加されない。ただし、他の実施形態においては、広域画像が拡大画像に追加されてもよい。また、上記実施形態では、拡大画像が生成される場合、上記ステップS44およびS45において方向指示画像および他の画像が追加されるが、これらの画像が追加されなくてもよい。なお、拡大画像に追加される方向指示画像は、ステップS42で生成される狭域画像95の場合と同様の位置に追加されてもよいし、各オブジェクトが見やすく表示されるように、各オブジェクトからややずれた位置に追加されてもよい。ステップS46の後、CPU10は、端末用ゲーム画像の生成処理を終了する。
【0232】
図17の説明に戻り、端末用ゲーム画像の生成処理(ステップS6)の次に、ステップS7の処理が実行される。すなわち、ステップS7において、CPU10は、テレビ2へゲーム画像を出力する。具体的には、CPU10は、VRAM11dに記憶されたテレビ用ゲーム画像のデータをAV−IC15へ送る。これに応じて、AV−IC15はテレビ用ゲーム画像のデータをAVコネクタ16を介してテレビ2へ出力する。これによって、テレビ用ゲーム画像がテレビ2に表示される。なお、ステップS7においては、ゲーム画像のデータと共にゲーム音声のデータがテレビ2へ出力され、テレビ2のスピーカ2aからゲーム音声が出力されてもよい。ステップS7の次にステップS8の処理が実行される。
【0233】
ステップS8において、CPU10は、端末装置7へゲーム画像を送信する。具体的には、VRAM11dに記憶された端末用ゲーム画像の画像データは、CPU10によってコーデックLSI27に送られ、コーデックLSI27によって所定の圧縮処理が行われる。さらに、圧縮処理が施された画像データは、端末通信モジュール28によってアンテナ29を介して端末装置7へ送信される。端末装置7は、ゲーム装置3から送信されてくる画像データを無線モジュール70によって受信し、コーデックLSI66が所定の伸張処理を行う。伸張処理が行われた画像データはLCD51に出力される。これによって、端末用ゲーム画像がLCD51に表示される。なお、ステップS8においては、ゲーム画像のデータと共にゲーム音声のデータが端末装置7へ送信され、端末装置7のスピーカ67からゲーム音声が出力されてもよい。また、ゲーム装置3において上述した制御データが生成される場合には、ステップS8において、上記画像データに加えて当該制御データが端末装置7へ送信されてもよい。ステップS8の次にステップS9の処理が実行される。
【0234】
ステップS9において、CPU10は、ゲームを終了するか否かを判定する。ステップS9の判定は、例えば、ゲームの制限時間が経過したか否か、ゲームオーバーになったか否か、あるいは、プレイヤがゲームを中止する指示を行ったか否か等によって行われる。ステップS9の判定結果が否定の場合、ステップS2の処理が再度実行される。一方、ステップS9の判定結果が肯定の場合、CPU10は図17に示すゲーム処理を終了する。以降、ステップS2〜S9の一連の処理は、ステップS9でゲームを終了すると判定されるまで繰り返し実行される。
【0235】
以上のように、本実施形態によれば、複数の第1プレイヤの操作対象である各第1オブジェクトにそれぞれ対応する各第1仮想カメラと、第2プレイヤの操作対象である第2オブジェクトに対応する第2仮想カメラとの視点の位置を異ならせる(ステップS13,S17)。そして、各第1仮想カメラを用いて生成されるテレビ用ゲーム画像をテレビ2に表示する(ステップS5,S7)とともに、第2仮想カメラを用いて生成される端末用ゲーム画像を端末装置7に表示する(ステップS6,S8)。これによれば、テレビ用ゲーム画像としては表示されないゲーム空間が端末用ゲーム画像として端末装置7に表示されるので、第2プレイヤは、自分だけが知ることができる情報を端末用ゲーム画像から得ることができる。そして、第2プレイヤは、自分だけが知ることができる情報(各オブジェクトの位置)を上手く使ってゲームを進めることによって、戦略的にゲームを進めることができる。また、各第1プレイヤは、他の第1プレイヤのためのゲーム画像を見たり、あるいは、第1プレイヤ同士で情報を交換したりすることで、第2プレイヤのみが知る情報を推測し、戦略的にゲームを行うことができる。したがって、本実施形態によれば、複数人でゲームをプレイするゲームの戦略性を向上することができ、興趣性の高いゲームを提供することができる。
【0236】
また、本実施形態においては、第2ゲーム画像が表すゲーム空間の範囲は、第1ゲーム画像に含まれる各領域の画像が表すゲーム空間の範囲よりも広くなるように第2ゲーム画像が生成される(図12〜図14参照)。したがって、本実施形態のように1人の第2プレイヤが複数の第1プレイヤと対戦する形式のゲームであっても、第2プレイヤが不利になりすぎることなく、興趣性の高いゲームを提供することができる。
【0237】
[7.変形例]
上記実施形態は本発明を実施する一例であり、他の実施形態においては例えば以下に説明する構成で本発明を実施することも可能である。
【0238】
(各ゲーム画像に関する変形例)
上記実施形態においては、テレビ用ゲーム画像は、第1操作対象の向きに応じた視線方向でゲーム空間を見たゲーム画像であり、端末側ゲーム画像は、各オブジェクトが移動可能な所定平面(ゲーム空間の地面)を真上からの視線方向で見たゲーム画像であった(図14)。ここで、他の実施形態においては、テレビ用ゲーム画像および端末用ゲーム画像は、テレビ用ゲーム画像には含まれないゲーム空間の領域が端末用ゲーム画像に含まれるように生成されれば、どのように生成されてもよい。以下、各ゲーム画像の生成に関する変形例を説明する。
【0239】
(第1の変形例)
以下、図21および図22を参照して、第1の変形例について説明する。図21は、第1の変形例における端末用ゲーム画像の一例を示す図である。図21に示すように、端末装置7には、ヘリコプター(のオブジェクト)131を含むゲーム空間の画像が表示される。第1の変形例においては、第2プレイヤの操作対象となる第2オブジェクトは、ヘリコプター(のオブジェクト)131である。なお、各第1プレイヤの操作対象は、上記実施形態と同様、ゲーム空間の所定平面(地面)上を移動する第1オブジェクト91である。
【0240】
第1の変形例におけるゲームは、第1オブジェクトと第2オブジェクトが互いに弾を撃ち合う射撃ゲームである。つまり、ゲーム装置3は、各第1プレイヤの操作に従って、上記所定平面上における移動動作と射撃動作とを各第1オブジェクトに行わせる。また、ゲーム装置3は、第2プレイヤの操作に従って、上記所定平面の上方の空間における移動動作と射撃動作とをヘリコプター131に行わせる。なお、第1オブジェクトの移動動作および射撃動作は、コントローラ5に対する操作に基づいて行われればどのように行われてもよく、第2オブジェクトの移動動作および射撃動作は、端末装置7に対する操作に基づいて行われればどのように行われてもよい。
【0241】
第1の変形例におけるテレビ用ゲーム画像は上記実施形態と同様であり、第1仮想カメラの設定方法は上記実施形態と同様である。一方、第1の変形例において、第2仮想カメラは、端末装置7の姿勢に基づいて制御される。具体的には、第2仮想カメラの姿勢は、現実空間における端末装置7の姿勢に応じた姿勢となるように制御され、第2仮想カメラの位置は、ヘリコプター131が第2仮想カメラの視野範囲(撮影範囲)に含まれるように制御される。
【0242】
図22は、端末装置7の姿勢と第2仮想カメラの姿勢との対応を示す図である。図22においては、端末装置7のz軸が水平方向と平行となる所定の基準状態にある場合において、第2仮想カメラ135は仮想空間における水平方向と平行な所定の基準姿勢となる。ここで、第2仮想カメラ135は、端末装置7が上記基準状態から回転した方向に応じた方向に、回転量に応じた回転量だけ、第2仮想カメラ135を基準姿勢から回転させた姿勢となるように制御される。例えば、基準姿勢から右を向くように(ヨー方向に)端末装置7が回転された場合、第2仮想カメラ135は、上記基準姿勢から右を向くように(ヨー方向に)回転する。また、基準姿勢から下を向くように(ピッチ方向に)端末装置7が回転された場合、第2仮想カメラ135は、上記基準姿勢から下を向くように(ピッチ方向に)回転する。また、図示しないが、基準姿勢から画面に垂直な軸回りに(ロール方向に)端末装置7が回転された場合、第2仮想カメラ135は、視線方向の軸回りに(ロール方向に)回転する。このように、本実施形態においては、現実空間における端末装置7の姿勢と仮想のゲーム空間における第2仮想カメラ135の姿勢とが対応するように制御される。これによって、プレイヤは、端末装置7を用いた容易かつ直感的な操作で端末用ゲーム画像の視線方向を変更することができる。
【0243】
また、第2仮想カメラ135の位置は、ヘリコプター131が視野範囲に含まれるように制御される。具体的には、第2仮想カメラ135は、ヘリコプター131の位置Pを向き、当該位置Pから所定距離だけ離れた位置に設定される。したがって、基準姿勢から右を向くように端末装置7が回転された場合、第2仮想カメラ135は上記基準姿勢から左方向に移動され、基準姿勢から下を向くように端末装置7が回転された場合、第2仮想カメラ135は上記基準姿勢から上方向に移動する(図15参照)。なお、他の実施形態においては、第2仮想カメラ135はヘリコプター131の位置に設定されてもよい。つまり、端末装置7には、いわゆる一人称視点のゲーム画像が表示されてもよい。
【0244】
なお、端末装置7の姿勢の算出方法はどのような方法であってもよいが、第1の変形例においては、端末装置7の慣性センサ(加速度センサ63およびジャイロセンサ64)の出力に基づいて姿勢が算出される。ジャイロセンサ64は、端末装置7の角速度を検出するので、当該角速度に基づいて端末装置7の姿勢を算出することができる。また、加速度センサ63は、端末装置7の加速度を検出し、端末装置7がほぼ静止している状態では、端末装置7に対して加えられる加速度は重力加速度を意味する。したがって、端末装置7に対する重力加速度の方向(重力方向)を、加速度センサ63の出力を用いて算出することができるので、重力方向に対する端末装置7の向き(姿勢)を算出することができる。ゲーム装置3は、ジャイロセンサ64の出力に基づいて算出した姿勢と、加速度センサ63の出力に基づいて算出した姿勢とを用いて、端末装置7の姿勢を算出する。具体的には、ジャイロセンサ64の出力に基づく姿勢を、加速度センサ63の出力に基づく姿勢によって補正することで、端末装置7の姿勢を算出することができる。以上のように、第1の変形例においては、端末装置7の慣性センサ(加速度センサ63およびジャイロセンサ64)の出力に基づいて第2仮想カメラ135が設定される。
【0245】
以上のように、第1の変形例においては、第2仮想カメラ135は、ヘリコプター131の周囲の位置(所定距離だけ離れた位置)に、端末装置7の姿勢に応じた姿勢となるように設定される。ここで、ヘリコプター131は、第1オブジェクトが移動可能な上記所定平面の上方の空間を移動するので、第2仮想カメラ135は、第1仮想カメラよりも高い位置に設定される。これによれば、上記実施形態と同様、端末用ゲーム画像は、テレビ用ゲーム画像よりもゲーム空間の広い範囲を表すことができ、各第1オブジェクトの位置を把握しやすい画像となる。例えば図21においては、端末用ゲーム画像は、ゲーム空間の地面を上空から見たゲーム画像であるので、各第1オブジェクト91aおよび91bの位置が把握しやすく、また、障害物(建物)の陰となる位置も一部を視認することができる。したがって、第1の変形例においても上記実施形態と同様、複数人でゲームをプレイするゲームの戦略性を向上することができ、興趣性の高いゲームを提供することができる。
【0246】
なお、第2仮想カメラを第1仮想カメラよりも高い位置に設定する場合、所定範囲の高さを有する障害物よりも第2仮想カメラを高い位置に設定し、第1仮想カメラを障害物よりも低い位置に設定することが好ましい。これによれば、第2仮想カメラによって障害物の奥の位置を撮像することができるので、端末用ゲーム画像によって各第1オブジェクトの位置が把握しやすくなるからである。
【0247】
また、第1の変形例においては、ヘリコプター131の位置と端末装置7の姿勢との組み合わせによっては、第2仮想カメラ135の位置が第1仮想カメラよりも低くなる場合が生じてもよい。つまり、第2プレイヤの操作によって第2仮想カメラ135の位置を第1仮想カメラよりも高い位置にすることができればよく、第1仮想カメラよりも常に高い位置に第2仮想カメラ135が設定されなくてもよい。このように、端末用ゲーム画像は、テレビ用ゲーム画像よりも有利な視点となる必要はない。
【0248】
以上のように、上記実施形態あるいは第1の変形例において説明したように、ゲーム空間における所定平面上に障害物オブジェクトが設置される場合や、あるいは、所定平面上に設置されるフィールドオブジェクトに凹凸がある場合には、第2仮想カメラの高さを第1仮想カメラより高くしたり、あるいは、第2仮想カメラの俯角を第1仮想カメラより大きくすることが好ましい。これによって、端末用ゲーム画像を、所定平面上における各オブジェクトの位置を把握しやすい画像にすることができる。
【0249】
(第2の変形例)
以下、図23および図24を参照して、第2の変形例について説明する。図23は、第2の変形例におけるテレビ用ゲーム画像の一例を示す図である。図24は、第2の変形例における端末用ゲーム画像の一例を示す図である。図23および図24に示すように、ゲーム空間には、複数(ここでは2つ)の第1オブジェクト141および142と、第2オブジェクト143とが登場する。第2の変形例におけるゲームは、上記実施形態と同様、第2オブジェクト143が各第1オブジェクト141および142を捕まえるゲームである。
【0250】
図23に示すように、テレビ用ゲーム画像としては、ゲーム空間の所定領域のうち、各第1オブジェクト141および142の周囲の領域144および145のみが視認可能に表示される。なお、図23において斜線で表される領域146は、図23ではゲーム空間をわかりやすく表すために視認可能としているが、実際には視認不可能に表示される。具体的には、斜線で表される領域146は、黒く表示されたり、ぼかして表示されたりする。このように、第2の変形例においては、ゲーム空間における所定範囲の領域のうち、各第1オブジェクトの位置に応じて決められる一部領域のみが視認可能なテレビ用ゲーム画像が生成される。したがって、第1プレイヤは、各第1オブジェクトの141および142の周囲の領域144および145のみを見てゲームを行う。
【0251】
一方、図24に示すように、端末用ゲーム画像としては、ゲーム空間の上記所定領域を表す(所定領域の全領域が視認可能な)ゲーム画像が表示される。したがって、第2プレイヤは、各オブジェクト141〜143の位置を容易に把握することができる。
【0252】
以上のように、上記第2の変形例においても上記実施形態と同様、テレビ用ゲーム画像によるゲーム空間の表示範囲を制限されたものとするとともに、端末用ゲーム画像がテレビ用ゲーム画像よりも広い範囲のゲーム空間を表すように生成する。これによって、上記実施形態と同様、各プレイヤが戦略的にゲームを行うことができるようになり、興趣性の高いゲームとなる。また、第2の変形例においても上記実施形態と同様、第2プレイヤが見る端末用ゲーム画像を、第1プレイヤが見るテレビ用ゲーム画像よりも有利なものとすることによって、一対多の対戦形式のゲームにおいて第2プレイヤが不利になりすぎることなく、興趣性の高いゲームを提供することができる。
【0253】
(ゲーム画像の生成方法に関する変形例)
上記実施形態においては、各ゲーム画像(テレビ用ゲーム画像および端末用ゲーム画像)を仮想カメラを用いて生成するものとした。ここで、他の実施形態においては、各ゲーム画像の生成方法はどのような方法であってもよい。例えば、上記実施形態において、端末用ゲーム画像に関しては、2次元のマップ画像を用いて狭域画像95および/または広域画像96が生成されてもよい。なお、マップ画像のデータは、ゲームプログラム110において予め用意されており、適宜のタイミングでメインメモリ等に予め記憶される。このように、予め用意された画像データを用いてゲーム画像を生成することによって、仮想カメラを用いる方法に比べて高速にゲーム画像を生成することができる。また、例えば上記第2の変形例においては、予め用意された2次元のマップ画像を用いてテレビ用ゲーム画像および端末用ゲーム画像が生成されてもよい。
【0254】
(ゲーム内容に関する変形例)
上記においては、複数人のプレイヤが同時に行うゲームの例として、鬼ごっこのゲームや射撃ゲームを例として説明したが、他の実施形態においては、ゲームの内容はどのようなものであってもよい。例えば、他の実施形態では、各第1プレイヤが操作する各第1オブジェクトが第2プレイヤの操作する第2プレイヤを捕まえるゲームであってもよい。また、上記実施形態におけるゲームシステム1は複数の第1プレイヤと1人の第2プレイヤとが対戦する一対多の対戦形式のゲームに特に有効であるが、ゲームの内容は一対多の対戦形式には限らない。例えば、他の実施形態においては、ゲーム空間に配置された所定のアイテムを取得するゲームのように、各プレイヤが個別に争うゲームであってもよい。
【0255】
(ゲームシステム1の構成に関する変形例)
上記実施形態においては、ゲームシステム1は、複数のコントローラ5と、1つの端末装置7と、ゲーム処理を実行するゲーム装置3とを含む構成であった。ここで、ゲームシステムは、上記の構成を含んでいればどのような構成であってもよい。例えば、他の実施形態においては、ゲームシステム1は複数の端末装置7を含む構成であってもよい。このとき、ゲームシステム1において実行されるゲームは、複数の第2プレイヤが協力する形式であってもよいし対戦する形式であってもよい。
【0256】
(ゲーム処理を実行する情報処理装置に関する変形例)
上記実施形態においては、ゲームシステム1において実行される一連のゲーム処理をゲーム装置3が実行したが、ゲーム処理の一部は他の装置によって実行されてもよい。例えば、他の実施形態においては、ゲーム処理の一部(例えば、端末用ゲーム画像の生成処理)を端末装置7が実行するようにしてもよい。また、他の実施形態では、互いに通信可能な複数の情報処理装置を有するゲームシステムにおいて、当該複数の情報処理装置がゲーム処理を分担して実行するようにしてもよい。
【産業上の利用可能性】
【0257】
以上のように、本発明は、複数人でゲームをプレイするゲームの戦略性を向上する事等を目的として、例えばゲームシステム、ゲーム装置、およびゲームプログラム等に利用することが可能である。
【符号の説明】
【0258】
1 ゲームシステム
2 テレビ
3 ゲーム装置
4 光ディスク
5 コントローラ
7 端末装置
8 メインコントローラ
9 サブコントローラ
10 CPU
11e 内部メインメモリ
12 外部メインメモリ
35 撮像情報演算部
37 加速度センサ
44 無線モジュール
48 ジャイロセンサ
51 LCD
52 タッチパネル
53 アナログスティック
54 操作ボタン
62 磁気センサ
63 加速度センサ
64 ジャイロセンサ
66 コーデックLSI
70 無線モジュール
91(91a〜91d) 第1オブジェクト
92 第2オブジェクト
93(93a,93c,93d) 第1位置指示画像
95 狭域画像
96 広域画像
97(97a〜97d) 第1方向指示画像
98 第2方向指示画像
101 第1仮想カメラ
102 第2仮想カメラ
103 障害物オブジェクト
110 ゲームプログラム
129 第1カメラデータ
130 第2カメラデータ

【特許請求の範囲】
【請求項1】
第1操作データを出力する複数の操作装置と、第2操作データを出力する可搬型表示装置と、ゲーム装置とを含み、
前記ゲーム装置は、
前記複数の操作装置からの第1操作データと、前記可搬型表示装置からの第2操作データとを取得する操作データ取得部と、
仮想空間内において、各前記第1操作データに基づいて複数の第1操作対象の動作をそれぞれ制御し、前記第2操作データに基づいて第2操作対象の動作を制御する動作制御部と、
前記複数の第1操作対象に1つずつ対応する複数の第1仮想カメラを前記仮想空間に設定する第1カメラ設定部と、
前記複数の第1仮想カメラからそれぞれ見た仮想空間を表す複数の画像を含む第1ゲーム画像を生成する第1画像生成部と、
前記第2操作対象に対応し、前記第1仮想カメラとは異なる視点に設定される第2仮想カメラを前記仮想空間に設定する第2カメラ設定部と、
前記第2仮想カメラから見た仮想空間を表す画像を含む第2ゲーム画像を生成する第2画像生成部と、
前記第1ゲーム画像を前記可搬型表示装置とは別体の所定の表示装置に出力する第1画像出力部と、
前記第2ゲーム画像を前記可搬型表示装置に無線送信する第2画像出力部とを備え、
前記可搬型表示装置は、
前記第2ゲーム画像を受信する画像受信部と、
前記第2ゲーム画像を表示する表示部とを備える、ゲームシステム。
【請求項2】
前記動作制御部は、前記仮想空間内に配置される複数の第1オブジェクトを前記複数の第1操作対象として前記第1操作データに基づいて移動させる制御を行い、
前記第1カメラ設定部は、各第1オブジェクトがそれに対応する第1仮想カメラの視野範囲にそれぞれ含まれるように各第1仮想カメラを設定する、請求項1に記載のゲームシステム。
【請求項3】
前記動作制御部は、前記仮想空間内に配置される第2オブジェクトを前記第2操作対象として前記第2操作データに基づいて移動させる制御を行い、
前記第2カメラ設定部は、第2オブジェクトが視野範囲に含まれるように第2仮想カメラを設定する、請求項2または請求項3に記載のゲームシステム。
【請求項4】
前記第2カメラ設定部は、前記仮想空間において各第1操作対象が移動可能な所定平面に対する俯角が各第1仮想カメラの俯角よりも大きくなるように第2仮想カメラを設定する、請求項1から請求項3のいずれか1項に記載のゲームシステム。
【請求項5】
前記第1カメラ設定部は、第1仮想カメラの向きが当該第1仮想カメラに対応する第1操作対象の向きに応じて変化するように、各第1仮想カメラを設定し、
前記第2カメラ設定部は、前記所定平面に略垂直な向きとなるように第2仮想カメラを設定する、請求項4に記載のゲームシステム。
【請求項6】
前記第2カメラ設定部は、前記仮想空間において各第1操作対象が移動可能な所定平面に対する高さが各第1仮想カメラよりも高くなるように第2仮想カメラを設定する、請求項1から請求項5のいずれか1項に記載のゲームシステム。
【請求項7】
前記第1カメラ設定部は、前記所定平面に対して所定範囲の高さを有する障害物オブジェクトよりも低い位置に各第1仮想カメラを設定し、
前記第2カメラ設定部は、前記障害物オブジェクトよりも高い位置に第2仮想カメラを設定する、請求項6に記載のゲームシステム。
【請求項8】
前記第1画像生成部は、複数の第1仮想カメラから見た仮想空間を表す複数の画像が、第1ゲーム画像の領域を複数に分割した各領域にそれぞれ配置されたゲーム画像を第1ゲーム画像として生成する、請求項1から請求項7のいずれか1項に記載のゲームシステム。
【請求項9】
前記可搬型表示装置は、慣性センサを含み、
前記動作制御部は、前記慣性センサの出力に基づいて前記第2仮想カメラを設定する、請求項1から請求項8のいずれか1項に記載のゲームシステム。
【請求項10】
第1操作データを出力する複数の操作装置と、第2操作データを出力する可搬型表示装置と、ゲーム装置とを含み、
前記ゲーム装置は、
前記複数の操作装置からの第1操作データと、前記可搬型表示装置からの第2操作データとを取得する操作データ取得部と、
仮想空間内において、各前記第1操作データに基づいて複数の第1操作対象の動作をそれぞれ制御し、前記第2操作データに基づいて第2操作対象の動作を制御する動作制御部と、
前記仮想空間のうち、前記複数の第1操作対象の位置に応じて決められる所定範囲の領域を表す第1ゲーム画像を生成する第1画像生成部と、
前記仮想空間のうちの前記第2操作対象を含む範囲で、かつ、前記第1ゲーム画像が表す範囲よりも広い範囲の領域を表す第2ゲーム画像を生成する第2画像生成部と、
前記第1ゲーム画像を前記可搬型表示装置とは別体の所定の表示装置に出力する第1画像出力部と、
前記第2ゲーム画像を前記可搬型表示装置に無線送信する第2画像出力部とを備え、
前記可搬型表示装置は、
前記第2ゲーム画像を受信する画像受信部と、
前記第2ゲーム画像を表示する表示部とを備える、ゲームシステム。
【請求項11】
前記第1画像生成部は、第1操作対象の向きに対応する視線方向で仮想空間を表す画像を各第1操作対象について生成することで第1ゲーム画像を生成し、
前記第2画像生成部は、各第1操作対象が移動可能な所定平面を当該所定平面に略垂直な視線方向から見たゲーム画像を第2ゲーム画像として生成する、請求項10に記載のゲームシステム。
【請求項12】
前記仮想空間には、各第1操作対象が移動可能な所定平面に対して所定範囲の高さを有する障害物オブジェクトが設置され、
前記第1画像生成部は、前記障害物オブジェクトよりも低い視点から見た第1ゲーム画像を生成し、
前記第2画像生成部は、前記障害物オブジェクトよりも高い視点から見た第2ゲーム画像を生成する、請求項10に記載のゲームシステム。
【請求項13】
前記第1画像生成部は、前記仮想空間における所定範囲の領域のうち、前記各第1操作対象の位置に応じて決められる一部領域のみを視認可能な第1ゲーム画像を生成し、
前記第2画像生成部は、前記仮想空間における前記所定範囲の領域を表す第2ゲーム画像を生成する、請求項10に記載のゲームシステム。
【請求項14】
前記第1画像生成部は、前記仮想空間に仮想カメラを設定し、仮想カメラから見た仮想空間を表す画像を前記第1ゲーム画像として生成し、
前記第2画像生成部は、前記仮想空間を表す画像として前記ゲーム装置がアクセス可能な記憶手段に予め記憶されている画像データを用いて前記第2ゲーム画像を生成する、請求項10から請求項13のいずれか1項に記載のゲームシステム。
【請求項15】
前記第2画像生成部は、前記仮想空間を表すゲーム画像上の第1操作対象および第2操作対象の位置を表し、かつ操作対象または仮想カメラの向きを表す画像が描かれた第2ゲーム画像を生成する、請求項1から請求項14のいずれか1項に記載のゲームシステム。
【請求項16】
前記可搬型表示装置は、前記表示部の画面上に設けられるタッチパネルをさらに備え、
前記動作制御部は、前記タッチパネルに対する入力に基づいて前記第2操作対象を移動させる、請求項1から請求項15のいずれか1項に記載のゲームシステム。
【請求項17】
前記可搬型表示装置は、少なくとも上下左右の4方向の入力が可能な方向入力部をさらに備え、
前記動作制御部は、前記方向入力部に対する方向入力に応じて前記第2操作対象を移動させる、請求項1から請求項15のいずれか1項に記載のゲームシステム。
【請求項18】
前記動作制御部は、前記仮想空間に設置される所定平面上において前記複数の第1操作対象および第2操作対象を移動させ、
前記ゲーム装置は、前記複数の第1操作対象のいずれかと第2操作対象とが接触したことに応じて所定のゲーム効果を発生させる効果発生部をさらに備える、請求項1から請求項17のいずれか1項に記載のゲームシステム。
【請求項19】
前記動作制御部は、前記仮想空間に設置される所定平面上における移動動作と射撃動作とを複数の第1操作対象を行わせ、前記所定平面の上方の空間における移動動作と射撃動作とを第2操作対象に行わせる、請求項1から請求項17のいずれか1項に記載のゲームシステム。
【請求項20】
前記ゲーム装置は、前記第2ゲーム画像を圧縮する画像圧縮部をさらに備え、
前記第2画像出力部は、圧縮された第2ゲーム画像を無線送信し、
前記可搬型表示装置は、前記画像受信部によって受信される、圧縮された第2ゲーム画像を伸張する画像伸張部をさらに備え、
前記表示部は、前記画像伸張部によって伸張された第2ゲーム画像を表示する、請求項1から請求項19のいずれか1項に記載のゲームシステム。
【請求項21】
ゲーム装置を含むゲームシステムにおいて実行されるゲーム処理方法であって、
前記ゲーム装置は、
当該ゲーム装置と通信可能な複数の操作装置から出力される第1操作データと、当該ゲーム装置と通信可能な可搬型表示装置から出力される第2操作データとを取得する操作データ取得ステップと、
仮想空間内において、各前記第1操作データに基づいて複数の第1操作対象の動作をそれぞれ制御し、前記第2操作データに基づいて第2操作対象の動作を制御する動作制御ステップと、
前記複数の第1操作対象に1つずつ対応する複数の第1仮想カメラを前記仮想空間に設定する第1カメラ設定ステップと、
前記複数の第1仮想カメラからそれぞれ見た仮想空間を表す複数の画像を含む第1ゲーム画像を生成する第1画像生成ステップと、
前記第2操作対象に対応し、前記第1仮想カメラとは異なる視点に設定される第2仮想カメラを前記仮想空間に設定する第2カメラ設定ステップと、
前記第2仮想カメラから見た仮想空間を表す画像を含む第2ゲーム画像を生成する第2画像生成ステップと、
前記第1ゲーム画像を前記可搬型表示装置とは別体の所定の表示装置に出力する第1画像出力ステップと、
前記第2ゲーム画像を前記可搬型表示装置に無線送信する第2画像出力ステップとを実行し、
前記可搬型表示装置は、
前記第2ゲーム画像を受信する画像受信ステップと、
前記第2ゲーム画像を表示する表示ステップとを実行する、ゲーム処理方法。
【請求項22】
前記動作制御ステップにおいて、前記ゲーム装置は、前記仮想空間内に配置される複数の第1オブジェクトを前記複数の第1操作対象として前記第1操作データに基づいて移動させる制御を行い、
前記第1カメラ設定ステップにおいて、前記ゲーム装置は、各第1オブジェクトがそれに対応する第1仮想カメラの視野範囲にそれぞれ含まれるように各第1仮想カメラを設定する、請求項21に記載のゲーム処理方法。
【請求項23】
前記動作制御ステップにおいて、前記ゲーム装置は、前記仮想空間内に配置される第2オブジェクトを前記第2操作対象として前記第2操作データに基づいて移動させる制御を行い、
前記第2カメラ設定ステップにおいて、前記ゲーム装置は、第2オブジェクトが視野範囲に含まれるように第2仮想カメラを設定する、請求項22または請求項23に記載のゲーム処理方法。
【請求項24】
前記第2カメラ設定ステップにおいて、前記ゲーム装置は、前記仮想空間において各第1操作対象が移動可能な所定平面に対する俯角が各第1仮想カメラの俯角よりも大きくなるように第2仮想カメラを設定する、請求項21から請求項23のいずれか1項に記載のゲーム処理方法。
【請求項25】
前記第1カメラ設定ステップにおいて、前記ゲーム装置は、第1仮想カメラの向きが当該第1仮想カメラに対応する第1操作対象の向きに応じて変化するように、各第1仮想カメラを設定し、
前記第2カメラ設定ステップにおいて、前記ゲーム装置は、前記所定平面に略垂直な向きとなるように第2仮想カメラを設定する、請求項24に記載のゲーム処理方法。
【請求項26】
前記第2カメラ設定ステップにおいて、前記ゲーム装置は、前記仮想空間において各第1操作対象が移動可能な所定平面に対する高さが各第1仮想カメラよりも高くなるように第2仮想カメラを設定する、請求項21から請求項25のいずれか1項に記載のゲーム処理方法。
【請求項27】
前記第1カメラ設定ステップにおいて、前記ゲーム装置は、前記所定平面に対して所定範囲の高さを有する障害物オブジェクトよりも低い位置に各第1仮想カメラを設定し、
前記第2カメラ設定ステップにおいて、前記ゲーム装置は、前記障害物オブジェクトよりも高い位置に第2仮想カメラを設定する、請求項26に記載のゲーム処理方法。
【請求項28】
前記第1画像生成ステップにおいて、前記ゲーム装置は、複数の第1仮想カメラから見た仮想空間を表す複数の画像が、第1ゲーム画像の領域を複数に分割した各領域にそれぞれ配置されたゲーム画像を第1ゲーム画像として生成する、請求項21から請求項27のいずれか1項に記載のゲーム処理方法。
【請求項29】
ゲーム装置を含むゲームシステムにおいて実行されるゲーム処理方法であって、
前記ゲーム装置は、
当該ゲーム装置と通信可能な複数の操作装置から出力される第1操作データと、当該ゲーム装置と通信可能な可搬型表示装置から出力される第2操作データとを取得する操作データ取得ステップと、
仮想空間内において、各前記第1操作データに基づいて複数の第1操作対象の動作をそれぞれ制御し、前記第2操作データに基づいて第2操作対象の動作を制御する動作制御ステップと、
前記仮想空間のうち、前記複数の第1操作対象の位置に応じて決められる所定範囲の領域を表す第1ゲーム画像を生成する第1画像生成ステップと、
前記仮想空間のうちの前記第2操作対象を含む範囲で、かつ、前記第1ゲーム画像が表す範囲よりも広い範囲の領域を表す第2ゲーム画像を生成する第2画像生成ステップと、
前記第1ゲーム画像を前記可搬型表示装置とは別体の所定の表示装置に出力する第1画像出力ステップと、
前記第2ゲーム画像を前記可搬型表示装置に無線送信する第2画像出力ステップとを実行し、
前記可搬型表示装置は、
前記第2ゲーム画像を受信する画像受信ステップと、
前記第2ゲーム画像を表示する表示ステップとを実行する、ゲーム処理方法。
【請求項30】
前記第1画像生成ステップにおいて、前記ゲーム装置は、第1操作対象の向きに対応する視線方向で仮想空間を表す画像を各第1操作対象について生成することで第1ゲーム画像を生成し、
前記第2画像生成ステップにおいて、前記ゲーム装置は、各第1操作対象が移動可能な所定平面を当該所定平面に略垂直な視線方向から見たゲーム画像を第2ゲーム画像として生成する、請求項29に記載のゲーム処理方法。
【請求項31】
前記仮想空間には、各第1操作対象が移動可能な所定平面に対して所定範囲の高さを有する障害物オブジェクトが設置され、
前記第1画像生成ステップにおいて、前記ゲーム装置は、前記障害物オブジェクトよりも低い視点から見た第1ゲーム画像を生成し、
前記第2画像生成ステップにおいて、前記ゲーム装置は、前記障害物オブジェクトよりも高い視点から見た第2ゲーム画像を生成する、請求項29に記載のゲーム処理方法。
【請求項32】
前記第1画像生成ステップにおいて、前記ゲーム装置は、前記仮想空間における所定範囲の領域のうち、前記各第1操作対象の位置に応じて決められる一部領域のみを視認可能な第1ゲーム画像を生成し、
前記第2画像生成ステップにおいて、前記ゲーム装置は、前記仮想空間における前記所定範囲の領域を表す第2ゲーム画像を生成する、請求項29に記載のゲーム処理方法。
【請求項33】
前記第1画像生成ステップにおいて、前記ゲーム装置は、前記仮想空間に仮想カメラを設定し、仮想カメラから見た仮想空間を表す画像を前記第1ゲーム画像として生成し、
前記第2画像生成ステップにおいて、前記ゲーム装置は、前記仮想空間を表す画像として前記ゲーム装置がアクセス可能な記憶手段に予め記憶されている画像データを用いて前記第2ゲーム画像を生成する、請求項29から請求項32のいずれか1項に記載のゲーム処理方法。
【請求項34】
前記第2画像生成ステップにおいて、前記ゲーム装置は、前記仮想空間を表すゲーム画像上の第1操作対象および第2操作対象の位置を表し、かつ操作対象または仮想カメラの向きを表す画像が描かれた第2ゲーム画像を生成する、請求項21から請求項33のいずれか1項に記載のゲーム処理方法。
【請求項35】
前記動作制御ステップにおいて、前記ゲーム装置は、前記仮想空間に設置される所定平面上において前記複数の第1操作対象および第2操作対象を移動させ、
前記ゲーム装置は、前記複数の第1操作対象のいずれかと第2操作対象とが接触したことに応じて所定のゲーム効果を発生させる効果発生ステップをさらに実行する、請求項21から請求項34のいずれか1項に記載のゲーム処理方法。
【請求項36】
前記動作制御ステップにおいて、前記ゲーム装置は、前記仮想空間に設置される所定平面上における移動動作と射撃動作とを複数の第1操作対象を行わせ、前記所定平面の上方の空間における移動動作と射撃動作とを第2操作対象に行わせる、請求項21から請求項34のいずれか1項に記載のゲーム処理方法。
【請求項37】
第1操作データを出力する複数の操作装置、および、第2操作データを出力する可搬型表示装置と通信可能であり、
前記複数の操作装置からの第1操作データと、前記可搬型表示装置からの第2操作データとを取得する操作データ取得部と、
仮想空間内において、各前記第1操作データに基づいて複数の第1操作対象の動作をそれぞれ制御し、前記第2操作データに基づいて第2操作対象の動作を制御する動作制御部と、
前記複数の第1操作対象に1つずつ対応する複数の第1仮想カメラを前記仮想空間に設定する第1カメラ設定部と、
前記複数の第1仮想カメラからそれぞれ見た仮想空間を表す複数の画像を含む第1ゲーム画像を生成する第1画像生成部と、
前記第2操作対象に対応し、前記第1仮想カメラとは異なる視点に設定される第2仮想カメラを前記仮想空間に設定する第2カメラ設定部と、
前記第2仮想カメラから見た仮想空間を表す画像を含む第2ゲーム画像を生成する第2画像生成部と、
前記第1ゲーム画像を前記可搬型表示装置とは別体の所定の表示装置に出力する第1画像出力部と、
前記第2ゲーム画像を前記可搬型表示装置に無線送信する第2画像出力部とを備える、ゲーム装置。
【請求項38】
前記動作制御部は、前記仮想空間内に配置される複数の第1オブジェクトを前記複数の第1操作対象として前記第1操作データに基づいて移動させる制御を行い、
前記第1カメラ設定部は、各第1オブジェクトがそれに対応する第1仮想カメラの視野範囲にそれぞれ含まれるように各第1仮想カメラを設定する、請求項37に記載のゲーム装置。
【請求項39】
前記動作制御部は、前記仮想空間内に配置される第2オブジェクトを前記第2操作対象として前記第2操作データに基づいて移動させる制御を行い、
前記第2カメラ設定部は、第2オブジェクトが視野範囲に含まれるように第2仮想カメラを設定する、請求項37または請求項38に記載のゲーム装置。
【請求項40】
前記第2カメラ設定部は、前記仮想空間において各第1操作対象が移動可能な所定平面に対する俯角が各第1仮想カメラの俯角よりも大きくなるように第2仮想カメラを設定する、請求項37から請求項39のいずれか1項に記載のゲーム装置。
【請求項41】
前記第1カメラ設定部は、第1仮想カメラの向きが当該第1仮想カメラに対応する第1操作対象の向きに応じて変化するように、各第1仮想カメラを設定し、
前記第2カメラ設定部は、前記所定平面に略垂直な向きとなるように第2仮想カメラを設定する、請求項40に記載のゲーム装置。
【請求項42】
前記第2カメラ設定部は、前記仮想空間において各第1操作対象が移動可能な所定平面に対する高さが各第1仮想カメラよりも高くなるように第2仮想カメラを設定する、請求項37から請求項41のいずれか1項に記載のゲーム装置。
【請求項43】
前記第1カメラ設定部は、前記所定平面に対して所定範囲の高さを有する障害物オブジェクトよりも低い位置に各第1仮想カメラを設定し、
前記第2カメラ設定部は、前記障害物オブジェクトよりも高い位置に第2仮想カメラを設定する、請求項42に記載のゲーム装置。
【請求項44】
前記第1画像生成部は、複数の第1仮想カメラから見た仮想空間を表す複数の画像が、第1ゲーム画像の領域を複数に分割した各領域にそれぞれ配置されたゲーム画像を第1ゲーム画像として生成する、請求項37から請求項43のいずれか1項に記載のゲーム装置。
【請求項45】
第1操作データを出力する複数の操作装置、および、第2操作データを出力する可搬型表示装置と通信可能であり、
前記複数の操作装置からの第1操作データと、前記可搬型表示装置からの第2操作データとを取得する操作データ取得部と、
仮想空間内において、各前記第1操作データに基づいて複数の第1操作対象の動作をそれぞれ制御し、前記第2操作データに基づいて第2操作対象の動作を制御する動作制御部と、
前記仮想空間のうち、前記複数の第1操作対象の位置に応じて決められる所定範囲の領域を表す第1ゲーム画像を生成する第1画像生成部と、
前記仮想空間のうちの前記第2操作対象を含む範囲で、かつ、前記第1ゲーム画像が表す範囲よりも広い範囲の領域を表す第2ゲーム画像を生成する第2画像生成部と、
前記第1ゲーム画像を前記可搬型表示装置とは別体の所定の表示装置に出力する第1画像出力部と、
前記第2ゲーム画像を前記可搬型表示装置に無線送信する第2画像出力部とを備える、ゲーム装置。
【請求項46】
前記第1画像生成部は、前記仮想空間に仮想カメラを設定し、仮想カメラから見た仮想空間を表す画像を前記第1ゲーム画像として生成し、
前記第2画像生成部は、前記仮想空間を表す画像として前記ゲーム装置がアクセス可能な記憶手段に予め記憶されている画像データを用いて前記第2ゲーム画像を生成する、請求項45に記載のゲーム装置。
【請求項47】
前記第2画像生成部は、前記仮想空間を表すゲーム画像上の第1操作対象および第2操作対象の位置を表し、かつ操作対象または仮想カメラの向きを表す画像が描かれた第2ゲーム画像を生成する、請求項37から請求項46のいずれか1項に記載のゲーム装置。
【請求項48】
ゲーム装置のコンピュータにおいて実行されるゲームプログラムであって、
前記ゲーム装置と通信可能な複数の操作装置から出力される第1操作データと、前記ゲーム装置と通信可能な可搬型表示装置から出力される第2操作データとを取得する操作データ取得手段と、
仮想空間内において、各前記第1操作データに基づいて複数の第1操作対象の動作をそれぞれ制御し、前記第2操作データに基づいて第2操作対象の動作を制御する動作制御手段と、
前記複数の第1操作対象に1つずつ対応する複数の第1仮想カメラを前記仮想空間に設定する第1カメラ設定手段と、
前記可搬型表示装置とは別体の所定の表示装置に表示するための第1ゲーム画像として、前記複数の第1仮想カメラからそれぞれ見た仮想空間を表す複数の画像を含むゲーム画像を生成する第1画像生成手段と、
前記第2操作対象に対応し、前記第1仮想カメラとは異なる視点に設定される第2仮想カメラを前記仮想空間に設定する第2カメラ設定手段と、
前記可搬型表示装置に表示するための第2ゲーム画像として、前記第2仮想カメラから見た仮想空間を表す画像を含むゲーム画像を生成する第2画像生成手段として前記コンピュータを機能させる、ゲームプログラム。
【請求項49】
前記動作制御手段は、前記仮想空間内に配置される複数の第1オブジェクトを前記複数の第1操作対象として前記第1操作データに基づいて移動させる制御を行い、
前記第1カメラ設定手段は、各第1オブジェクトがそれに対応する第1仮想カメラの視野範囲にそれぞれ含まれるように各第1仮想カメラを設定する、請求項48に記載のゲームプログラム。
【請求項50】
前記動作制御手段は、前記仮想空間内に配置される第2オブジェクトを前記第2操作対象として前記第2操作データに基づいて移動させる制御を行い、
前記第2カメラ設定手段は、第2オブジェクトが視野範囲に含まれるように第2仮想カメラを設定する、請求項48または請求項49に記載のゲームプログラム。
【請求項51】
前記第2カメラ設定手段は、前記仮想空間において各第1操作対象が移動可能な所定平面に対する俯角が各第1仮想カメラの俯角よりも大きくなるように第2仮想カメラを設定する、請求項48から請求項50のいずれか1項に記載のゲームプログラム。
【請求項52】
前記第1カメラ設定手段は、第1仮想カメラの向きが当該第1仮想カメラに対応する第1操作対象の向きに応じて変化するように、各第1仮想カメラを設定し、
前記第2カメラ設定手段は、前記所定平面に略垂直な向きとなるように第2仮想カメラを設定する、請求項51に記載のゲームプログラム。
【請求項53】
前記第2カメラ設定手段は、前記仮想空間において各第1操作対象が移動可能な所定平面に対する高さが各第1仮想カメラよりも高くなるように第2仮想カメラを設定する、請求項48から請求項52のいずれか1項に記載のゲームプログラム。
【請求項54】
前記第1カメラ設定手段は、前記所定平面に対して所定範囲の高さを有する障害物オブジェクトよりも低い位置に各第1仮想カメラを設定し、
前記第2カメラ設定手段は、前記障害物オブジェクトよりも高い位置に第2仮想カメラを設定する、請求項53に記載のゲームプログラム。
【請求項55】
前記第1画像生成手段は、複数の第1仮想カメラから見た仮想空間を表す複数の画像が、第1ゲーム画像の領域を複数に分割した各領域にそれぞれ配置されたゲーム画像を第1ゲーム画像として生成する、請求項48から請求項54のいずれか1項に記載のゲームプログラム。
【請求項56】
第1操作データを出力する複数の操作装置、および、第2操作データを出力する可搬型表示装置と通信可能なゲーム装置のコンピュータにおいて実行されるゲームプログラムであって、
前記複数の操作装置からの第1操作データと、前記可搬型表示装置からの第2操作データとを取得する操作データ取得手段と、
仮想空間内において、各前記第1操作データに基づいて複数の第1操作対象の動作をそれぞれ制御し、前記第2操作データに基づいて第2操作対象の動作を制御する動作制御手段と、
前記可搬型表示装置とは別体の所定の表示装置に表示するための第1ゲーム画像として、前記仮想空間のうち、前記複数の第1操作対象の位置に応じて決められる所定範囲の領域を表すゲーム画像を生成する第1画像生成手段と、
前記可搬型表示装置に表示するための第2ゲーム画像として、前記仮想空間のうちの前記第2操作対象を含む範囲で、かつ、前記第1ゲーム画像が表す範囲よりも広い範囲の領域を表すゲーム画像を生成する第2画像生成手段として前記コンピュータを機能させる、ゲームプログラム。
【請求項57】
前記第1画像生成手段は、前記仮想空間に仮想カメラを設定し、仮想カメラから見た仮想空間を表す画像を前記第1ゲーム画像として生成し、
前記第2画像生成手段は、前記仮想空間を表す画像として前記ゲーム装置がアクセス可能な記憶手段に予め記憶されている画像データを用いて前記第2ゲーム画像を生成する、請求項56に記載のゲームプログラム。
【請求項58】
前記第2画像生成手段は、前記仮想空間を表すゲーム画像上の第1操作対象および第2操作対象の位置を表し、かつ操作対象または仮想カメラの向きを表す画像が描かれた第2ゲーム画像を生成する、請求項48から請求項57のいずれか1項に記載のゲームプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate


【公開番号】特開2012−135337(P2012−135337A)
【公開日】平成24年7月19日(2012.7.19)
【国際特許分類】
【出願番号】特願2010−287685(P2010−287685)
【出願日】平成22年12月24日(2010.12.24)
【出願人】(000233778)任天堂株式会社 (1,115)
【Fターム(参考)】