(57)【特許請求の範囲】
【請求項１】
仮想空間を表すマップを画面に表示する情報処理装置のコンピュータに実行させる情報処理プログラムであって、
前記仮想空間を所定の視線方向から見た画像を表示する仮想空間表示手段と、
前記仮想空間の画像が表示されている場合にユーザによる第１指示があったことに応じて、前記視線方向が画面上における所定方向を向く第１マップを表示する第１マップ表示手段と、
前記第１マップが表示されている場合にユーザによる第２指示があったことに応じて、前記仮想空間において予め設定される方向が画面上における所定方向を向く第２マップを表示する第２マップ表示手段として前記コンピュータを機能させ、
前記仮想空間表示手段は、前記第１マップが表示されている場合に、ユーザによる、前記第２指示とは異なる第３指示があったことに応じて、前記仮想空間の画像を表示する、情報処理プログラム。
【請求項２】
前記第２マップは、前記第１マップよりも広い範囲を表す、請求項１に記載の情報処理プログラム。
【請求項３】
前記第１マップ表示手段は、前記仮想空間の画像が表示される画面領域に前記第１マップを表示し、
前記第２マップ表示手段は、前記仮想空間の画像が表示される画面領域に前記第２マップを表示する、請求項１または請求項２に記載の情報処理プログラム。
【請求項４】
ユーザの操作に応じて前記仮想空間に仮想カメラを設定する仮想カメラ設定手段として前記コンピュータをさらに機能させ、
前記仮想空間表示手段は、前記仮想カメラ設定手段により設定された仮想カメラの視線方向を前記所定の視線方向として前記仮想空間の画像を表示する、請求項１から請求項３のいずれか１項に記載の情報処理プログラム。
【請求項５】
前記仮想空間に配置されたオブジェクトの移動をユーザの操作に応じて制御するオブジェクト動作制御手段として前記コンピュータをさらに機能させ、
前記仮想カメラ設定手段は、前記オブジェクトの位置および向きの少なくともいずれかに基づいて前記仮想カメラの視線方向を設定し、
前記第１マップ表示手段は、仮想空間における前記オブジェクトの位置を表す画像を第１マップ上に表示し、
前記第２マップ表示手段は、仮想空間における前記オブジェクトの位置を表す画像を第２マップ上に表示する、請求項４に記載の情報処理プログラム。
【請求項６】
前記第１マップ表示手段は、前記第２マップが表示されている場合にユーザによる第４指示があったことに応じて前記第１マップを表示し、
前記仮想空間表示手段は、前記第２マップが表示されている場合にユーザによる、前記第４指示とは異なる第５指示があったことに応じて前記仮想空間の画像を表示する、請求項１に記載の情報処理プログラム。
【請求項７】
前記仮想空間表示手段は、前記第１マップまたは第２マップが表示されている場合に所定の条件が満たされたことに応じて、前記仮想空間の画像を表示し、
前記情報処理プログラムは、前記仮想空間の画像が表示される前に表示されていたマップの情報を記憶する記憶手段として前記コンピュータをさらに機能させ、
前記第１マップ表示手段は、前記仮想空間の画像が表示されており、かつ、前記記憶手段に第１マップの情報が記憶されている場合、所定の条件が満たされたことに応じて前記第１マップを表示し、
前記第２マップ表示手段は、前記仮想空間の画像が表示されており、かつ、前記記憶手段に第２マップの情報が記憶されている場合、所定の条件が満たされたことに応じて前記第２マップを表示する、請求項１に記載の情報処理プログラム。
【請求項８】
前記第１マップ表示手段は、前記第２マップが表示されている場合にユーザによる第６指示があったことに応じて前記第１マップを表示する、請求項７に記載の情報処理プログラム。
【請求項９】
前記仮想空間の画像が表示されている場合に、仮想空間内の位置を指定する第１位置指定指示をユーザから受け付ける第１位置受付手段と、
前記第１位置指定指示によって指定された位置に、前記仮想空間に配置される他の種類のオブジェクトよりも高い所定の目印オブジェクトを設置する第１目印設置手段として前記コンピュータをさらに機能させ、
前記第１マップ表示手段は、前記第１位置指定指示によって指定された位置に対応する第１マップ上の位置に所定の目印画像を表示する、請求項１から請求項８のいずれか１項に記載の情報処理プログラム。
【請求項１０】
前記第１マップが表示されている場合に、第１マップ上の位置を指定する第２位置指定指示をユーザから受け付ける第２位置受付手段と、
前記第２位置指定指示によって指定された位置に対応する仮想空間内の位置に、前記仮想空間に配置される他の種類のオブジェクトよりも高い所定の目印オブジェクトを設置する第２目印設置手段として前記コンピュータをさらに機能させ、
前記第１マップ表示手段は、前記第２位置指定指示によって前記指定された位置に所定の目印画像を表示する、請求項１から請求項９のいずれか１項に記載の情報処理プログラム。
【請求項１１】
前記仮想空間表示手段は、前記第１マップを表示するための指示があった場合、視線方向を仮想空間における下方向へ変化させて前記仮想空間の画像を表示し、
前記第１マップ表示手段は、視線方向が下方向へ変化された仮想空間の画像が表示された後、当該画像に代えて前記第１マップを表示する、請求項１から請求項１０のいずれか１項に記載の情報処理プログラム。
【請求項１２】
前記仮想空間表示手段は、前記第１マップを表示するための指示があった場合、視線方向を仮想空間における下方向へ変化させ、かつ、前記仮想空間の画像を時間の経過に従って徐々に薄くなるように前記仮想空間の画像を表示し、
前記第１マップ表示手段は、前記第１マップを表示するための指示があった場合、当該第１マップを時間の経過に従って徐々に濃くなるように表示する、請求項１から請求項１１のいずれか１項に記載の情報処理プログラム。
【請求項１３】
前記第１マップが表示されている場合に、前記第２マップを表示するための所定の条件が満たされたことに応じて、前記視線方向から前記仮想空間において予め設定される方向まで当該第１マップを徐々に回転させて表示する回転表示手段として前記コンピュータをさらに機能させ、
前記第２マップ表示手段は、前記回転表示手段によって前記第１マップが回転された後で前記第２マップを表示する、請求項１から請求項１２のいずれか１項に記載の情報処理プログラム。
【請求項１４】
仮想空間を表すマップを画面に表示するための情報処理システムであって、
前記仮想空間を所定の視線方向から見た画像を表示する仮想空間表示手段と、
前記仮想空間の画像が表示されている場合にユーザによる第１指示があったことに応じて、前記視線方向が画面上における所定方向を向く第１マップを表示する第１マップ表示手段と、
前記第１マップが表示されている場合にユーザによる第２指示があったことに応じて、前記仮想空間において予め設定される方向が画面上における所定方向を向く第２マップを表示する第２マップ表示手段とを備え、
前記仮想空間表示手段は、前記第１マップが表示されている場合に、ユーザによる、前記第２指示とは異なる第３指示があったことに応じて、前記仮想空間の画像を表示する、情報処理システム。
【請求項１５】
仮想空間を表すマップを画面に表示する情報処理装置であって、
前記仮想空間を所定の視線方向から見た画像を表示する仮想空間表示手段と、
前記仮想空間の画像が表示されている場合にユーザによる第１指示があったことに応じて、前記視線方向が画面上における所定方向を向く第１マップを表示する第１マップ表示手段と、
前記第１マップが表示されている場合にユーザによる第２指示があったことに応じて、前記仮想空間において予め設定される方向が画面上における所定方向を向く第２マップを表示する第２マップ表示手段とを備え、
前記仮想空間表示手段は、前記第１マップが表示されている場合に、ユーザによる、前記第２指示とは異なる第３指示があったことに応じて、前記仮想空間の画像を表示する、情報処理装置。
【請求項１６】
仮想空間を表すマップを画面に表示する情報処理装置によって実行されるマップ表示方法であって、
前記仮想空間を所定の視線方向から見た画像を表示する仮想空間表示ステップと、
前記仮想空間の画像が表示されている場合にユーザによる第１指示があったことに応じて、前記視線方向が画面上における所定方向を向く第１マップを表示する第１マップ表示ステップと、
前記第１マップが表示されている場合にユーザによる第２指示があったことに応じて、前記仮想空間において予め設定される方向が画面上における所定方向を向く第２マップを表示する第２マップ表示ステップとを備え、
前記仮想空間表示ステップにおいては、前記第１マップが表示されている場合に、ユーザによる、前記第２指示とは異なる第３指示があったことに応じて、前記仮想空間の画像を表示する、マップ表示方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想空間を表すマップを画面に表示する情報処理プログラム、情報処理装置、情報処理システム、および、マップ表示方法に関する。
【背景技術】
【０００２】
従来、ゲーム空間等の仮想空間の３次元画像を表示するとともに、仮想空間を表す２次元のマップを表示する技術がある。例えば、特許文献１には、３次元の仮想空間内においてプレイヤキャラクタを動作させてゲームを進行させるゲーム装置が記載されている。このゲーム装置では、仮想空間において予め設定される特定の方向が画面上における上向きとなるようにマップが表示される（文献１の図８参照）。
【０００３】
また、特許文献２には、仮想カメラの視線方向に応じた向きとなるようにマップを表示するゲーム装置が記載されている。このゲーム装置は、仮想カメラの位置から見た仮想空間の画像を表示するとともに、仮想カメラの視線方向が画面上における上向きとなるようにマップを表示する（文献２の図２２参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００３−３２５９７３号公報
【特許文献２】特開２００５−２３０２６３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上記特許文献１のように、仮想空間における特定方向を基準とするマップを表示する方法では、仮想空間における視線方向と画面に表示されるマップの上方向とが一致しない。そのため、仮想空間とマップとの対応がユーザにとって把握しづらくなってしまう。すなわち、上記の方法では、マップ上における仮想カメラの視線方向が把握しづらくなったり、マップ上に配置されるオブジェクトが、仮想空間に配置されるどのオブジェクトに対応するのかが把握しづらくなったりするという課題がある。
【０００６】
一方、上記特許文献２のように、仮想カメラの視線方向を基準とするマップを表示する方法では、画面上に表示されるマップの向きが仮想カメラの視線方向によって変化してしまう。この方法では、画面に表示されるマップの向きが一定ではないので、仮想空間の全体構成や、仮想空間に対する現在位置が把握しづらくなってしまう。具体的には、「湖の北側に山があって、山の東側に洞窟がある」といった、仮想空間の全体構成を把握しにくかったり、どちらの方へ向かうべきかがわからなくなったりするという問題がある。
【０００７】
以上のように、仮想空間における特定方向を基準とするマップにも仮想カメラの視線方向を基準とするマップにも短所があり、いずれか一方のマップを表示するだけでは、わかりやすいマップを提示することができない。
【０００８】
それ故、本発明の目的は、仮想空間を表すマップをよりわかりやすくユーザに提示することができる情報処理プログラム、情報処理装置、情報処理システム、および、マップ表示方法を提供することである。
【課題を解決するための手段】
【０００９】
本発明は、上記の課題を解決するために、以下の（１）〜（１４）の構成を採用した。
【００１０】
（１）
本発明は、仮想空間を表すマップを表示する情報処理装置のコンピュータに実行させる情報処理プログラムである。情報処理プログラムは、仮想空間表示手段と、第１マップ表示手段と、第２マップ表示手段としてコンピュータを機能させる。仮想空間表示手段は、仮想空間を所定の視線方向から見た画像を画面に表示する。第１マップ表示手段は、仮想空間の画像が表示されている場合にユーザによる第１指示があったことに応じて、視線方向が画面上における所定方向を向く第１マップを表示する。第２マップ表示手段は、第１マップが表示されている場合にユーザによる第２指示があったことに応じて、仮想空間において予め設定される方向が画面上における所定方向を向く第２マップを表示する。仮想空間表示手段は、第１マップが表示されている場合に、ユーザによる第３指示（第２指示とは異なる）があったことに応じて、仮想空間の画像を表示する。
【００１１】
上記「仮想空間」は、後述する実施形態におけるゲーム空間の他、仮想的に構築された３次元空間であればどのようなものであってもよい。また、上記「マップ」は、仮想空間を表す画像であればよく、２次元のマップであってもよいし、仮想空間と同様の３次元空間に基づいて生成された画像であってもよい。例えば、上記「マップ」は、仮想空間を真上から見たものに限らず、仮想空間を斜め上から見下ろした様子を表す俯瞰マップでもよい。また、上記「マップ」は、仮想空間内に配置されるオブジェクトがアイコンや図形等によって簡易的に表されるマップ（簡易マップ）でもよいし、当該オブジェクトが詳細に（仮想空間表示手段による画像と同様に）表されるマップ（詳細マップ）でもよい。なお、詳細マップの画像は、仮想空間表示手段と同様の方法、すなわち、仮想空間に配置される仮想カメラを用いた方法によって生成されてもよい。
上記「情報処理装置」とは、後述する実施形態に記載のゲーム装置の他、コンピュータプログラムを実行することによって情報処理を行う任意のコンピュータを含む概念である。また、上記「情報処理装置」は、携帯型か否かを問わない。
上記「情報処理プログラム」とは、一例としては、後述する実施形態に記載のゲームプログラムであるが、パーソナルコンピュータや携帯端末において実行される任意のアプリケーションプログラムを含む概念である。
上記「第１マップ」は、視線方向が画面上における所定方向を向くマップであればよい。下記（３）の構成や後述する実施形態においては、第１マップは第２マップよりも狭い領域を表すマップであるが、第１マップは第２マップよりも狭域のマップに限らない。また、「第１マップ表示手段」における「所定方向」は、一般的には（画面の）上方向が好ましいが、他の方向でもあってもよい。
上記「第２マップ」は、マップが一定の向きに表示されるものであればどのようなものであってもよい。また、「第２マップ表示手段」における「所定方向」は、どの方向であってもよく、また、「第１マップ表示手段」における「所定方向」と一致する必要はない。
上記「所定の条件」とは、例えば、ユーザの指示があったことでもあってもよいし、本発明をゲームに適用する場合には、ゲーム内で設定される条件（例えば、プレイヤキャラクタがアイテムを取得したこと等）であってもよい。なお、「第１マップ表示手段」における「所定の条件」と、「第２マップ表示手段」における「所定の条件」とは、同じであっても異なっていてもよい。
【００１２】
上記（１）の構成によれば、第１マップ表示手段および第２マップ表示手段によって、第１マップと第２マップという２種類のマップが表示される。ここで、第１マップは、仮想空間とマップとの対応が把握しやすいという特長を有するのに対して、第２マップは、仮想空間全体の構成が把握しやすいという特長を有する。つまり、上記（１）の構成によれば、特長の異なる２種類のマップをユーザに提示することができる。したがって、ユーザは２種類のマップのうちで状況や目的に応じた適切なマップを見ることができるので、本発明によれば、ユーザに対してわかりやすくマップを提示することができる。
【００１３】
（２）
第１マップ表示手段は、仮想空間の画像が表示されている場合に所定の条件が満たされたことに応じて第１マップを表示してもよい。また、第２マップ表示手段は、第１マップが表示されている場合に所定の条件が満たされたことに応じて第２マップを表示してもよい。
【００１４】
上記において、「第１マップ表示手段」における「所定の条件」と、「第２マップ表示手段」における「所定の条件」とは、同じであっても異なっていてもよい。
【００１５】
上記（２）の構成によれば、仮想空間の画像（空間画像）が表示された後、まず第１マップが表示され、その次に第２マップが表示される。これによれば、空間画像が表示される後にまず第１マップを表示することで、ユーザに仮想空間とマップとの対応を把握させることができる。そして、仮想空間とマップとの対応を把握させた後で第２マップを表示するので、「仮想空間とマップとの対応が把握しづらい」という第２のマップの欠点を補うことができる。つまり、上記（２）の構成によれば、２種類のマップを適切な順序で表示することで、ユーザに対してマップをよりわかりやすく提示することができる。
【００１６】
（３）
第２マップは、第１マップよりも広い範囲を表すマップでもよい。
【００１７】
上記（３）の構成によれば、仮想空間とマップとの対応を把握しやすく、視点の周囲の状況を確認するために有効である第１マップは、相対的に狭い範囲を表すマップとして表示される。一方、仮想空間全体の構成を把握しやすい第２マップは、相対的に広い範囲を表すマップとして表示される。したがって、上記（３）の構成によれば、各マップの用途に適した範囲を表すように表示範囲の大きさが設定されるので、マップをよりわかりやすくユーザに提示することができる。
【００１８】
（４）
第１マップ表示手段は、仮想空間の画像が表示される画面領域に第１マップを表示してもよい。また、第２マップ表示手段は、仮想空間の画像が表示される画面領域に第２マップを表示してもよい。
【００１９】
上記（４）の構成によれば、空間画像が表示される画面領域にマップが表示されるので、マップが表示される場合には、空間画像が切り替わって（画面から消去されて）マップが表示されることとなる。そのため、上記（４）の構成によれば、（空間画像とマップの画像とを同時に表示する場合に比べて）各画像を大きく表示することができ、ユーザにマップを見やすく提示することができる。ここで、空間画像とマップとを切り替えて表示する場合には、各画像を大きく表示することができるというメリットがあるものの、空間画像とマップの画像とを同時に表示する場合に比べて空間画像とマップとの対応がわかりにくくなるというデメリットがある。しかしながら、本発明によれば、上記（１）の構成等によって２種類のマップを提示することによって上記のデメリットを抑止することができるので、上記構成（４）のように空間画像とマップとを切り替える場合には、本発明が特に有効である。
【００２０】
（５）
情報処理プログラムは、ユーザの操作に応じて仮想空間に仮想カメラを設定する仮想カメラ設定手段としてコンピュータをさらに機能させてもよい。このとき、仮想空間表示手段は、仮想カメラ設定手段により設定された仮想カメラの視線方向を所定の視線方向として仮想空間の画像を表示する。
【００２１】
上記（５）の構成によれば、仮想空間の画像の視線方向はユーザの操作に応じて変化する。このように、ユーザの操作に応じて仮想空間の画像の視線方向が変化する場合には、仮想空間内において視線方向がどこを向いているかをユーザが把握できなくなるおそれがあるので、本発明のように第１マップおよび第２マップを提示することが特に有効である。
【００２２】
（６）
情報処理プログラムは、仮想空間に配置されたオブジェクトの移動をユーザの操作に応じて制御するオブジェクト動作制御手段としてコンピュータをさらに機能させてもよい。このとき、仮想カメラ設定手段は、オブジェクトの位置および向きの少なくともいずれかに基づいて仮想カメラの視線方向を設定する。第１マップ表示手段は、仮想空間におけるオブジェクトの位置を表す画像を第１マップ上に表示する。第２マップ表示手段は、仮想空間におけるオブジェクトの位置を表す画像を第２マップ上に表示する。
【００２３】
上記（６）の構成によれば、ユーザがオブジェクトを移動させることに応じて仮想カメラの視線方向が変化する。このように、ユーザの操作対象であるオブジェクトが移動して視線方向が変化する場合には、ユーザは、仮想空間におけるオブジェクトの位置を把握できなくなるおそれがある。これに関して、上記（６）の構成によれば、第１マップおよび第２マップ上にオブジェクトの位置を表す画像が表示されるので、ユーザは、各マップを見ることで仮想空間におけるオブジェクトの位置を容易に把握することができる。
【００２４】
（７）
第１マップ表示手段は、第２マップが表示されている場合にユーザによる第４指示があったことに応じて第１マップを表示してもよい。このとき、仮想空間表示手段は、第２マップが表示されている場合にユーザによる第５指示（第４指示とは異なる）があったことに応じて仮想空間の画像を表示する。
【００２５】
上記（７）の構成によれば、ユーザは、第４指示によって第２マップを第１マップへと切り替えることができるとともに、第５指示によって第２マップを空間画像へと切り替えることができる。これによれば、ユーザは２種類のマップと空間画像との切替を容易に行うことができる。
【００２６】
（８）
仮想空間表示手段は、第１マップまたは第２マップが表示されている場合に所定の条件が満たされたことに応じて、仮想空間の画像を表示してもよい。このとき、情報処理プログラムは、仮想空間の画像が表示される前に表示されていたマップの情報を記憶する記憶手段としてコンピュータをさらに機能させる。また、第１マップ表示手段は、仮想空間の画像が表示されており、かつ、記憶手段に第１マップの情報が記憶されている場合、所定の条件が満たされたことに応じて第１マップを表示する。第２マップ表示手段は、仮想空間の画像が表示されており、かつ、記憶手段に第２マップの情報が記憶されている場合、所定の条件が満たされたことに応じて第２マップを表示する。
【００２７】
上記（８）の構成によれば、マップ（第１マップまたは第２マップ）から空間画像へと切り替わった後で、さらに空間画像からマップへと切り替わる場合には、空間画像が表示される前に表示されていたマップが表示される。これによれば、マップが表示される場合には、前回と同じ種類のマップがまず表示されるので、マップをユーザにとって見やすく提示することができる。また、ユーザがいずれか一方のマップを使用する場合には、ユーザはマップの切替操作を行う必要がないので、特に有効である。
【００２８】
（９）
第１マップ表示手段は、第２マップが表示されている場合にユーザによる第６指示があったことに応じて第１マップを表示してもよい。
【００２９】
上記（９）の構成によれば、ユーザは、２つのマップの間で相互に表示を切り替えることができるので、所望のマップを容易に表示させることができる。
【００３０】
（１０）
情報処理プログラムは、第１位置受付手段と、第１目印設置手段としてコンピュータをさらに機能させてもよい。第１位置受付手段は、仮想空間の画像が表示されている場合に、仮想空間内の位置を指定する第１位置指定指示をユーザから受け付ける。第１目印設置手段は、第１位置指定指示によって指定された位置に、仮想空間に配置される他の種類のオブジェクトよりも高い所定の目印オブジェクトを設置する。第１マップ表示手段は、第１位置指定指示によって指定された位置に対応する第１マップ上の位置に所定の目印画像を表示する。
【００３１】
上記「他の種類のオブジェクト」とは、目印オブジェクト以外のオブジェクトを指す。したがって、目印オブジェクトが複数設置される場合には、各目印オブジェクトは同じ高さであってもよい。
【００３２】
上記（１０）の構成によれば、ユーザは、空間画像内の位置を指定する操作によって、指定した位置に目印を設置することができる。このとき、目印を設置した位置は第１マップにも反映されるので、１回の操作で仮想空間とマップとの両方に目印を設置することができる。また、仮想空間に設置される目印オブジェクトは、他の種類のオブジェクトよりも高いので、視点から離れた場所にあっても目印オブジェクトが表示され、ユーザは目印オブジェクトを容易に視認することができる。
【００３３】
（１１）
情報処理プログラムは、第２位置受付手段と、第２目印設置手段としてコンピュータをさらに機能させてもよい。第２位置受付手段は、第１マップが表示されている場合に、第１マップ上の位置を指定する位置指定指示をユーザから受け付ける。第２目印設置手段は、第２位置指定指示によって指定された位置に対応する仮想空間内の位置に、仮想空間に配置される他の種類のオブジェクトよりも高い所定の目印オブジェクトを設置する。このとき、第１マップ表示手段は、第２位置指定指示によって指定された位置に所定の目印画像を表示する。
【００３４】
上記（１１）の構成によれば、ユーザは、マップ上の位置を指定する操作によって、指定した位置に目印を設置することができる。このとき、目印を設置した位置は仮想空間内にも反映されるので、１回の操作で仮想空間とマップとの両方に目印を設置することができる。また、仮想空間に設置される目印オブジェクトは、他の種類のオブジェクトよりも高いので、視点から離れた場所にあっても目印オブジェクトが表示され、ユーザは目印オブジェクトを容易に視認することができる。
【００３５】
（１２）
仮想空間表示手段は、第１マップを表示するための指示があった場合、視線方向を仮想空間における下方向へ変化させて仮想空間の画像を表示してもよい。このとき、第１マップ表示手段は、視線方向が下方向へ変化された仮想空間の画像が表示された後、当該画像に代えて第１マップを表示する。
【００３６】
上記「視線方向を仮想空間における下方向へ変化させ」とは、少なくとも視線方向を変化させればよく、後述する実施形態（図１５）のように、視線方向を変化させるとともに視点の位置を移動させるものであってもよい。また、上記「下方向」とは、厳密に真下を向く方向に限らない。
【００３７】
上記（１２）の構成によれば、空間画像の後に第１マップが表示される場合、視線方向が下方向へ変化された仮想空間の画像が表示された後で第１マップが表示される。つまり、画面に表示される画像は、通常の視線方向の空間画像から、マップと同様の視線方向の空間画像へと変化した後、第１マップへと変化する。これによれば、第１マップが表示される前に第１マップと同様の視線方向の空間画像が表示されるので、ユーザは第１マップが表示される際に仮想空間とマップとの対応をよりわかりやすく把握することができる。
【００３８】
（１３）
仮想空間表示手段は、第１マップを表示するための指示があった場合、視線方向を仮想空間における下方向へ変化させ、かつ、仮想空間の画像を時間の経過に従って徐々に薄くなるように仮想空間の画像を表示してもよい。このとき、第１マップ表示手段は、第１マップを表示するための指示があった場合、当該第１マップを時間の経過に従って徐々に濃くなるように表示する。
【００３９】
上記（１３）の構成によれば、空間画像の後に第１マップが表示される場合、表示される画像は、仮想空間の画像から第１マップの画像へと次第に変化する。これによって、仮想空間とマップとの対応をよりわかりやすく把握することができる。
【００４０】
（１４）
情報処理プログラムは、第１マップが表示されている場合に、第２マップを表示するための所定の条件が満たされたことに応じて、視線方向から仮想空間において予め設定される方向まで当該第１マップを徐々に回転させて表示する回転表示手段としてコンピュータをさらに機能させてもよい。このとき、第２マップ表示手段は、回転表示手段によって第１マップが回転された後で第２マップを表示する。
【００４１】
上記（１４）の構成によれば、第１マップの後に第２マップが表示される場合、第１マップの画像が第２マップの画像へと連続的に変化する。これによって、第１マップと第２マップとの対応をよりわかりやすくユーザに提示することができる。
【００４２】
また、本発明は、上記各手段と同等の手段を備える情報処理装置の形態で実施されてもよい。この情報処理装置においては、情報処理プログラムを実行するコンピュータによって上記各手段が実現されてもよいし、専用回路によって上記各手段の一部または全部が実現されてもよい。また、本発明は、上記各手段を備える１以上の情報処理装置からなる情報処理システムの形態で実施されてもよい。このとき、１以上の情報処理装置は、有線または無線通信によって直接通信を行ってもよいし、ネットワークを介して通信を行ってもよい。さらに、本発明は、上記各手段によって行われるマップ表示方法の形態で実施されてもよい。
【発明の効果】
【００４３】
本発明によれば、第１マップおよび第２マップという２種類のマップをユーザに提示することによって、ユーザに対してわかりやすくマップを提示することができる。
【図面の簡単な説明】
【００４４】
【図１】ゲームシステムの外観図
【図２】ゲーム装置の機能ブロック図
【図３】コントローラの外観構成を示す斜視図
【図４】コントローラの外観構成を示す斜視図
【図５】コントローラの内部構造を示す図
【図６】コントローラの内部構造を示す図
【図７】コントローラの構成を示すブロック図
【図８】空間画像の一例を示す図である。
【図９】視線方向マップの一例を示す図
【図１０】方向固定マップの一例を示す図
【図１１】目印オブジェクトが設定された場合の空間画像を示す図
【図１２】目印が設定された場合の視線方向マップを示す図
【図１３】ゲーム装置のメインメモリに記憶される主なデータを示す図
【図１４】ゲーム装置において実行される処理の流れを示すメインフローチャート
【図１５】ステップＳ８の処理による仮想カメラの動きを示す図
【図１６】ステップＳ８の処理によって仮想カメラが移動した後の空間画像を示す図
【図１７】図１４に示すマップ表示処理（ステップＳ９）の流れを示すフローチャート
【発明を実施するための形態】
【００４５】
［ゲームシステムの全体構成］
図１を参照して、本発明の一実施形態に係る情報処理装置の一例であるゲーム装置を含むゲームシステム１について説明する。図１は、ゲームシステム１の外観図である。以下、据置型のゲーム装置を一例にして、本実施形態のゲーム装置およびゲームプログラムについて説明する。図１において、ゲームシステム１は、テレビジョン受像器（以下、単に「テレビ」と記載する）２、ゲーム装置３、光ディスク４、コントローラ５、およびマーカ部６を含む。本システムは、コントローラ５を用いたゲーム操作に基づいてゲーム装置３でゲーム処理を実行するものである。
【００４６】
ゲーム装置３には、当該ゲーム装置３に対して交換可能に用いられる情報記憶媒体の一例である光ディスク４が脱着可能に挿入される。光ディスク４には、ゲーム装置３において実行されるためのゲームプログラムが記憶されている。ゲーム装置３の前面には光ディスク４の挿入口が設けられている。ゲーム装置３は、挿入口に挿入された光ディスク４に記憶されているゲームプログラムを読み出して実行することによってゲーム処理を実行する。
【００４７】
ゲーム装置３には、表示装置の一例であるテレビ２が接続コードを介して接続される。テレビ２は、ゲーム装置３において実行されるゲーム処理の結果得られるゲーム画像を表示する。また、テレビ２の画面の周辺（図１では画面の上側）には、マーカ部６が設置される。マーカ部６は、その両端に２つのマーカ６Ｒおよび６Ｌを備えている。マーカ６Ｒ（マーカ６Ｌも同様）は、具体的には１以上の赤外ＬＥＤであり、テレビ２の前方に向かって赤外光を出力する。マーカ部６はゲーム装置３に接続されており、ゲーム装置３はマーカ部６が備える各赤外ＬＥＤの点灯を制御することが可能である。
【００４８】
コントローラ５は、自機に対して行われた操作の内容を示す操作データをゲーム装置３に与える入力装置である。コントローラ５とゲーム装置３とは無線通信によって接続される。本実施形態では、コントローラ５とゲーム装置３との間の無線通信には例えばＢｌｕｅｔｏｏｔｈ（ブルートゥース）（登録商標）の技術が用いられる。なお、他の実施形態においてはコントローラ５とゲーム装置３とは有線で接続されてもよい。
【００４９】
［ゲーム装置３の内部構成］
次に、図２を参照して、ゲーム装置３の内部構成について説明する。図２は、ゲーム装置３の構成を示すブロック図である。ゲーム装置３は、ＣＰＵ１０、システムＬＳＩ１１、外部メインメモリ１２、ＲＯＭ／ＲＴＣ１３、ディスクドライブ１４、およびＡＶ−ＩＣ１５等を有する。
【００５０】
ＣＰＵ１０は、光ディスク４に記憶されたゲームプログラムを実行することによってゲーム処理を実行するものであり、ゲームプロセッサとして機能する。ＣＰＵ１０は、システムＬＳＩ１１に接続される。システムＬＳＩ１１には、ＣＰＵ１０の他、外部メインメモリ１２、ＲＯＭ／ＲＴＣ１３、ディスクドライブ１４およびＡＶ−ＩＣ１５が接続される。システムＬＳＩ１１は、それに接続される各構成要素間のデータ転送の制御、表示すべき画像の生成、外部装置からのデータの取得等の処理を行う。システムＬＳＩの内部構成について後述する。揮発性の外部メインメモリ１２は、光ディスク４から読み出されたゲームプログラムや、フラッシュメモリ１７から読み出されたゲームプログラム等のプログラムを記憶したり、各種データを記憶したりするものであり、ＣＰＵ１０のワーク領域やバッファ領域として用いられる。ＲＯＭ／ＲＴＣ１３は、ゲーム装置３の起動用のプログラムが組み込まれるＲＯＭ（いわゆるブートＲＯＭ）と、時間をカウントするクロック回路（ＲＴＣ：Ｒｅａｌ  Ｔｉｍｅ  Ｃｌｏｃｋ）とを有する。ディスクドライブ１４は、光ディスク４からプログラムデータやテクスチャデータ等を読み出し、後述する内部メインメモリ１１ｅまたは外部メインメモリ１２に読み出したデータを書き込む。
【００５１】
また、システムＬＳＩ１１には、入出力プロセッサ（Ｉ／Ｏプロセッサ）１１ａ、ＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｏｒ  Ｕｎｉｔ）１１ｂ、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）１１ｃ、ＶＲＡＭ１１ｄ、および内部メインメモリ１１ｅが設けられる。図示は省略するが、これらの構成要素１１ａ〜１１ｅは内部バスによって互いに接続される。
【００５２】
ＧＰＵ１１ｂは、描画手段の一部を形成し、ＣＰＵ１０からのグラフィクスコマンド（作画命令）に従って画像を生成する。ＶＲＡＭ１１ｄは、ＧＰＵ１１ｂがグラフィクスコマンドを実行するために必要なデータ（ポリゴンデータやテクスチャデータ等のデータ）を記憶する。画像が生成される際には、ＧＰＵ１１ｂは、ＶＲＡＭ１１ｄに記憶されたデータを用いて画像データを作成する。
【００５３】
ＤＳＰ１１ｃは、オーディオプロセッサとして機能し、内部メインメモリ１１ｅや外部メインメモリ１２に記憶されるサウンドデータや音波形（音色）データを用いて、音声データを生成する。
【００５４】
上述のように生成された画像データおよび音声データは、ＡＶ−ＩＣ１５によって読み出される。ＡＶ−ＩＣ１５は、読み出した画像データをＡＶコネクタ１６を介してテレビ２に出力するとともに、読み出した音声データを、テレビ２に内蔵されるスピーカ２ａに出力する。これによって、画像がテレビ２に表示されるとともに音がスピーカ２ａから出力される。
【００５５】
入出力プロセッサ１１ａは、それに接続される構成要素との間でデータの送受信を実行したり、外部装置からのデータのダウンロードを実行したりする。入出力プロセッサ１１ａは、フラッシュメモリ１７、無線通信モジュール１８、無線コントローラモジュール１９、拡張コネクタ２０、およびメモリカード用コネクタ２１に接続される。無線通信モジュール１８にはアンテナ２２が接続され、無線コントローラモジュール１９にはアンテナ２３が接続される。
【００５６】
入出力プロセッサ１１ａは、無線通信モジュール１８およびアンテナ２２を介してネットワークに接続し、ネットワークに接続される他のゲーム装置や各種サーバと通信することができる。入出力プロセッサ１１ａは、定期的にフラッシュメモリ１７にアクセスし、ネットワークへ送信する必要があるデータの有無を検出し、当該データが有る場合には、無線通信モジュール１８およびアンテナ２２を介してネットワークに送信する。また、入出力プロセッサ１１ａは、他のゲーム装置から送信されてくるデータやダウンロードサーバからダウンロードしたデータを、ネットワーク、アンテナ２２および無線通信モジュール１８を介して受信し、受信したデータをフラッシュメモリ１７に記憶する。ＣＰＵ１０はゲームプログラムを実行することにより、フラッシュメモリ１７に記憶されたデータを読み出してゲームプログラムで利用する。フラッシュメモリ１７には、ゲーム装置３と他のゲーム装置や各種サーバとの間で送受信されるデータの他、ゲーム装置３を利用してプレイしたゲームのセーブデータ（ゲームの結果データまたは途中データ）が記憶されてもよい。
【００５７】
また、入出力プロセッサ１１ａは、コントローラ５から送信される操作データをアンテナ２３および無線コントローラモジュール１９を介して受信し、内部メインメモリ１１ｅまたは外部メインメモリ１２のバッファ領域に記憶（一時記憶）する。
【００５８】
さらに、入出力プロセッサ１１ａには、拡張コネクタ２０およびメモリカード用コネクタ２１が接続される。拡張コネクタ２０は、ＵＳＢやＳＣＳＩのようなインターフェースのためのコネクタであり、外部記憶媒体のようなメディアを接続したり、他のコントローラのような周辺機器を接続したり、有線の通信用コネクタを接続することによって無線通信モジュール１８に替えてネットワークとの通信を行ったりすることができる。メモリカード用コネクタ２１は、メモリカードのような外部記憶媒体を接続するためのコネクタである。例えば、入出力プロセッサ１１ａは、拡張コネクタ２０やメモリカード用コネクタ２１を介して外部記憶媒体にアクセスし、外部記憶媒体にデータを保存したり、外部記憶媒体からデータを読み出したりすることができる。
【００５９】
ゲーム装置３には、電源ボタン２４、リセットボタン２５、およびイジェクトボタン２６が設けられる。電源ボタン２４およびリセットボタン２５は、システムＬＳＩ１１に接続される。電源ボタン２４がオンされると、ゲーム装置３の各構成要素に対して、図示しないＡＣアダプタを経て電源が供給される。リセットボタン２５が押されると、システムＬＳＩ１１は、ゲーム装置３の起動プログラムを再起動する。イジェクトボタン２６は、ディスクドライブ１４に接続される。イジェクトボタン２６が押されると、ディスクドライブ１４から光ディスク４が排出される。
【００６０】
［コントローラ５の構成］
次に、図３〜図６を参照して、コントローラ５について説明する。図３は、コントローラ５の外観構成を示す斜視図である。図４は、コントローラ５の外観構成を示す斜視図である。図３は、コントローラ５の上側後方から見た斜視図であり、図４は、コントローラ５を下側前方から見た斜視図である。
【００６１】
図３および図４において、コントローラ５は、例えばプラスチック成型によって形成されたハウジング３１を有している。ハウジング３１は、その前後方向（図３に示すＺ軸方向）を長手方向とした略直方体形状を有しており、全体として大人や子供の片手で把持可能な大きさである。プレイヤは、コントローラ５に設けられたボタンを押下すること、および、コントローラ５自体を動かしてその位置や姿勢を変えることによってゲーム操作を行うことができる。
【００６２】
ハウジング３１には、複数の操作ボタンが設けられる。図３に示すように、ハウジング３１の上面には、十字ボタン３２ａ、１番ボタン３２ｂ、２番ボタン３２ｃ、Ａボタン３２ｄ、マイナスボタン３２ｅ、ホームボタン３２ｆ、プラスボタン３２ｇ、および電源ボタン３２ｈが設けられる。本明細書では、これらのボタン３２ａ〜３２ｈが設けられるハウジング３１の上面を「ボタン面」と呼ぶことがある。一方、図４に示すように、ハウジング３１の下面には凹部が形成されており、当該凹部の後面側傾斜面にはＢボタン３２ｉが設けられる。これらの各操作ボタン３２ａ〜３２ｉには、ゲーム装置３が実行するゲームプログラムに応じた機能が適宜割り当てられる。また、電源ボタン３２ｈは遠隔からゲーム装置３本体の電源をオン／オフするためのものである。ホームボタン３２ｆおよび電源ボタン３２ｈは、その上面がハウジング３１の上面に埋没している。これによって、プレイヤがホームボタン３２ｆまたは電源ボタン３２ｈを誤って押下することを防止することができる。
【００６３】
ハウジング３１の後面にはコネクタ３３が設けられている。コネクタ３３は、コントローラ５に他の機器を接続するために利用される。また、ハウジング３１の後面におけるコネクタ３３の両側には、上記他の機器が容易に離脱することを防止するために係止穴３３ａが設けられている。
【００６４】
ハウジング３１上面の後方には複数（図３では４つ）のＬＥＤ３４ａ〜３４ｄが設けられる。ここで、コントローラ５には、他のメインコントローラと区別するためにコントローラ種別（番号）が付与される。各ＬＥＤ３４ａ〜３４ｄは、コントローラ５に現在設定されている上記コントローラ種別をプレイヤに通知したり、コントローラ５の電池残量をプレイヤに通知したりする等の目的で用いられる。具体的には、コントローラ５を用いてゲーム操作が行われる際、上記コントローラ種別に応じて複数のＬＥＤ３４ａ〜３４ｄのいずれか１つが点灯する。
【００６５】
また、コントローラ５は撮像情報演算部３５（図６）を有しており、図４に示すように、ハウジング３１前面には撮像情報演算部３５の光入射面３５ａが設けられる。光入射面３５ａは、マーカ６Ｒおよび６Ｌからの赤外光を少なくとも透過する材質で構成される。
【００６６】
ハウジング３１上面における１番ボタン３２ｂとホームボタン３２ｆとの間には、コントローラ５に内蔵されるスピーカ４９（図５）からの音を外部に放出するための音抜き孔３１ａが形成されている。
【００６７】
次に、図５および図６を参照して、コントローラ５の内部構造について説明する。図５および図６は、コントローラ５の内部構造を示す図である。なお、図５は、コントローラ５の上筐体（ハウジング３１の一部）を外した状態を示す斜視図である。図６は、コントローラ５の下筐体（ハウジング３１の一部）を外した状態を示す斜視図である。図６に示す斜視図は、図５に示す基板３０を裏面から見た斜視図となっている。
【００６８】
図５において、ハウジング３１の内部には基板３０が固設されており、当該基板３０の上主面上に各操作ボタン３２ａ〜３２ｈ、各ＬＥＤ３４ａ〜３４ｄ、加速度センサ３７、アンテナ４５、およびスピーカ４９等が設けられる。これらは、基板３０等に形成された配線（図示せず）によってマイクロコンピュータ（Ｍｉｃｒｏ  Ｃｏｍｐｕｔｅｒ：マイコン）４２（図６参照）に接続される。本実施形態では、加速度センサ３７は、Ｘ軸方向に関してコントローラ５の中心からずれた位置に配置されている。これによって、コントローラ５をＺ軸回りに回転させたときのコントローラ５の動きが算出しやすくなる。また、加速度センサ３７は、長手方向（Ｚ軸方向）に関してコントローラ５の中心よりも前方に配置されている。また、無線モジュール４４（図７）およびアンテナ４５によって、コントローラ５がワイヤレスコントローラとして機能する。
【００６９】
一方、図６において、基板３０の下主面上の前端縁に撮像情報演算部３５が設けられる。撮像情報演算部３５は、コントローラ５の前方から順に赤外線フィルタ３８、レンズ３９、撮像素子４０、および画像処理回路４１を備えている。これらの部材３８〜４１はそれぞれ基板３０の下主面に取り付けられる。
【００７０】
さらに、基板３０の下主面上には、上記マイコン４２およびバイブレータ４８が設けられている。バイブレータ４８は、例えば振動モータやソレノイドであり、基板３０等に形成された配線によってマイコン４２と接続される。マイコン４２の指示によりバイブレータ４８が作動することによってコントローラ５に振動が発生する。これによって、コントローラ５を把持しているプレイヤの手にその振動が伝達される、いわゆる振動対応ゲームを実現することができる。本実施形態では、バイブレータ４８は、ハウジング３１のやや前方寄りに配置される。つまり、バイブレータ４８がコントローラ５の中心よりも端側に配置することによって、バイブレータ４８の振動によりコントローラ５全体を大きく振動させることができる。また、コネクタ３３は、基板３０の下主面上の後端縁に取り付けられる。なお、図５および図６に示す他、コントローラ５は、マイコン４２の基本クロックを生成する水晶振動子、スピーカ４９に音声信号を出力するアンプ等を備えている。
【００７１】
なお、図３〜図６に示したコントローラ５の形状や、各操作ボタンの形状、加速度センサやバイブレータの数および設置位置等は単なる一例に過ぎず、他の形状、数、および設置位置であっても、本発明を実現することができる。また、本実施形態では、撮像手段による撮像方向はＺ軸正方向であるが、撮像方向はいずれの方向であってもよい。すなわち、コントローラ５における撮像情報演算部３５の位置（撮像情報演算部３５の光入射面３５ａ）は、ハウジング３１の前面でなくてもよく、ハウジング３１の外部から光を取り入れることができれば他の面に設けられてもかまわない。
【００７２】
図７は、コントローラ５の構成を示すブロック図である。コントローラ５は、操作部３２（各操作ボタン３２ａ〜３２ｉ）、コネクタ３３、撮像情報演算部３５、通信部３６、および加速度センサ３７を備えている。コントローラ５は、自機に対して行われた操作内容を示すデータを操作データとしてゲーム装置３へ送信するものである。
【００７３】
操作部３２は、上述した各操作ボタン３２ａ〜３２ｉを含み、各操作ボタン３２ａ〜３２ｉに対する入力状態（各操作ボタン３２ａ〜３２ｉが押下されたか否か）を示す操作ボタンデータを通信部３６のマイコン４２へ出力する。
【００７４】
撮像情報演算部３５は、撮像手段が撮像した画像データを解析してその中で輝度が高い領域を判別してその領域の重心位置やサイズなどを算出するためのシステムである。撮像情報演算部３５は、例えば最大２００フレーム／秒程度のサンプリング周期を有するので、比較的高速なコントローラ５の動きでも追跡して解析することができる。
【００７５】
撮像情報演算部３５は、赤外線フィルタ３８、レンズ３９、撮像素子４０、および画像処理回路４１を含んでいる。赤外線フィルタ３８は、コントローラ５の前方から入射する光から赤外線のみを通過させる。レンズ３９は、赤外線フィルタ３８を透過した赤外線を集光して撮像素子４０へ入射させる。撮像素子４０は、例えばＣＭＯＳセンサやあるいはＣＣＤセンサのような固体撮像素子であり、レンズ３９が集光した赤外線を受光して画像信号を出力する。ここで、テレビ２の表示画面近傍に配置されるマーカ部６のマーカ６Ｒおよび６Ｌは、テレビ２の前方に向かって赤外光を出力する赤外ＬＥＤで構成される。したがって、赤外線フィルタ３８を設けることによって、撮像素子４０は、赤外線フィルタ３８を通過した赤外線だけを受光して画像データを生成するので、マーカ６Ｒおよび６Ｌの画像をより正確に撮像することができる。以下では、撮像素子４０によって撮像された画像を撮像画像と呼ぶ。撮像素子４０によって生成された画像データは、画像処理回路４１で処理される。画像処理回路４１は、撮像画像内における撮像対象（マーカ６Ｒおよび６Ｌ）の位置を算出する。画像処理回路４１は、算出された位置を示す座標を通信部３６のマイコン４２へ出力する。この座標のデータは、マイコン４２によって操作データとしてゲーム装置３に送信される。以下では、上記座標を「マーカ座標」と呼ぶ。マーカ座標はコントローラ５自体の向き（傾斜角度）や位置に対応して変化するので、ゲーム装置３はこのマーカ座標を用いてコントローラ５の向きや位置を算出することができる。
【００７６】
なお、他の実施形態においては、コントローラ５は画像処理回路４１を備えていない構成であってもよく、撮像画像自体がコントローラ５からゲーム装置３へ送信されてもよい。このとき、ゲーム装置３は、画像処理回路４１と同様の機能を有する回路あるいはプログラムを有しており、上記マーカ座標を算出するようにしてもよい。
【００７７】
加速度センサ３７は、コントローラ５の加速度（重力加速度を含む）を検出する、すなわち、コントローラ５に加わる力（重力を含む）を検出する。加速度センサ３７は、当該加速度センサ３７の検出部に加わっている加速度のうち、センシング軸方向に沿った直線方向の加速度（直線加速度）の値を検出する。例えば、２軸以上の多軸加速度センサの場合には、加速度センサの検出部に加わっている加速度として、各軸に沿った成分の加速度をそれぞれ検出する。例えば、３軸または２軸の加速度センサは、アナログ・デバイセズ株式会社（Ａｎａｌｏｇ  Ｄｅｖｉｃｅｓ，  Ｉｎｃ．）またはＳＴマイクロエレクトロニクス社（ＳＴＭｉｃｒｏｅｌｅｃｔｒｏｎｉｃｓ  Ｎ．Ｖ．）から入手可能である種類のものでもよい。なお、加速度センサ３７は、例えば静電容量式の加速度センサであるとするが、他の方式の加速度センサを用いるようにしてもよい。
【００７８】
本実施形態では、加速度センサ３７は、コントローラ５を基準とした上下方向（図３に示すＹ軸方向）、左右方向（図３に示すＸ軸方向）および前後方向（図３に示すＺ軸方向）の３軸方向に関してそれぞれ直線加速度を検出する。加速度センサ３７は、各軸に沿った直線方向に関する加速度を検出するものであるため、加速度センサ３７からの出力は３軸それぞれの直線加速度の値を表すものとなる。すなわち、検出された加速度は、コントローラ５を基準に設定されるＸＹＺ座標系（コントローラ座標系）における３次元のベクトル（ａｘ，ａｙ，ａｚ）として表される。以下では、加速度センサ３７によって検出される３軸に関する各加速度値を各成分とするベクトルを加速度ベクトルと呼ぶ。
【００７９】
加速度センサ３７が検出した加速度を示すデータ（加速度データ）は、通信部３６へ出力される。なお、加速度センサ３７が検出した加速度は、コントローラ５自体の向き（傾斜角度）や動きに対応して変化するので、ゲーム装置３は加速度データを用いてコントローラ５の向きや動きを算出することができる。本実施形態では、ゲーム装置３は、加速度データに基づいてコントローラ５の姿勢（傾斜角度）を判断する。つまり、加速度センサ３７は、コントローラ５の傾斜角度を判断するためのデータを出力するセンサとして用いられる。
【００８０】
なお、加速度センサ３７から出力される加速度の信号に基づいて、ゲーム装置３のプロセッサ（例えばＣＰＵ１０）またはコントローラ５のプロセッサ（例えばマイコン４２）等のコンピュータが処理を行うことによって、コントローラ５に関するさらなる情報を推測または算出（判定）することができることは、当業者であれば本明細書の説明から容易に理解できるであろう。例えば、加速度センサ３７を搭載するコントローラ５が静止状態であることを前提としてコンピュータ側の処理が実行される場合（すなわち、加速度センサによって検出される加速度が重力加速度のみであるとして処理が実行される場合）、コントローラ５が現実に静止状態であれば、検出された加速度に基づいてコントローラ５の姿勢が重力方向に対して傾いているか否かまたはどの程度傾いているかを知ることができる。具体的には、加速度センサ３７の検出軸が鉛直下方向を向いている状態を基準としたとき、１Ｇ（重力加速度）がかかっているか否かによって、コントローラ５が基準に対して傾いているか否かを知ることができるし、その大きさによって基準に対してどの程度傾いているかも知ることができる。また、多軸の加速度センサ３７の場合には、さらに各軸の加速度の信号に対して処理を施すことによって、重力方向に対してコントローラ５がどの程度傾いているかをより詳細に知ることができる。この場合において、プロセッサは、加速度センサ３７からの出力に基づいてコントローラ５の傾斜角度を算出してもよいし、当該傾斜角度を算出せずに、コントローラ５の傾斜方向を算出するようにしてもよい。このように、加速度センサ３７をプロセッサと組み合わせて用いることによって、コントローラ５の傾斜角度または姿勢を判定することができる。
【００８１】
一方、コントローラ５が動的な状態（コントローラ５が動かされている状態）であることを前提とする場合には、加速度センサ３７は重力加速度に加えてコントローラ５の動きに応じた加速度を検出するので、検出された加速度から重力加速度の成分を所定の処理により除去することによってコントローラ５の動き方向を知ることができる。また、コントローラ５が動的な状態であることを前提とする場合であっても、検出された加速度から、加速度センサの動きに応じた加速度の成分を所定の処理により除去することによって、重力方向に対するコントローラ５の傾きを知ることが可能である。なお、他の実施例では、加速度センサ３７は、内蔵の加速度検出手段で検出された加速度信号をマイコン４２に出力する前に当該加速度信号に対して所定の処理を行うための、組込み式の処理装置または他の種類の専用の処理装置を備えていてもよい。組込み式または専用の処理装置は、例えば、加速度センサ３７が静的な加速度（例えば、重力加速度）を検出するために用いられる場合、加速度信号を傾斜角（あるいは、他の好ましいパラメータ）に変換するものであってもよい。
【００８２】
なお、本実施形態では、コントローラの動きに応じて変化する値を出力するセンサとして、例えば静電容量式の加速度センサを用いることとしたが、他の方式の加速度センサやジャイロセンサを用いるようにしてもよい。ただし、加速度センサは各軸に沿った直線方向の加速度をそれぞれ検出するものであるのに対して、ジャイロセンサは回転に伴う角速度を検出するものである。つまり、加速度センサに代えてジャイロセンサを採用する場合には、検出される信号の性質が異なるため、両者を簡単に置き換えることはできない。そこで、加速度センサの代わりにジャイロセンサを用いて姿勢（傾斜角度）を算出する場合には、例えば次のような変更を行う。具体的には、ゲーム装置３は、検出開始の状態において姿勢の値を初期化する。そして、当該ジャイロセンサから出力される角速度のデータを積分する。さらに、積分結果を用いて、初期化された姿勢の値からの姿勢の変化量を算出する。この場合、算出される姿勢は、角度で表されることになる。
【００８３】
なお、既に説明したように、加速度センサによって傾斜角度（姿勢）を算出する場合には、加速度ベクトルを用いて傾斜角度を算出する。したがって、算出される傾斜角度はベクトルで表すことが可能であり、初期化を行わずとも絶対的な方向を算出することが可能である点で、加速度センサを用いる場合とジャイロセンサを用いる場合とは異なる。また、傾斜角度として算出される値の性質についても上記のように角度であるかベクトルであるかの違いがあるので、加速度センサからジャイロセンサへの置き換えを行う際には当該傾斜角度のデータに対しても所定の変換を行う必要がある。
【００８４】
通信部３６は、マイコン４２、メモリ４３、無線モジュール４４、およびアンテナ４５を含んでいる。マイコン４２は、処理を行う際にメモリ４３を記憶領域として用いながら、マイコン４２が取得したデータをゲーム装置３へ無線送信する無線モジュール４４を制御する。また、マイコン４２はコネクタ３３に接続されている。
【００８５】
操作部３２、撮像情報演算部３５、および加速度センサ３７からマイコン４２へ出力されたデータは、一時的にメモリ４３に格納される。これらのデータは、上記操作データとしてゲーム装置３へ送信される。すなわち、マイコン４２は、ゲーム装置３の無線コントローラモジュール１９への送信タイミングが到来すると、メモリ４３に格納されている操作データを無線モジュール４４へ出力する。無線モジュール４４は、例えばＢｌｕｅｔｏｏｔｈ（ブルートゥース）（登録商標）の技術を用いて、所定周波数の搬送波を操作データで変調し、その微弱電波信号をアンテナ４５から放射する。つまり、操作データは、無線モジュール４４で微弱電波信号に変調されてコントローラ５から送信される。微弱電波信号はゲーム装置３側の無線コントローラモジュール１９で受信される。受信された微弱電波信号について復調や復号を行うことによって、ゲーム装置３は操作データを取得することができる。そして、ゲーム装置３のＣＰＵ１０は、取得した操作データとゲームプログラムとに基づいて、ゲーム処理を行う。なお、通信部３６から無線コントローラモジュール１９への無線送信は所定の周期毎に逐次行われるが、ゲームの処理は１／６０秒を単位として（１フレーム時間として）行われることが一般的であるので、この時間以下の周期で送信を行うことが好ましい。コントローラ５の通信部３６は、例えば１／２００秒に１回の割合で各操作データをゲーム装置３の無線コントローラモジュール１９へ出力する。
【００８６】
上記コントローラ５を用いることによって、プレイヤは、各操作ボタンを押下する従来の一般的なゲーム操作に加えて、コントローラ５自体を動かす操作を行うことができる。例えば、コントローラ５を任意の傾斜角度に傾ける操作、コントローラ５によって画面上の任意の位置を指示する操作、および、コントローラ５を振る操作を行うことができる。
【００８７】
［マップ表示の概要］
以下、図８〜図１２を参照して、ゲーム装置３において実行されるゲーム処理におけるマップ表示の概要を説明する。本ゲーム処理によって行われるゲームは、３次元の仮想空間（ゲーム空間）に登場するプレイヤキャラクタをプレイヤ（ユーザ）が操作するゲームである。ゲーム処理においては、３次元の仮想空間が構築され、仮想空間の画像がテレビ２の画面に表示される。なお、以下では、画面に表示される仮想空間の画像を「空間画像」と呼ぶ。
【００８８】
図８は、空間画像の一例を示す図である。図８に示すように、空間画像は、仮想空間を所定の視線方向から見た画像である。本実施形態では、仮想空間に仮想カメラが設定され、仮想カメラの位置から、仮想カメラの視線方向（上記所定の視線方向）に見た仮想空間の画像が空間画像として表示される。また、図８においては、空間画像には、プレイヤによる操作対象であるプレイヤキャラクタ５１が含まれる。本実施形態においては、仮想カメラの位置および姿勢は、プレイヤキャラクタ５１の位置および向きに応じて制御される。具体的には、仮想カメラの位置はプレイヤキャラクタ５１の後方の位置となり、仮想カメラの姿勢（視線方向）はプレイヤキャラクタ５１の前方向となるように制御される。また、図８においては、空間画像とともにカーソル５２が表示される。カーソル５２は、仮想空間内の位置を指定するための画像であり、後述する目印オブジェクトを設置する位置の指定等に使用される。
【００８９】
上記空間画像が表示されている状態において、プレイヤが所定のマップ表示操作（例えば１番ボタン３２ｂを押下する操作）を行うと、ゲーム装置３は、仮想空間を表すマップを生成して表示する。ここで、本実施形態においては、ゲーム装置３は、上記仮想空間を表すマップとして、視線方向マップ、および、方向固定マップという２種類のマップを表示する。
【００９０】
空間画像が表示されている状態においてマップ表示操作が行われると、最初に視線方向マップが表示される。図９は、視線方向マップの一例を示す図である。なお、図９に示す視線方向マップは、図８に示す空間画像に対応する。図９に示すように、視線方向マップは、仮想カメラの視線方向が画面上における上方向を向くマップである。視線方向マップは、仮想カメラの視線方向が常に画面の上方向となるので、仮想空間とマップとの対応が把握しやすいという利点がある。また、視線方向マップは、仮想空間のうちの（方向固定マップと比較して）相対的に狭い範囲を表す。なお、図９に示すように、視線方向マップが表示される場合、プレイヤマーク５３と、カーソル５４とが視線方向マップ上に表示される。プレイヤマーク５３は、プレイヤキャラクタ５１の位置および向きをマップ上において表す画像である。カーソル５４は、マップ上において仮想空間内の位置を指定するための画像であり、後述する目印オブジェクトを設置する位置の指定等に使用される。
【００９１】
視線方向マップが表示されている状態で、所定のマップ切替操作（例えば２番ボタン３２ｃを押下する操作）が行われると、方向固定マップが表示される。図１０は、方向固定マップの一例を示す図である。なお、図１０に示す方向固定マップは、図８に示す空間画像および図９に示す視線方向マップに対応する。図１０に示すように、方向固定マップは、仮想空間において予め設定される方向が画面上における所定方向を向くマップである。本実施形態では、仮想空間において東西南北の方向が設定されており、北方向が画面上で上方向となる方向固定マップが表示される。方向固定マップは、仮想空間における特定の方向が常に画面の上方向となるので、（仮想カメラの視線方向にかかわらず）マップが常に同じ向きで表示されるため、仮想空間全体の構成が把握しやすいという利点がある。また、方向固定マップは、仮想空間のうちの（視線方向マップと比較して）相対的に広い範囲を表す。ここでは、ゲーム空間は複数のステージに分かれており、方向固定マップはそのうちの１つのステージ全体を表すものとする。なお、本実施形態では、方向固定マップにおいても視線方向マップと同様、プレイヤマーク５３およびカーソル５４が方向固定マップ上に表示される。
【００９２】
以上のように、本実施形態では、ゲーム装置３は、視線方向マップと方向固定マップという２種類のマップを表示する。２種類のマップを表示することによって、仮想空間を表すマップをプレイヤにとってわかりやすく提示することができる。すなわち、視線方向マップによれば、仮想空間とマップとの対応が把握しやすいので、プレイヤは、例えばプレイヤキャラクタ５１とその周囲のオブジェクトとの位置関係を直感的に把握することができる。したがって、例えばプレイヤキャラクタ５１の周囲の状況を確認したい場合には、プレイヤは視線方向マップを見ると良い。一方、方向固定マップによれば、仮想空間（ここでは１つのステージ）全体の構成が把握しやすい。また、方向固定マップによれば、常に特定の方向（ここで北方向）が上向きに表示されるので、（プレイヤキャラクタ５１を移動させている状況において）仮想空間内でプレイヤキャラクタ５１がどちらから来てどちらに向かっているかを把握しやすい。したがって、例えば「東にある洞窟に向かう」というように、ゲーム空間における特定の方向に移動したい場合には、プレイヤは方向固定マップによってプレイヤキャラクタ５１の進むべき方向を確認しながら移動すると良い。このように、本実施形態では、プレイヤは２種類のマップのうちで状況や目的に応じた適切なマップを見ることができるので、ゲーム装置３はプレイヤに対してわかりやすくマップを提示することができる。
【００９３】
また、本実施形態では、視線方向マップがまず表示され、その後、方向固定マップが表示される。視線方向マップによれば仮想空間とマップとの対応がわかりやすいので、空間画像が表示される後にまず視線方向マップを表示することで、ゲーム装置３は、プレイヤに仮想空間とマップとの対応を把握させることができる。そして、ゲーム装置３は、視線方向マップを表示した後で方向固定マップを表示する。ここで、方向固定マップは、仮想空間における視線方向と画面に表示されるマップの上方向とが一致しないため、仮想空間とマップとの対応が把握しづらいという欠点がある。これに対して、本実施形態では、方向固定マップを表示する前に視線方向マップを表示するので、方向固定マップを見る前に視線方向マップによって仮想空間とマップとの対応をプレイヤに把握させておくことができる。したがって、方向固定マップを見たプレイヤが仮想空間とマップとの対応が把握できずに混乱してしまうことを防止することができる。このように本実施形態では、方向固定マップを表示する前に視線方向マップを表示することで、方向固定マップの欠点を補うことができる。つまり、本実施形態によれば、２種類のマップを適切な順序で表示することで、よりわかりやすくマップを提示することができる。
【００９４】
さらに、本実施形態では、ゲーム装置３は、視線方向マップを狭域のマップとし、方向固定マップを広域のマップとしている。これは、視線方向マップは、上述したように、プレイヤキャラクタ５１の周囲の様子を見る場合に有効であるので、プレイヤキャラクタ５１の周囲をより見やすくするためには視線方向マップを狭域のマップにすることが好ましいと考えられるからである。また、方向固定マップは、仮想空間の全体構成を把握したい場合に有効であるので、仮想空間のある程度広い範囲を見ることができるように方向固定マップを広域のマップにすることが好ましいと考えられるからである。このように、本実施形態では、視線方向マップおよび方向固定マップを、それぞれのマップの用途に適した範囲を表すようにすることで、よりわかりやすくマップを表示することができる。
【００９５】
次に、図１１および図１２を参照して、仮想空間およびマップ上に設定される目印（目印オブジェクトおよび目印画像）について説明する。本実施形態では、プレイヤは、仮想空間またはマップ上に目印（目印オブジェクトおよび目印画像）を設定することができる。目印は、仮想空間内の所望の位置をプレイヤが覚えておく等の目的で使用されるものである。プレイヤは、例えば、プレイヤキャラクタ５１に何らかの動作を行わせるべき場所（その場所でプレイヤキャラクタ５１が特定の動作を行うことでイベントが発生してゲームが進行する）や、プレイヤキャラクタ５１の目的地に目印を設定する。
【００９６】
図１１は、目印オブジェクトが設定された場合の空間画像を示す図である。図１１においては、仮想空間内に目印オブジェクト５６が設置され、空間画像には目印オブジェクト５６が表示される。目印オブジェクト５６は、所定の高さを有する立体のオブジェクトである。本実施形態では、仮想カメラが離れた場所にあっても目印オブジェクト５６が表示されるように、上記所定の高さは、仮想空間に配置される他の種類のオブジェクト（図１１で言えば、山や岩や木のオブジェクト）よりも高く設定される。目印オブジェクト５６は、空間画像が表示されている状態においてプレイヤが設定することが可能である。すなわち、プレイヤは、カーソル５２を動かし、目印オブジェクト５６を設置したい場所にカーソル５２を合わせて、所定の目印設定操作（例えば、Ａボタン３２ｄを押下する操作）を行う。この設定操作が行われた場合、ゲーム装置３は、カーソル５２が指し示す仮想空間内の位置に目印オブジェクト５６を設置する。
【００９７】
また、仮想空間内において目印オブジェクト５６が設置された場合、マップ（視線方向マップおよび方向固定マップ）にも目印が反映される。図１２は、目印が設定された場合の視線方向マップを示す図である。なお、図１２に示す視線方向マップは、図１１に示す空間画像に対応する。図１２に示すように、仮想空間内において目印オブジェクト５６が設置されている場合、視線方向マップには、目印オブジェクト５６が設置された位置に目印画像５７が表示される。なお、図１１では視線方向マップを示しているが、方向固定マップにおいても目印オブジェクト５６が設置された位置に目印画像５７が表示される。このように、本実施形態では、仮想空間に目印オブジェクト５６が設置された場合、マップにおいても目印を確認することができる。
【００９８】
さらに、本実施形態では、プレイヤは、マップ上において目印を設置することができる。すなわち、プレイヤは、カーソル５４を動かし、目印画像５７を設置したい位置にカーソル５４を合わせて、所定の設定操作（例えば、Ａボタン３２ｄを押下する操作）を行う。この設定操作が行われた場合、ゲーム装置３は、カーソル５４が指し示すマップ上の位置に目印画像５７を表示する。また、この場合、ゲーム装置３は、マップ上における目印画像５７の位置に対応する仮想空間の位置に目印オブジェクト５６を設置する。例えば、図１２に示す視線方向マップ上で目印画像５７が設置された場合には、図１１に示す空間画像、すなわち、目印画像５７に対応する位置に目印オブジェクト５６が設置された空間画像が表示される。このように、本実施形態では、マップ上で目印画像５７を設置することによって、仮想空間に目印オブジェクト５６を設置することができる。
【００９９】
［ゲーム処理の詳細］
次に、ゲーム装置３において実行される処理の詳細について説明する。まず、ゲーム装置３における処理において用いられる主なデータについて図１３を用いて説明する。図１３は、ゲーム装置３のメインメモリ（外部メインメモリ１２または内部メインメモリ１１ｅ）に記憶される主なデータを示す図である。図１３に示すように、ゲーム装置３のメインメモリには、ゲームプログラム６１、操作データ６２、および処理用データ６６が記憶される。なお、メインメモリには、図１３に示すデータの他、ゲームに登場する各種オブジェクトの画像データや、マップを表すデータや、オブジェクトの各種パラメータを示すデータ等、ゲーム処理に必要なデータが記憶される。
【０１００】
ゲームプログラム６１は、ゲーム装置３に電源が投入された後の適宜のタイミングで光ディスク４からその一部または全部が読み込まれてメインメモリに記憶される。ゲームプログラム６１は、コントローラ５から操作データをゲーム入力として用いて所定のゲーム処理を実行するためのプログラムが含まれる。また、ゲームプログラム６１には、上記空間画像と各マップ（視線方向マップおよび方向固定マップ）を表示する処理を実行するためのプログラムが含まれる。
【０１０１】
操作データ６２は、コントローラ５からゲーム装置３へ送信されてくる操作データである。上述したように、コントローラ５からゲーム装置３へ１／２００秒に１回の割合で操作データが送信されるので、メインメモリに記憶される操作データ６２はこの割合で更新される。なお、メインメモリには、最新の（最後に取得された）ものから順に所定個数の操作データが記憶される。
【０１０２】
操作データ６２には、加速度データ６３、マーカ座標データ６４、および操作ボタンデータ６５が含まれる。加速度データ６３は、加速度センサ３７によって検出された加速度（加速度ベクトル）を示すデータである。マーカ座標データ６４は、撮像情報演算部３５の画像処理回路４１によって算出される座標、すなわち上記マーカ座標を示すデータである。操作ボタンデータ６５は、各操作ボタン３２ａ〜３２ｉに対する入力状態を示すデータである。なお、コネクタ３３を介してコントローラ５に他のセンサ装置（例えば、ジャイロセンサ）が接続される場合には、操作データには、当該センサ装置の検出結果（例えば、ジャイロセンサが検出した角速度）を示すデータが含まれていてもよい。
【０１０３】
処理用データ６６は、後述するゲーム処理（図１４）において用いられるデータである。処理用データ６６には、カメラデータ６７、マップデータ６８、目印オブジェクトデータ６９、目印画像データ７０、およびマップ画像データ７１が含まれる。なお、図１３に示すデータの他、処理用データ６６は、ゲーム処理において用いられる各種データ（ゲームパラメータを示すデータ等）を含む。
【０１０４】
カメラデータ６７は、仮想空間における仮想カメラの位置および姿勢を示すデータである。なお、本実施形態では、仮想カメラの位置および姿勢は、プレイヤキャラクタ５１の位置および向きに応じて制御される。
【０１０５】
マップデータ６８は、視線方向マップおよび方向固定マップのいずれを表示するかを示すデータである。すなわち、マップデータ６８は、視線方向マップおよび方向固定マップのいずれかを示すデータであってもよいし、オンまたはオフ（オンが視線方向マップに対応し、オフが方向固定マップに対応する）を示すフラグのデータであってもよい。
【０１０６】
目印オブジェクトデータ６９は、仮想空間において目印オブジェクト５６を設置する位置を示すデータである。なお、本実施形態では、目印オブジェクト５６は複数個設置されることが可能である。目印オブジェクト５６が複数個設置される場合、目印オブジェクトデータ６９は、各目印オブジェクト５６の位置をそれぞれ示す。
【０１０７】
目印画像データ７０は、マップ上において目印画像５７を表示する位置を示すデータである。目印画像データ７０は、目印オブジェクトデータ６９が示す仮想空間内の位置に対応するマップ上の位置を示す。なお、目印画像５７が複数個設定される場合、目印画像データ７０は、各目印画像５７の位置をそれぞれ示す。
【０１０８】
マップ画像データ７１は、視線方向マップおよび方向固定マップの画像を示すデータである。本実施形態では、視線方向マップおよび方向固定マップは、同じ画像データを用いて生成される。すなわち、１つのステージを表すマップの画像は１種類であり、方向固定マップを表示する場合には、当該画像がそのまま表示され、視線方向マップを表示する場合には、当該画像に対して回転・拡大等の処理が行われて表示される。
【０１０９】
次に、ゲーム装置３において行われる処理の詳細を、図１４〜図１７を用いて説明する。図１４は、ゲーム装置３において実行される処理の流れを示すメインフローチャートである。ゲーム装置３の電源が投入されると、ゲーム装置３のＣＰＵ１０は、図示しないブートＲＯＭに記憶されている起動プログラムを実行し、これによってメインメモリ等の各ユニットが初期化される。そして、光ディスク４に記憶されたゲームプログラムがメインメモリに読み込まれ、ＣＰＵ１０によって当該ゲームプログラムの実行が開始される。図１４に示すフローチャートは、以上の処理が完了した後に行われる処理を示すフローチャートである。
【０１１０】
図１４に示すステップＳ１において、ＣＰＵ１０は初期処理を実行する。初期処理は、仮想空間を構築し、仮想空間に登場する各オブジェクトを初期位置に配置したり、ゲーム処理で用いる各種パラメータの初期値を設定したりする処理である。なお、ここでは、ゲーム開始時（ステップＳ１）においては、目印オブジェクトおよび目印画像は設定されないものとする。ただし、例えばゲーム装置３がセーブデータを読み込んで前回のゲームの続きからゲームが開始される場合には、上記目印オブジェクトデータ６９および目印画像データ７０をセーブデータに含めておき、前回までに設定された目印オブジェクトおよび目印画像がステップＳ１において設定されるようにしてもよい。ステップＳ１の次にステップＳ２の処理が実行される。
【０１１１】
ステップＳ２において、ＣＰＵ１０は操作データを取得する。すなわち、入力装置８から送信されてくる操作データが無線コントローラモジュール１９を介して受信されるので、ＣＰＵ１０は、受信された操作データをメインメモリに記憶する。ステップＳ２の次にステップＳ３の処理が実行される。
【０１１２】
ステップＳ３において、ＣＰＵ１０は、プレイヤによってマップ表示操作が行われたか否かを判定する。マップ表示操作は、空間画像に替えてマップを表示するための操作であり、例えば、コントローラ５の１番ボタン３２ｂを押下する操作である。ＣＰＵ１０は、操作ボタンデータ６５をメインメモリから読み出し、操作ボタンデータ６５を参照して１番ボタン３２ｂが押下されたか否かを判定する。ステップＳ３の判定結果が肯定である場合、後述するステップＳ８およびＳ９の処理が実行される。一方、ステップＳ３の判定結果が否定である場合、ステップＳ４の処理が実行される。
【０１１３】
ステップＳ４において、ＣＰＵ１０は、プレイヤによって目印設定操作が行われたか否かを判定する。目印設定操作は、目印（目印オブジェクト５６および目印画像５７）を設定するための操作であり、例えば、コントローラ５のＡボタン３２ｄを押下する操作である。ＣＰＵ１０は、操作ボタンデータ６５をメインメモリから読み出し、操作ボタンデータ６５を参照してＡ番ボタン３２ｄが押下されたか否かを判定する。ステップＳ４の判定結果が肯定である場合、後述するステップＳ１０およびＳ１１の処理が実行される。一方、ステップＳ４の判定結果が否定である場合、ステップＳ５の処理が実行される。
【０１１４】
ステップＳ５において、ＣＰＵ１０は、ゲームを進行させるためのゲーム進行処理を実行する。ゲーム進行処理は、例えば、コントローラ５に対する入力に従ってプレイヤキャラクタ５１の動作を制御する処理、予め定められた制御ルールに従って他のオブジェクト（例えば敵オブジェクト）の動作を制御する処理、および、仮想カメラの位置および姿勢を制御する処理を含む。なお、ここでは、仮想カメラの位置および姿勢は、プレイヤキャラクタの位置および向きの少なくともいずれかに基づいて設定される。つまり、本実施形態においては、仮想カメラはユーザの操作に応じて配置される。具体的には、仮想カメラの位置はプレイヤキャラクタ５１の後方の位置となり、仮想カメラの姿勢（視線方向）はプレイヤキャラクタ５１の前方向となるように制御される。仮想カメラの位置および姿勢を示すデータは、カメラデータ６７としてメインメモリに記憶される。
【０１１５】
また、本実施形態では、ゲーム進行処理には、画面上に表示されるカーソル５２の位置をコントローラ５に対する入力に基づいて算出する処理が含まれる。カーソル５２の位置は、例えば、コントローラ５の十字ボタン３２ａによって制御されてもよいし、コントローラ５の姿勢、あるいは、コントローラ５（コントローラ５のＺ軸）が指し示す画面上の位置から算出されてもよい。なお、コントローラ５の姿勢や、コントローラ５が指し示す画面上の位置は、加速度データ６３および／またはマーカ座標データ６４に基づいて算出されてもよいし、ジャイロセンサが検出した角速度を示すデータが操作データに含まれる場合には、当該角速度のデータに基づいて算出されてもよい。以上のステップＳ５の処理によって、ゲーム空間に登場するプレイヤキャラクタ５１等のオブジェクトの動作が制御され、ゲームが進行する。ステップＳ５の次にステップＳ６の処理が実行される。
【０１１６】
ステップＳ６において、ＣＰＵ１０は、仮想空間の画像（空間画像）をテレビ２の画面に表示する。すなわち、ＣＰＵ１０は、カメラデータ６７をメインメモリから読み出して仮想カメラの位置および姿勢を特定し、仮想カメラの位置から、仮想カメラの視線方向に見た仮想空間の画像を生成する。そして、生成された画像を画面に表示する。これによって、例えば図８に示すような空間画像が表示されることになる。さらに、本実施形態においては、空間画像に加えてカーソル５２が表示される。カーソル５２の表示位置は、上記ステップＳ５で算出されている。ステップＳ６の次にステップＳ７の処理が実行される。
【０１１７】
ステップＳ７において、ＣＰＵ１０は、ゲームを終了するか否かを判定する。ステップＳ７の判定は、例えば、ゲームがクリアされたか否かや、ゲームオーバーとなったか否かや、プレイヤがゲームを中止する指示を行ったか否か等によって行われる。ステップＳ７の判定結果が否定の場合、ステップＳ２の処理が再度実行される。一方、ステップＳ７の判定結果が肯定の場合、ＣＰＵ１０は図１４に示すゲーム処理を終了する。
【０１１８】
以上のステップＳ２〜Ｓ７に示したように、マップ表示操作が行われない場合（ステップＳ３でＮｏとなる場合）には、ステップＳ２〜Ｓ７の処理が繰り返し実行される。その結果、ゲーム空間を表す空間画像が表示されることとなる。
【０１１９】
次に、マップ表示操作が行われる場合に実行される処理を説明する。プレイヤによってマップ表示操作が行われた場合、上記ステップＳ３における判定結果が肯定となり、ステップＳ８およびＳ９の処理が実行される。以下、ステップＳ８およびＳ９の処理の詳細を説明する。
【０１２０】
ステップＳ８において、ＣＰＵ１０は、仮想カメラの位置および姿勢を変化させる処理を行う。図１５は、ステップＳ８の処理による仮想カメラの動きを示す図である。ステップＳ８の処理が実行される前の状態では、仮想カメラ５９は、図１５に示すように、プレイヤキャラクタ５１の後方においてプレイヤキャラクタ５１の方を向くように配置されている。ここで、ステップＳ８の処理においては、仮想カメラ５９は、視線方向が仮想空間における鉛直下向きとなるように回転しつつ、上方向に移動するように制御される（図１５に示す矢印参照）。さらに、本実施形態においては、仮想カメラ５９は、上方向とともにプレイヤキャラクタ５１の前方へ移動する（図１５に示す矢印参照）。なお、仮想カメラ５９は、視線方向を軸とした回転方向については回転を行わない。ステップＳ８の処理による仮想カメラ５９の移動は、仮想カメラ５９が所定の視線方向（例えば、鉛直下方向）を向くまで行われ、仮想カメラ５９が所定の視線方向を向いた時点で終了する。また、仮想カメラ５９を移動させる処理は、複数フレームにわたって実行される。そのため、テレビ２の画面には、仮想空間を見る視点が次第に下向きになりつつ斜め上方へ上がっていく画像（動画）が表示される。
【０１２１】
図１６は、ステップＳ８の処理によって仮想カメラが移動した後の空間画像を示す図である。図１６に示すように、ステップＳ８の処理によって、仮想空間を上から下へ見た画像が表示されることになる。また、ステップＳ８の処理後の空間画像においては、ステップＳ８の処理前における視線方向は、画面上の上向きとなっている。以上のステップＳ８の次にステップＳ９の処理が実行される。
【０１２２】
以上より、本実施形態によれば、空間画像が表示されている状態においてマップ表示操作が行われた場合（ステップＳ３でＹｅｓとなる場合）、視点が下を向きつつ上方へ上がっていく画像が表示される（ステップＳ８）。つまり、ステップＳ８の処理によって、空間画像における視線は、仮想空間を上から下へ見る視線へと変化することになり、表示される空間画像は、マップと同様の視線（鉛直下向きの視線）で仮想空間を見た画像へと変化する。また、この変化によって、ステップＳ８の処理前における視線方向は、画面上の上向きとなる。さらに、詳細は後述するが、ステップＳ８の後のステップＳ９の処理によって、視線方向マップが表示されることになる。したがって、本実施形態では、マップ表示操作が行われる場合、画面に表示される画像は、通常の視線方向の空間画像（図８）から、マップと同様の視線方向の空間画像（図１６）へと変化した後、視線方向マップ（図９）へと切り替わることになる。これによれば、プレイヤは、空間画像からマップの画像へと表示が切り替わる際に、仮想空間とマップとの対応を直感的に把握することができる。また、本実施形態においては、仮想カメラ５９は、下方向を向く回転とともに、プレイヤキャラクタ５１の前方へ移動する。これによって、移動後の仮想カメラ５９に基づく仮想空間の画像におけるプレイヤキャラクタ５１の位置を、視線方向マップにおけるプレイヤマーク５３の位置と一致させることができる。例えば図１６に示す空間画像と図９に示す視線方向マップとでは、プレイヤキャラクタ５１の位置とプレイヤマーク５３の位置とが一致している。したがって、プレイヤにとっては、仮想空間とマップとの対応がより把握しやすくなる。
【０１２３】
なお、本実施形態においては、ＣＰＵ１０は、仮想カメラの視線方向を仮想空間における下方向へ変化させつつ、仮想カメラを斜め上方向（上方および前方）へ移動させるように制御した。ここで、他の実施形態においては、ＣＰＵ１０は、仮想カメラの視線方向を仮想空間における下方向へ変化させればよく、仮想カメラの位置を動かさなくてもよい。また、仮想カメラの位置を動かす場合であっても、ＣＰＵ１０は仮想カメラを斜め上方向に動かさずに、真上方向に動かすようにしてもよい。
【０１２４】
図１４の説明に戻り、ステップＳ９において、ＣＰＵ１０はマップ表示処理を実行する。マップ表示処理は、視線方向マップまたは方向固定マップをテレビ２の画面に表示させる処理である。以下、図１７を参照して、マップ表示処理の詳細を説明する。
【０１２５】
図１７は、図１４に示すマップ表示処理（ステップＳ９）の流れを示すフローチャートである。マップ表示処理においては、まずステップＳ２１において、ＣＰＵ１０は、画面に表示させるべき対象を視線方向マップに設定する。具体的には、視線方向マップを示すデータをマップデータ６８としてメインメモリに記憶させる。なお、詳細は後述するが、後述する表示処理（ステップＳ２６〜Ｓ２８）では、視線方向マップと方向固定マップのうち、マップデータ６８が示すマップが画面に表示される。したがって、ステップＳ２１の処理によって、本実施形態では、マップ表示操作が行われると、空間画像に代えてまず視線方向マップが表示されることとなる。つまり、ステップＳ２１の処理は、空間画像の次に（方向固定マップではなく）視線方向マップを表示させるための処理である。ステップＳ２１の次にステップＳ２２の処理が実行される。
【０１２６】
ステップＳ２２において、ＣＰＵ１０は操作データを取得する。ステップＳ２２の処理が上記ステップＳ２の処理と同じである。ステップＳ２２の次にステップＳ２３の処理が実行される。
【０１２７】
ステップＳ２３において、ＣＰＵ１０は、プレイヤによってマップ切替操作が行われたか否かを判定する。マップ切替操作は、視線方向マップおよび方向固定マップのうち表示対象となるマップを切り替えるための操作であり、例えば、コントローラ５の２番ボタン３２ｃを押下する操作である。ＣＰＵ１０は、操作ボタンデータ６５をメインメモリから読み出し、操作ボタンデータ６５を参照して２番ボタン３２ｃが押下されたか否かを判定する。ステップＳ２３の判定結果が肯定である場合、ステップＳ２４の処理が実行される。一方、ステップＳ２３の判定結果が否定である場合、ステップＳ２４の処理がスキップされてステップＳ２５の処理が実行される。
【０１２８】
ステップＳ２４において、ＣＰＵ１０は、メインメモリに記憶されているマップデータ６８を更新する。具体的には、更新前のマップデータが視線方向マップを示す場合、マップデータは方向固定マップを示すように更新される。また、更新前のマップデータが方向固定マップを示す場合、マップデータは視線方向マップを示すように更新される。つまり、ＣＰＵ１０は、更新後のマップデータが、更新前のマップデータが示すマップとは異なるマップを示すようにマップデータ６８を更新する。上記ステップＳ２４の処理によって、後述する表示処理（ステップＳ２６〜Ｓ２８）において、表示対象となるマップが切り替えられたこととなる。ステップＳ２４の次にステップＳ２５の処理が実行される。
【０１２９】
ステップＳ２５において、ＣＰＵ１０は、プレイヤによって目印設定操作が行われたか否かを判定する。なお、本実施形態においては、目印設定操作のための入力操作は、空間画像が表示されている場合とマップが表示されている場合とで同じ（Ａボタン３２ｄを押下する操作）である。そのため、ステップＳ２５の処理は上記ステップＳ４の処理と同じである。ただし、他の実施形態においては、目印設定操作のための入力操作は、空間画像が表示されている場合とマップが表示されている場合とで異なっていてもよい。ステップＳ２５の判定結果が肯定である場合、後述するステップＳ３０およびＳ３１の処理が実行される。一方、ステップＳ２５の判定結果が否定である場合、ステップＳ３０およびＳ３１の処理がスキップされてステップＳ２６の処理が実行される。
【０１３０】
ステップＳ２６において、ＣＰＵ１０は、視線方向マップを表示するか否かを判定する。具体的には、ＣＰＵ１０は、マップデータ６８をメインメモリから読み出し、マップデータ６８が視線方向マップを示すか否かを判定する。ステップＳ２６の判定結果が肯定である場合、ステップＳ２７の処理が実行される。一方、ステップＳ２６の判定結果が否定である場合、ステップＳ２８の処理が実行される。
【０１３１】
ステップＳ２７において、ＣＰＵ１０は、視線方向マップをテレビ２の画面に表示する。具体的には、ＣＰＵ１０は、マップ画像データ７１をメインメモリから読み出し、仮想空間における仮想カメラの視線方向が画面上の上向きとなるようにマップ画像を回転させて表示する。また、本実施形態においては、マップ画像全体のうち、プレイヤキャラクタ５１の周囲の領域を表す画像が表示される。具体的には、マップ画像全体のうちで表示される領域は、プレイヤキャラクタ５１の位置が当該領域の中央（または中央よりやや下）になるように設定される。また、マップ画像全体のうちで表示される領域の大きさは、後述する方向固定マップとして表示される領域よりも狭い大きさに予め設定されている。したがって、ＣＰＵ１０は、マップ画像データ７１が表すマップ画像を、所定の縮尺となるように拡大させて表示する。以上のように、上記ステップＳ２７においては、用意されているマップ画像に対して回転等の処理が行われることによって視線方向マップの画像が生成される。
【０１３２】
また、ステップＳ２７においては、視線方向マップの画像に重ねて、プレイヤマーク５３およびカーソル５４が表示される。プレイヤマーク５３は、仮想空間におけるプレイヤキャラクタ５１の位置に対応する位置に表示される。カーソル５４の表示位置は、プレイヤの入力操作に応じてカーソル５４が移動するように決定されればよく、例えば、空間画像上に表示されるカーソル５２と同様の方法で算出される。さらに、目印画像５７が設定されている場合には、視線方向マップの画像に重ねて目印画像５７が表示される。詳細は後述するが、目印画像５７の表示位置は目印画像データ７０により示されている。以上のステップＳ２７の次にステップＳ２９の処理が実行される。
【０１３３】
一方、ステップＳ２８において、ＣＰＵ１０は、方向固定マップをテレビ２の画面に表示する。具体的には、ＣＰＵ１０は、マップ画像データ７１をメインメモリから読み出し、予め定められた所定方向（本実施形態では、北方向）が画面上の上向きとなるようにマップ画像を表示する。また、本実施形態においては、方向固定マップとしては、１ステージ分のマップ画像全体が表示される。なお、ステップＳ２８において、方向固定マップの画像に重ねて、プレイヤマーク５３、カーソル５４、および（必要に応じて）目印画像５７が表示される点については、上記ステップＳ２７と同様である。以上のステップＳ２８の次にステップＳ２９の処理が実行される。
【０１３４】
なお、上記ステップＳ２７およびＳ２８においては、各マップは、空間画像が表示される画面領域（本実施形態では、テレビ２の画面全体）に表示される。つまり、空間画像が消去されてマップの画像が表示される。なお、他の実施形態においては、上記ステップＳ２７およびＳ２８においては、ＣＰＵ１０は、空間画像を画面の一部に表示しつつ、マップの画像を表示するようにしてもよい。
【０１３５】
上記ステップＳ２７およびＳ２８によれば、視線方向マップおよび方向固定マップは、同じ画像データを用いて生成される。すなわち、ＣＰＵ１０は、マップ全体を表すマップ画像データ７１をメインメモリに用意（記憶）しておき、視線方向マップを表示する場合には、当該画像に対して回転・拡大等の処理を行って表示し、方向固定マップを表示する場合には、当該画像をそのまま表示する。このように、１種類の画像データを用いて視線方向マップおよび方向固定マップを生成することによって、用意する画像データの量を低減することができる。また、１種類の画像データを用いて視線方向マップおよび方向固定マップを生成する場合には、後述する変形例のように、視線方向マップと方向固定マップとの間の切替時にマップを連続的に変化させることもできる。なお、他の実施形態においては、視線方向マップを生成するためのマップ画像データと、方向固定マップを生成するためのマップ画像データとは、別であってもよい。
【０１３６】
ステップＳ２９において、ＣＰＵ１０は、プレイヤによって仮想空間表示操作が行われたか否かを判定する。仮想空間表示操作は、マップの画像に替えて空間画像を表示するための操作であり、例えば、コントローラ５の１番ボタン３２ｂを押下する操作である。ＣＰＵ１０は、操作ボタンデータ６５をメインメモリから読み出し、操作ボタンデータ６５を参照して１番ボタン３２ｂが押下されたか否かを判定する。ステップＳ２９の判定結果が否定である場合、ステップＳ２２の処理が再度実行される。以降、ステップＳ２９においてマップ表示処理を終了すると判定されるまで、ステップＳ２２〜Ｓ２９（および必要に応じてステップＳ３０およびＳ３１）の処理が繰り返し実行される。一方、ステップＳ２９の判定結果が肯定である場合、ＣＰＵ１０はマップ表示処理を終了する。マップ表示処理の終了後は、ステップＳ２の処理が再度実行されるので、空間画像が表示されることとなる。
【０１３７】
以上のように、マップ表示処理によれば、空間画像が表示されている状態でマップ表示操作が行われたことに応じて、まず視線方向マップが表示される（ステップＳ２１およびＳ２７）。その後、視線方向マップが表示されている場合にマップ切換操作が行われたことに応じて（ステップＳ２３でＹｅｓ）、方向固定マップが表示される（ステップＳ２４およびＳ２８）。つまり、上記マップ表示処理によれば、空間画像が表示された後にまず視線方向マップを表示することで、仮想空間とマップとの対応をプレイヤにわかりやすく把握させた後、方向固定マップが表示される。したがって、上記マップ表示処理によれば、方向固定マップを表示する前に視線方向マップを表示することで、「仮想空間とマップとの対応がわかりにくい」という方向固定マップの欠点を補うことができるので、プレイヤに対してよりわかりやすくマップを提示することができる。
【０１３８】
また、上記マップ表示処理によれば、方向固定マップが表示されている場合にマップ切換操作が行われた（ステップＳ２３でＹｅｓ）ことに応じて、視線方向マップが表示される（ステップＳ２４およびＳ２７）。また、方向固定マップが表示されている場合に仮想空間表示操作が行われたことに応じて（ステップＳ２９でＹｅｓ）、空間画像が表示される（ステップＳ６）。したがって、上記マップ表示処理によれば、方向固定マップから視線方向マップへと切り替えることも可能であるし、方向固定マップから空間画像へと切り替えることも可能であるので、プレイヤは表示される画像の切り替えを容易に行うことができる。
【０１３９】
また、上記マップ表示処理によれば、視線方向マップと方向固定マップとの間で相互に表示を切り替えることができるので、プレイヤによりわかりやすくマップを提示することができる。さらに、上記マップ表示処理によれば、視線方向マップと方向固定マップのいずれが表示されている場合であっても、仮想空間表示操作が行われた場合（ステップＳ２９でＹｅｓ）には空間画像が表示される（ステップＳ６）。したがって、視線方向マップと方向固定マップのいずれが表示されている場合であってもプレイヤは１回の操作で空間画像に表示を切り替えることができるので、プレイヤはマップと空間画像との切替を容易に行うことができる。
【０１４０】
なお、上記マップ表示処理では示していないが、マップ表示処理においては、表示された視線方向マップおよび方向固定マップに対して、回転・拡大・縮小・移動（スクロール）等の操作を行うことができるようにしてもよい。すなわち、ＣＰＵ１０は、コントローラ５に対する入力に従って、表示されたマップの画像に対して回転・拡大・縮小・移動等を行って画面に表示するようにしてもよい。
【０１４１】
次に、目印設定操作が行われる場合に実行される処理を説明する。空間画像が表示されている状態においてプレイヤによって目印設定操作が行われた場合、図１４に示すステップＳ４における判定結果が肯定となり、ステップＳ１０およびＳ１１の処理が実行される。
【０１４２】
ステップＳ１０において、ＣＰＵ１０は目印オブジェクト５６を設置する。具体的には、ＣＰＵ１０は、カーソル５２が指し示す仮想空間内の位置を算出し、算出された位置を示すデータを目印オブジェクトデータ６９としてメインメモリに記憶する。なお、カーソル５２の表示位置は、上記ステップＳ５と同じ方法で算出することができる。ステップＳ１０の次にステップＳ１１の処理が実行される。
【０１４３】
ステップＳ１１において、ＣＰＵ１０は目印画像５７を設置する。具体的には、ＣＰＵ１０は、ステップＳ１０で記憶された目印オブジェクトデータ６９を読み出し、目印オブジェクトデータ６９が示す位置に対応するマップ上の位置を算出する。算出された（マップ上の）位置を示すデータは、目印画像データ７０としてメインメモリに記憶される。ステップＳ１１の次にステップＳ５の処理が実行される。
【０１４４】
なお、他の実施形態においては、ゲーム装置３は、設置された目印オブジェクト５６を消去することができるようにしてもよい。例えば、カーソル５２が目印オブジェクト５６を指し示している状態で所定の消去操作が行われた場合、ＣＰＵ１０は、カーソル５２が指し示す目印オブジェクト５６を表す目印オブジェクトデータ６９をメインメモリから削除する。さらに、ＣＰＵ１０は、削除された目印オブジェクトデータ６９に対応する目印画像データ７０をメインメモリから削除する。これによって、プレイヤは、仮想空間において設定した目印を個別に消去することができる。
【０１４５】
一方、マップが表示されている状態においてプレイヤによって目印設定操作が行われた場合には、図１７に示すステップＳ２５における判定結果が肯定となり、ステップＳ３０およびＳ３１の処理が実行される。
【０１４６】
ステップＳ３０において、ＣＰＵ１０は目印画像５７を設置する。具体的には、ＣＰＵ１０は、カーソル５４が指し示すマップ上の位置を算出し、算出された位置を示すデータを目印画像データ７０としてメインメモリに記憶する。なお、カーソル５４の表示位置は、上記ステップＳ２７およびＳ２８と同じ方法で算出することができる。ステップＳ３０の次にステップＳ３１の処理が実行される。
【０１４７】
ステップＳ３１において、ＣＰＵ１０は目印オブジェクト５６を設置する。具体的には、ＣＰＵ１０は、ステップＳ３０で記憶された目印画像データ７０を読み出し、目印画像データ７０が示す位置に対応する仮想空間内の位置を算出する。算出された（仮想空間内の）位置を示すデータは、目印オブジェクトデータ６９としてメインメモリに記憶される。ステップＳ３１の次にステップＳ２６の処理が実行される。
【０１４８】
なお、他の実施形態においては、ゲーム装置３は、設置された目印画像５７を消去することができるようにしてもよい。例えば、カーソル５４が目印画像５７を指し示している状態で所定の消去操作が行われた場合、ＣＰＵ１０は、カーソル５４が指し示す目印画像５７を表す目印画像データ７０をメインメモリから削除する。さらに、ＣＰＵ１０は、削除された目印画像データ７０に対応する目印オブジェクトデータ６９をメインメモリから削除する。これによって、プレイヤは、マップ上に設定した目印を個別に消去することができる。
【０１４９】
上記ステップＳ１０またはステップＳ３１の処理によって目印オブジェクトデータ６９が記憶された場合、その後に実行されるステップＳ５において、ＣＰＵ１０は、目印オブジェクトデータ６９をメインメモリから読み出し、目印オブジェクトデータ６９が示す位置に目印オブジェクト５６を設置する。その結果、ステップＳ６においては、目印オブジェクト５６が設置された空間画像（図１１）が表示されることとなる。なお、目印オブジェクト５６は、その奥に配置される他のオブジェクトをプレイヤが視認できるように、透明または半透明であることが好ましい。また、複数の目印オブジェクト５６が設置される場合には、各目印オブジェクト５６の色および／または形状が異なるようにすることが好ましい。
【０１５０】
また、本実施形態では、目印オブジェクト５６の高さは予め定められているものとするが、他の実施形態においては、ＣＰＵ１０は、目印オブジェクト５６の高さを周囲の状況やゲーム空間の種類に応じて変化させるようにしてもよい。例えば、ＣＰＵ１０は、目印オブジェクト５６の設置位置から所定距離内にあるオブジェクトの高さよりも高くなるように、目印オブジェクト５６の高さを設定してもよい。また例えば、ＣＰＵ１０は、ゲーム空間のステージ毎に目印オブジェクト５６の高さを設定するようにしてもよい。具体的には、山等の高いオブジェクトが存在するステージでは、目印オブジェクト５６を相対的に高く設定し、草原が広がるステージのように、他に高いオブジェクトが存在しないステージでは、目印オブジェクト５６を相対的に低く設定してもよい。
【０１５１】
また、上記ステップＳ１１またはステップＳ３０の処理によって目印画像データ７０が記憶された場合、その後に実行されるステップＳ２７またはＳ２８において、ＣＰＵ１０は、目印画像データ７０をメインメモリから読み出し、目印画像データ７０が示す位置に目印画像５７を表示する。これによって、マップ上に目印画像５７が表示されることとなる（図１２）。なお、複数の目印画像５７が設置される場合には、目印オブジェクト５６の場合と同様、各目印画像５７の色や形状を異なるようにすることが好ましい。
【０１５２】
なお、本実施形態においては、視線方向マップが表示される状態と方向固定マップが表示される状態の両方でプレイヤが目印画像５７を設定できるものとしたが、他の実施形態においては、ゲーム装置３は、いずれか一方の状態でのみプレイヤが目印画像５７を設定できるようにしてもよい。例えば、広い領域を表す方向固定マップが表示される場合には操作が難しいと考えられるため、ゲーム装置３は、目印設定操作を受け付けないようにし、狭い領域を表す視線方向マップが表示される場合にのみ目印設定操作を受け付けるようにしてもよい。
【０１５３】
以上、図１４に示したゲーム処理によれば、ゲーム装置３は、仮想空間を表すマップとして、視線方向マップと方向固定マップという２種類のマップを表示する。このように、２種類のマップを表示することによって、仮想空間を表すマップをプレイヤにとってわかりやすく提示することができる。
【０１５４】
[変形例]
（ゲーム空間以外の他の仮想空間に用いる変形例）
上記実施形態においては、本発明に係る情報処理装置または情報処理プログラムの一例としてゲーム装置３およびゲームプログラム６１を例に挙げ、仮想空間の一例としてゲーム空間をマップにより表す場合を例として説明した。ここで、本発明は、ゲーム空間に限らず、任意の仮想空間を表すマップを表示する場合に適用可能である。本発明は、例えば、地図を立体的に表した仮想空間と、地図を平面的に表したマップとを表示するナビゲーション装置に適用することも可能である。
【０１５５】
（各マップを表示するための条件に関する変形例）
上記実施形態においては、プレイヤによる指示があったことに応じてマップ（視線方向マップおよび方向固定マップ）が表示されたが、他の実施形態においては、マップは、所定の条件が満たされたことに応じて表示されればよい。例えば、ＣＰＵ１０は、プレイヤキャラクタ５１が所定のアイテムを取得（あるいは使用）したことやプレイヤキャラクタ５１が仮想空間内の特定の位置に移動してきたことに応じて、マップを表示するようにしてもよい。
【０１５６】
また、上記実施形態においては、空間画像が表示されている場合にプレイヤの指示があったことに応じて視線方向マップが表示され、視線方向マップが表示されている場合にプレイヤの指示があったことに応じて方向固定マップが表示された。ここで、他の実施形態においては、空間画像が表示されている場合にプレイヤの指示があったことに応じて視線方向マップが表示され、その後、所定時間が経過したことに応じて方向固定マップが表示されるようにしてもよい。つまり、ゲーム装置３は、方向固定マップを表示する場合、方向固定マップの前に視線方向マップを所定期間表示するようにしてもよい。また、このとき、ゲーム装置３は、方向固定マップを表示するための指示とは異なる指示に応じて、視線方向マップを継続して表示するようにしてもよい。
【０１５７】
（空間画像から視線方向マップへの切り替えに関する変形例）
上記実施形態においては、空間画像から視線方向マップへ画面が切り替えられる場合、仮想カメラ５９は、視線方向が仮想空間における鉛直下向きとなるように回転しつつ、上方向に移動するように制御された（図１５参照）。ここで、他の実施形態においては、上記の場合、ＣＰＵ１０は、上記の仮想カメラ５９の移動に加えて（あるいは、移動に代えて）、仮想カメラ５９による仮想空間の画像と視線方向マップの画像とを重畳して表示するようにしてもよい。具体的には、ＣＰＵ１０は、仮想空間の画像を時間の経過に従って次第に薄くなるように表示するとともに、視線方向マップを時間の経過に従って次第に濃くなるように表示してもよい。これによれば、空間画像からマップの画像へと表示が切り替わる際、ユーザは仮想空間とマップとの対応をよりわかりやすく把握することができる。なお、仮想空間の画像と視線方向マップの画像との重畳表示を開始するタイミングはどのようなタイミングでもよい。例えば、上記マップ表示操作が行われてから所定時間が経過したタイミングで重畳表示が開始されてもよいし、仮想カメラ５９の位置が所定位置に到達したタイミングで重畳表示が開始されてもよい。
【０１５８】
さらに、上記重畳表示が行われる場合、視線方向マップの画像は、仮想空間の画像に対応するように縮尺が変化することが好ましい。つまり、仮想空間の画像と視線方向マップの画像とが重畳して表示される期間において、仮想カメラ５９による仮想空間の画像が表す範囲と、視線方向マップが表す範囲とが一致することが好ましい。例えば、（仮想空間の画像が表す範囲が視線方向マップが表す範囲よりも小さい場合）ＣＰＵ１０は、仮想カメラ５９の移動によって仮想空間の画像がより広域を表すように変化することに合わせて、次第に縮尺を小さくしながら視線方向マップの画像を表示するようにしてもよい。これによれば、仮想空間の画像と視線方向マップの画像とをより正確に対応させることができ、仮想空間とマップとの対応をよりわかりやすくユーザに提示することができる。
【０１５９】
また、上記重畳表示が行われる場合、ＣＰＵ３１は、仮想カメラ５９の位置に合わせて視線方向マップの表示範囲を移動させるようにしてもよい。つまり、重畳表示が行われる間において視線方向マップ上における仮想カメラ５９の位置が視線方向マップの表示範囲内の所定位置に固定されるように、視線方向マップの表示範囲が移動されてもよい。これによれば、仮想空間の画像と視線方向マップの画像とをより正確に対応させることができ、仮想空間とマップとの対応をよりわかりやすくユーザに提示することができる。
【０１６０】
なお、上記重畳表示を行うための画像の合成（重畳）方法はどのような方法であってもよく、例えば、α値（透明度）を用いた方法であってもよい。すなわち、ＣＰＵ１０は、仮想空間の画像のα値を１から０へと次第に変化させるとともに、視線方向マップの画像のα値を０から１へと次第に変化させる（なお、両者のα値の和が１となるようにする）ことによって、上記重畳表示を行ってもよい。
【０１６１】
（視線方向マップから方向固定マップへの切り替えに関する変形例）
上記実施形態においては、視線方向マップと方向固定マップとを切り替える場合、一方のマップから他方のマップへ即座に表示が変更された。ここで、他の実施形態においては、上記の場合、ゲーム装置３は、一方のマップから他方のマップへとマップが連続的に変化するようにマップを表示してもよい。具体的には、上記実施形態において、視線方向マップから方向固定マップへ切り替えられる場合（マップデータ６８が更新された場合）、ＣＰＵ１０は、視線方向マップを徐々に回転させ、かつ、徐々に縮小して表示する。より具体的には、ＣＰＵ１０は、１フレーム毎に視線方向マップを所定角度ずつ回転させ、かつ、所定の割合だけ縮小させて表示する。上記のように視線方向マップが回転・縮小されることによって、最終的に方向固定マップが表示される。つまり、方向固定マップは、視線方向マップが回転・縮小された後で表示される。これによって、視線方向マップは、方向固定マップへと連続的に変化する。これによれば、視線方向マップと方向固定マップとの対応をよりわかりやすくプレイヤに提示することができる。なお、方向固定マップから視線方向マップへ切り替えられる場合、ＣＰＵ１０は、１フレーム毎に方向固定マップを所定角度ずつ回転させ、かつ、所定の割合だけ拡大させて表示することで、方向固定マップを視線方向マップへと連続的に変化させるようにしてもよい。また、他の実施形態においては、一方のマップから他方へのマップへと切り替える際、一方のマップを回転のみさせた（拡大縮小はさせない）後で他方のマップを表示するようにしてもよい。
【０１６２】
（各マップを表示する順序に関する変形例）
上記実施形態においては、ゲーム装置３は、空間画像からマップへと表示が切り替わる場合、まず視線方向マップを表示した（ステップＳ２１）。ここで、他の実施形態においては、空間画像からマップへと表示が切り替わる場合、ゲーム装置３は、空間画像が表示される前に表示されていたマップ（すなわち最後に表示されていたマップ）と同じ種類のマップを、まず表示するようにしてもよい。具体的には、マップ表示処理において、ＣＰＵ１０は、ステップＳ２１の処理を実行しないようにしてもよい。これによれば、前回にマップ表示処理が実行された時のマップデータ６８が次のマップ表示処理が実行されるまで保存されるので、上記ステップＳ２４の処理によって、空間画像が表示される前に表示されていたマップの情報を記憶しておくことができる。その結果、次にマップ表示処理が実行された場合には、記憶されていたマップ、すなわち、最後に表示されていたマップが最初に表示される。具体的には、空間画像が表示されており、かつ、視線方向マップを示すマップデータ６８が記憶されている場合、マップ表示操作が行われたことに応じて視線方向マップが表示される。また、空間画像が表示されており、かつ、方向固定マップを示すマップデータ６８が記憶されている場合、マップ表示操作が行われたことに応じて方向固定マップが表示される。なお、図１４に示すゲーム処理が実行されてから最初にマップ表示処理が実行される場合には、予め定められた種類のマップ（例えば、視線方向マップ）が最初に表示される。さらに、他の実施形態においては、前回に表示されたマップが表す仮想空間と、今回に表示するマップが表す仮想空間とが異なる場合（例えば、ステージが変更された場合）、マップデータ６８の内容をリセットし、同じ場合にはマップデータ６８を保存するようにしてもよい。
【０１６３】
（ゲームシステムに関する変形例）
上記実施形態においては、空間画像およびマップを表示するための一連の処理が単一の装置（ゲーム装置３）において実行される場合を説明したが、他の実施形態においては、一連の処理が複数の情報処理装置からなる情報処理システムにおいて実行されてもよい。例えば、端末側装置と、当該端末側装置とネットワークを介して通信可能なサーバ側装置とを含む情報処理システムにおいて、上記一連の処理のうちの一部の処理（例えば、上記ステップＳ５のゲーム進行処理等）がサーバ側装置によって実行されてもよい。また、上記情報処理システムにおいて、サーバ側のシステムは、複数の情報処理装置によって構成され、サーバ側で実行するべき処理を複数の情報処理装置が分担して実行してもよい。
【産業上の利用可能性】
【０１６４】
以上のように、本発明は、仮想空間を表すマップに関してよりわかりやすくマップを提示すること等を目的として、例えばゲーム装置やゲームプログラムとして利用することが可能である。
【符号の説明】
【０１６５】
１    ゲームシステム
２    テレビ
３    ゲーム装置
４    光ディスク
５    コントローラ
６    マーカ部
１０    ＣＰＵ
１１ｅ  内部メインメモリ
１２    外部メインメモリ
５１    プレイヤキャラクタ
５２    カーソル
５３    プレイヤマーク
５４    カーソル
５６    目印オブジェクト
５７    目印画像
６１    ゲームプログラム
６７    カメラデータ
６８    マップデータ
６９    目印オブジェクトデータ
７０    目印画像データ
【図１】
0005620719.tif 000002
【図２】
0005620719.tif 000003
【図３】
0005620719.tif 000004
【図４】
0005620719.tif 000005
【図５】
0005620719.tif 000006
【図６】
0005620719.tif 000007
【図７】
0005620719.tif 000008
【図８】
0005620719.tif 000009
【図９】
0005620719.tif 000010
【図１０】
0005620719.tif 000011
【図１１】
0005620719.tif 000012
【図１２】
0005620719.tif 000013
【図１３】
0005620719.tif 000014
【図１４】
0005620719.tif 000015
【図１５】
0005620719.tif 000016
【図１６】
0005620719.tif 000017
【図１７】
0005620719.tif 000018