(57)【要約】【課題】予め記憶された動作情報に基づいて動作する第１のオブジェクトと、プレイヤが操作する第２のオブジェクトとの協力プレイを円滑に進めることができるゲーム装置を提供すること。【解決手段】第１のオブジェクトが行う一連の動作を制御するための動作情報を記憶しておく。そして、上記動作情報に基づいて第１のオブジェクトの動作を制御する。このとき、プレイヤが操作する所定の入力装置からの操作信号に基づいて、第２のオブジェクトの動作を制御する。更に、第２のオブジェクトの動作が制御されているときに、第１のオブジェクトの動作内容に関する情報を画面に表示する。【選択図】図２６
2010131322.tif 000002
【特許請求の範囲】
【請求項１】
仮想ゲーム空間内に配置された第１のオブジェクトおよび第２のオブジェクトの動作を制御するゲーム装置のコンピュータに実行させるゲームプログラムであって、
前記コンピュータを、
前記第１のオブジェクトが行う一連の動作を制御するための動作情報をメモリに記憶する動作情報記憶手段と、
前記動作情報記憶手段によって記憶された動作情報に基づいて、前記第１のオブジェクトの動作を制御する第１オブジェクト動作再現手段と、
前記第１オブジェクト動作再現手段によって前記第１のオブジェクトの動作が制御されているときに、プレイヤが操作する所定の入力装置からの操作信号を受け付ける操作受付手段と、
前記操作受付手段によって受け付けられた操作信号に基づいて、前記第２のオブジェクトの動作を制御する第２オブジェクト制御手段と、
前記第２オブジェクト制御手段によって前記第２のオブジェクトの動作が制御されているときに、前記第１オブジェクト動作再現手段によって制御されている前記第１のオブジェクトの動作内容に関する情報を画面に表示する動作情報表示手段として機能させる、ゲームプログラム。
【請求項２】
前記動作情報表示手段は、前記第１のオブジェクトが所定の動作を行うタイミングを示す情報を表示する、請求項１に記載のゲームプログラム。
【請求項３】
前記動作情報表示手段は、前記第１オブジェクト動作再現手段によって動作が制御されている前記第１オブジェクトが現時点から所定の動作を行うまでの時間が認識可能な情報を表示する、請求項１に記載のゲームプログラム。
【請求項４】
前記動作情報表示手段は、
前記動作情報で示される前記第１のオブジェクトの一連の動作の進行状況を示す現在時点画像と、
前記第１のオブジェクトが所定の動作を行う時点に対応する画面上の位置に当該所定の動作が行われることを示すタイミング情報画像とを前記第１のオブジェクトの動作内容に関する情報として表示する、請求項１に記載のゲームプログラム。
【請求項５】
前記動作情報表示手段は、
前記動作情報で示される前記第１のオブジェクトの一連の動作にかかる時間をグラフ状で示した総時間情報画像と、
前記動作情報で示される前記第１のオブジェクトの一連の動作の進行状況を示す現在時点画像と、
前記第１のオブジェクトが所定の動作を行う時点に対応する前記総時間情報上の位置に当該所定の動作が行われることを示すタイミング情報画像とを前記第１のオブジェクトの動作内容に関する情報として表示する、請求項１に記載のゲームプログラム。
【請求項６】
前記動作情報表示手段は、前記第１オブジェクト動作再現手段によって動作が制御されている前記第１のオブジェクトの姿勢を示す２次元画像を前記現在時点画像として表示する、請求項５に記載のゲームプログラム。
【請求項７】
前記ゲームプログラムは、前記コンピュータを、
前記仮想ゲーム空間を撮像する第１の仮想カメラとは異なる第２の仮想カメラにより前記第１のオブジェクトを撮像する第１オブジェクト撮像手段と、
前記第１オブジェクト撮像手段によって撮像されて得られた画像データに基づいて、前記２次元画像を生成する２次元画像生成手段として更に機能させる請求項６に記載のゲームプログラム。
【請求項８】
前記ゲームプログラムは、前記コンピュータを、
前記プレイヤが操作する所定の入力装置からの操作信号に基づいて前記第１のオブジェクトの動作を制御する第１オブジェクト操作手段と、
前記第１オブジェクト操作手段によって制御される前記第１のオブジェクトの動作内容を示すデータを前記動作情報として前記動作情報記憶手段に記憶させる動作情報生成手段として更に機能させる、請求項１に記載のゲームプログラム。
【請求項９】
前記第１オブジェクト操作手段は、前記プレイヤが操作する所定の入力装置からの操作信号に基づいて、前記第１のオブジェクトが少なくとも所定の動作を行うよう前記第１のオブジェクトの動作を制御する、請求項８に記載のゲームプログラム。
【請求項１０】
前記動作情報生成手段は、前記第１オブジェクト操作手段によって前記第１のオブジェクトが制御されているときの前記所定の入力装置からの操作信号の内容を示す操作データを前記動作情報として前記動作情報記憶手段に記憶させる、請求項８に記載のゲームプログラム。
【請求項１１】
前記ゲームプログラムは、前記コンピュータを、前記第１オブジェクト動作再現手段によって制御されている前記第１のオブジェクトが所定の動作を行ったタイミングと、前記第２オブジェクト制御手段によって制御されている前記第２のオブジェクトが所定の動作を行ったタイミングとが所定の条件を満たしたときに所定のゲーム処理を実行する、ゲーム処理手段として更に機能させる、請求項１に記載のゲームプログラム。
【請求項１２】
前記ゲームプログラムは、前記コンピュータを、前記第１オブジェクト動作再現手段によって前記第１のオブジェクトの動作が制御されているときに、当該第１のオブジェクトの動作の制御を中止する中止手段として更に機能させる、請求項１に記載のゲーム装置。
【請求項１３】
前記所定の動作には、複数種類の動作があり、
前記タイミング情報画像は、前記複数種類の動作の内容に応じて異なる画像である、請求項４に記載のゲームプログラム。
【請求項１４】
前記ゲームプログラムは、前記コンピュータを、
前記動作情報記憶手段によって記憶されている動作情報に基づいて、前記第１のオブジェクトの移動軌跡を前記画面に表示する移動軌跡表示手段として更に機能させる、請求項１に記載のゲームプログラム。
【請求項１５】
前記ゲームプログラムは、前記コンピュータを、
前記第１オブジェクト動作再現手段による前記第１のオブジェクトの動作の制御が終了した後に、再度前記第１オブジェクト動作再現手段による前記第１のオブジェクトの動作の制御を開始する第１オブジェクト動作再現開始手段として更に機能させる、請求項１に記載のゲームプログラム。
【請求項１６】
前記ゲームプログラムは、前記コンピュータを、
前記第１オブジェクト動作再現手段によって制御されている前記第１のオブジェクトが所定の動作を行ったタイミングと、前記第２オブジェクト制御手段によって制御されている前記第２のオブジェクトが所定の動作を行ったタイミングとが所定の条件を満たしたか否かを判定するタイミング判定手段と、
前記第１オブジェクト動作再現手段によって前記第１のオブジェクトの動作が制御されている間に、前記タイミング判定手段によって前記所定の条件を満たしたと判定されなかったときには、前記第１オブジェクト動作再現手段による前記第１のオブジェクトの動作の制御が終了した後に、再度前記第１オブジェクト動作再現手段による前記第１のオブジェクトの動作の制御を開始する第１オブジェクト動作再現開始手段と、
前記第１オブジェクト動作再現手段によって前記第１のオブジェクトの動作が制御されている間に、前記タイミング判定手段によって前記所定の条件を満たしたと判定されたときには、所定のゲーム処理を実行するゲーム処理手段として更に機能させる、請求項１に記載のゲームプログラム。
【請求項１７】
前記動作情報生成手段は、プレイヤが操作する所定の入力装置からの操作信号が所定の操作内容を示すとき、前記第１オブジェクト操作手段によって制御される前記第１のオブジェクトの動作内容を示すデータを前記動作情報として前記動作情報記憶手段に記憶させることを開始する、請求項８に記載のゲームプログラム。
【請求項１８】
仮想ゲーム空間内に配置された第１のオブジェクトおよび第２のオブジェクトの動作を制御するゲーム装置であって、
前記第１のオブジェクトが行う一連の動作を制御するための動作情報を記憶する動作情報記憶手段と、
前記動作情報記憶手段によって記憶されている動作情報に基づいて、前記第１のオブジェクトの動作を制御する第１オブジェクト動作再現手段と、
前記第１オブジェクト動作再現手段によって前記第１のオブジェクトの動作が制御されているときに、プレイヤが操作する所定の入力装置からの操作信号を受け付ける操作受付手段と、
前記操作受付手段によって受け付けられた操作信号に基づいて第２のオブジェクトの動作を制御する第２オブジェクト制御手段と、
前記第２オブジェクト制御手段によって前記第２のオブジェクトが制御されているときに、前記第１オブジェクト動作再現手段によって制御されている前記第１のオブジェクトの動作内容に関する情報を画面に表示する動作情報表示手段とを備える、ゲーム装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想ゲーム空間内に配置されたオブジェクトの動作を制御するゲームプログラムおよびゲーム装置に関し、より特定的には、仮想ゲーム空間内に配置された第１のオブジェクトおよび第２のオブジェクトの動作を制御するゲームプログラムおよびゲーム装置に関する。
【背景技術】
【０００２】
従来より、プレイヤのプレイに関する履歴情報をあるゲームプレイにおいて記録し、別のゲームプレイにおいてこの履歴情報を再生することができるゲーム装置が知られている（例えば、特許文献１）。当該ゲーム装置では、鳥瞰画面で戦闘機を操作して楽しむシューティングゲームをプレイすることができる。そして、プレイヤは、第１のゲームプレイにおいて、プレイヤが操作する戦闘機の位置座標や弾の発射タイミングを記録している。そして、第１のゲームプレイとは異なる第２のゲームプレイにおいて、上記記録した情報に基づいて第１の戦闘機の動きを再現させると共に、プレイヤ自身は第２の戦闘機を操作することで、プレイヤは一人だけであっても、疑似的に協力プレイを楽しむことが可能となっている。
【特許文献１】特開平９−２３４２８５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、上述したようなゲーム装置においては、従来から以下に示す問題点があった。すなわち、上記第２のゲームプレイでは、第１のゲームプレイで記録した戦闘機の移動や攻撃を再現してはいるが、戦闘機の動き、すなわち、いつ、どの方向に移動するかや、いつ攻撃を行うかについて、プレイヤは認識することができない。そのため、プレイヤは、第２のゲームプレイで上記疑似的な協力プレイを行うに際して、第１のゲームプレイで操作した内容を自分で記憶しておく必要があり、また、第２のゲームプレイにおいて、上記第２の戦闘機の操作を行いつつも、第１のゲームプレイでの動きを再現中の第１の戦闘機の動きを目で追って、その動きを把握しておく必要が生じていた。その結果、第２のゲームプレイにおいて、第１の戦闘機との協力プレイを円滑に進めることができず、ゲームの興趣性を下げるという問題があった。
【０００４】
それ故に、本発明の目的は、予め記憶された動作情報に基づいて動作する第１のオブジェクトと、プレイヤが操作する第２のオブジェクトとの協力プレイを円滑に進めることができるゲームプログラムおよびゲーム装置を提供することである。
【課題を解決するための手段】
【０００５】
本発明は、上記の課題を解決するために、以下の構成を採用した。なお、括弧内の参照符号および補足説明等は、本発明の理解を助けるために後述する実施形態との対応関係の一例を示したものであって、本発明を何ら限定するものではない。
【０００６】
第１の発明は、仮想ゲーム空間内に配置された第１のオブジェクトおよび第２のオブジェクトの動作を制御するゲーム装置のコンピュータに実行させるゲームプログラムであって、動作情報記憶手段と、第１オブジェクト動作再現手段と、操作受付手段と、第２オブジェクト制御手段と、動作情報表示手段とを備える。動作情報記憶手段は、第１のオブジェクトが行う一連の動作を制御するための動作情報を記憶する。第１オブジェクト動作再現手段は、動作情報記憶手段によって記憶された動作情報に基づいて、第１のオブジェクトの動作を制御する。操作受付手段は、第１オブジェクト動作再現手段によって第１のオブジェクトの動作が制御されているときに、プレイヤが操作する所定の入力装置からの操作信号を受け付ける。第２オブジェクト制御手段は、操作受付手段によって受け付けられた操作信号に基づいて、第２のオブジェクトの動作を制御する。動作情報表示手段は、第２オブジェクト制御手段によって第２のオブジェクトの動作が制御されているときに、第１オブジェクト動作再現手段によって制御されている第１のオブジェクトの動作内容に関する情報を画面に表示する。
【０００７】
第１の発明によれば、プレイヤの操作に応じて第２のオブジェクトが制御されているときに動作情報に基づいて動作する第１のオブジェクトの動作に関する情報が画面に表示されるため、当該第１のオブジェクトとプレイヤが操作する第２のオブジェクトとの協力プレイを円滑に行わせることが可能となる。
【０００８】
第２の発明は、第１の発明において、動作情報表示手段は、第１のオブジェクトが所定の動作を行うタイミングを示す情報を表示する。
【０００９】
第２の発明によれば、第１のオブジェクトが所定の動作を行うタイミングに合わせてプレイヤが第２のオブジェクトに所定の動作を行わせることが可能となる。
【００１０】
第３の発明は、第１の発明において、動作情報表示手段は、第１オブジェクト動作再現手段によって動作が制御されている第１オブジェクトが現時点から所定の動作を行うまでの時間が認識可能な情報を表示する。
【００１１】
第３の発明によれば、第１のオブジェクトが所定の動作を行うタイミングをプレイヤに容易に把握させることが可能となる。
【００１２】
第４の発明は、第１の発明において、動作情報表示手段は、動作情報で示される第１のオブジェクトの一連の動作の進行状況を示す現在時点画像と、第１のオブジェクトが所定の動作を行う時点に対応する画面上の位置に当該所定の動作が行われることを示すタイミング情報画像とを第１のオブジェクトの動作内容に関する情報として表示する。
【００１３】
第４の発明によれば、現在の時点と、第１のオブジェクトが所定の動作を行うタイミングとをプレイヤに容易に把握させることが可能となる。
【００１４】
第５の発明は、第１の発明において、動作情報表示手段は、動作情報で示される第１のオブジェクトの一連の動作にかかる時間をグラフ状で示した総時間情報画像と、動作情報で示される第１のオブジェクトの一連の動作の進行状況を示す現在時点画像と、第１のオブジェクトが所定の動作を行う時点に対応する総時間情報上の位置に当該所定の動作が行われることを示すタイミング情報画像とを第１のオブジェクトの動作内容に関する情報として表示する。
【００１５】
第５の発明によれば、第１のオブジェクトの動作の進行状況をプレイヤにより把握させやすくすることができる。
【００１６】
第６の発明は、第５の発明において、動作情報表示手段は、第１オブジェクト動作再現手段によって動作が制御されている第１のオブジェクトの姿勢を示す２次元画像を現在時点画像として表示する。
【００１７】
第６の発明によれば、第１のオブジェクトの動作内容を直感的に把握させることが可能となる。
【００１８】
第７の発明は、第６の発明において、ゲームプログラムは、コンピュータを、第１オブジェクト撮像手段と、２次元画像生成手段として更に機能させる。第１オブジェクト撮像手段は、仮想ゲーム空間を撮像する第１の仮想カメラとは異なる第２の仮想カメラにより第１のオブジェクトを撮像する。２次元画像生成手段は、第１オブジェクト撮像手段によって撮像されて得られた画像データに基づいて、２次元画像を生成する。
【００１９】
第７の発明によれば、第１のオブジェクトの動作内容を直感的に把握させることが可能となる。
【００２０】
第８の発明は、第１の発明において、ゲームプログラムは、コンピュータを、第１オブジェクト操作手段と、動作情報生成手段として更に機能させる。第１オブジェクト操作手段は、プレイヤが操作する所定の入力装置からの操作信号に基づいて第１のオブジェクトの動作を制御する。動作情報生成手段は、第１オブジェクト操作手段によって制御される第１のオブジェクトの動作内容を示すデータを動作情報として動作情報記憶手段に記憶させる。
【００２１】
第９の発明は、第８の発明において、第１オブジェクト操作手段は、プレイヤが操作する所定の入力装置からの操作信号に基づいて、第１のオブジェクトが少なくとも所定の動作を行うよう第１のオブジェクトの動作を制御する。
【００２２】
第８乃至第９の発明によれば、プレイヤが所望する動作を第１オブジェクトに行わせることが可能となり、ゲームの興趣性を高めることができる。
【００２３】
第１０の発明は、第８の発明において、動作情報生成手段は、第１オブジェクト操作手段によって第１のオブジェクトが制御されているときの所定の入力装置からの操作信号の内容を示す操作データを動作情報として動作情報記憶手段に記憶する。
【００２４】
第１０の発明によれば、第１のオブジェクトの動作内容を記憶するために必要となるメモリの容量を軽減することができる。
【００２５】
第１１の発明は、第１の発明において、ゲームプログラムは、コンピュータを、第１オブジェクト動作再現手段によって制御されている第１のオブジェクトが所定の動作を行ったタイミングと、第２オブジェクト制御手段によって制御されている第２のオブジェクトが所定の動作を行ったタイミングとが所定の条件を満たしたときに所定のゲーム処理を実行するゲーム処理手段として更に機能させる。
【００２６】
第１１の発明によれば、ゲームの興趣性をより高くすることができる。
【００２７】
第１２の発明は、第１の発明において、ゲームプログラムは、コンピュータを、第１オブジェクト動作再現手段によって第１のオブジェクトの動作が制御されているときに、当該第１のオブジェクトの動作の制御を中止する中止手段を更に備える。
【００２８】
第１２の発明によれば、第１のオブジェクトの動作中にプレイヤが第２のオブジェクトの操作に失敗したときに、速やかに第２のオブジェクトの操作をやりなおすことが可能となる。
【００２９】
第１３の発明は、第４の発明において、所定の動作には、複数種類の動作がある。そして、タイミング情報画像は、複数種類の動作の内容に応じて異なる画像である。
【００３０】
第１３の発明によれば、多様な動作を用いた協力プレイが可能となり、ゲームの興趣性をより高めることができる。
【００３１】
第１４の発明は、第１の発明において、ゲームプログラムは、コンピュータを、動作情報記憶手段によって記憶されている動作情報に基づいて、第１のオブジェクトの移動軌跡を画面に表示する移動軌跡表示手段として更に機能させる。
【００３２】
第１４の発明によれば、第１のオブジェクトがどのように移動したかをプレイヤに把握させることができ、協力プレイをより円滑に行わせることができる。
【００３３】
第１５の発明は、第１の発明において、ゲームプログラムは、コンピュータを、第１オブジェクト動作再現手段による第１のオブジェクトの動作の制御が終了した後に、再度第１オブジェクト動作再現手段による第１のオブジェクトの動作の制御を開始する第１オブジェクト動作再現開始手段として更に機能させる。
【００３４】
第１５の発明によれば、第１のオブジェクトの動作の制御を再開させたい場合にプレイヤが所定の操作を行う必要がないため、プレイヤの利便性を高めることができる。
【００３５】
第１６の発明は、ゲームプログラムは、コンピュータを、タイミング判定手段と、第１オブジェクト動作再現開始手段と、ゲーム処理手段として更に機能させる。タイミング判定手段は、第１オブジェクト動作再現手段によって制御されている第１のオブジェクトが所定の動作を行ったタイミングと、第２オブジェクト制御手段によって制御されている第２のオブジェクトが所定の動作を行ったタイミングとが所定の条件を満たしたか否かを判定する。第１オブジェクト動作再現開始手段は、第１オブジェクト動作再現手段によって第１のオブジェクトの動作が制御されている間に、タイミング判定手段によって所定の条件を満たしたと判定されなかったときには、第１オブジェクト動作再現手段による第１のオブジェクトの動作の制御が終了した後に、再度第１オブジェクト動作再現手段による第１のオブジェクトの動作の制御を開始する。ゲーム処理手段は、第１オブジェクト動作再現手段によって第１のオブジェクトの動作が制御されている間に、タイミング判定手段によって所定の条件を満たしたと判定されたときには、所定のゲーム処理を実行する。
【００３６】
第１６の発明によれば、プレイヤが協力プレイに失敗したときのみ、第１のオブジェクトの動作を繰り返し再現でき、利便性を高めることができる。
【００３７】
第１７の発明は、第８の発明において、動作情報生成手段は、プレイヤが操作する所定の入力装置からの操作信号が所定の操作内容を示すとき、第１オブジェクト操作手段によって制御される第１のオブジェクトの動作内容を示すデータを動作情報として動作情報記憶手段に記憶させることを開始する。
【００３８】
第１７の発明によれば、ゲーム中の任意の時点から、第１オブジェクトの動作内容を記録することができるため、動作内容の記録の自由度が増す。
【００３９】
第１８の発明は、仮想ゲーム空間内に配置された第１のオブジェクトおよび第２のオブジェクトの動作を制御するゲーム装置であって、動作情報記憶手段と、第１オブジェクト動作再現手段と、操作受付手段と、第２オブジェクト制御手段と、動作情報表示手段とを備える。動作情報記憶手段は、第１のオブジェクトが行う一連の動作を制御するための動作情報を記憶する。第１オブジェクト動作再現手段は、動作情報記憶手段に記憶されている動作情報に基づいて第１のオブジェクトの動作を制御する。操作受付手段は、第１オブジェクト動作再現手段によって第１のオブジェクトの動作が制御されているときに、プレイヤが操作する所定の入力装置からの操作信号を受け付ける。第２オブジェクト制御手段は、操作受付手段によって受け付けられた操作信号に基づいて第２のオブジェクトの動作を制御する。動作情報表示手段は、第１オブジェクト動作再現手段によって制御されている第１のオブジェクトの動作内容に関する情報を画面に表示する。
【００４０】
第１８の発明によれば、上記第１の発明と同様の効果を得ることができる。
【発明の効果】
【００４１】
本発明によれば、第１のオブジェクトの動作に関する情報が画面に表示され、その動作内容をプレイヤに事前に把握させることができる。これにより、当該第１のオブジェクトと、プレイヤが操作する第２のオブジェクトとの協力プレイを円滑に進めさせることができる。
【発明を実施するための最良の形態】
【００４２】
以下、本発明の実施の形態について、図面を参照して説明する。尚、この実施例により本発明が限定されるものではない。
【００４３】
（ゲームシステムの全体構成）
図１を参照して、本発明の実施形態に係るゲーム装置を含むゲームシステム１について説明する。図１は、ゲームシステム１の外観図である。以下、据置型のゲーム装置を一例にして、本実施形態のゲーム装置およびゲームプログラムについて説明する。図１において、ゲームシステム１は、テレビジョン受像器（以下、単に「テレビ」と記載する）２、ゲーム装置本体３、光ディスク４、コントローラ７、およびマーカ部８を含む。本システムは、コントローラ７を用いたゲーム操作に基づいてゲーム装置本体３でゲーム処理を実行するものである。
【００４４】
ゲーム装置本体３には、当該ゲーム装置本体３に対して交換可能に用いられる情報記憶媒体の一例である光ディスク４が脱着可能に挿入される。光ディスク４には、ゲーム装置本体３において実行されるためのゲームプログラムが記録されている。ゲーム装置本体３の前面には光ディスク４の挿入口が設けられている。ゲーム装置本体３は、挿入口に挿入された光ディスク４に記憶されたゲームプログラムを読み出して実行することによってゲーム処理を実行する。
【００４５】
ゲーム装置本体３には、表示装置の一例であるテレビ２が接続コードを介して接続される。テレビ２には、ゲーム装置本体３において実行されるゲーム処理の結果得られるゲーム画像が表示される。また、テレビ２の画面の周辺（図１では画面の上側）には、マーカ部８が設置される。マーカ部８は、その両端に２つのマーカ８Ｒおよび８Ｌを備えている。マーカ８Ｒ（マーカ８Ｌも同様）は、具体的には１以上の赤外ＬＥＤであり、テレビ２の前方に向かって赤外光を出力する。マーカ部８はゲーム装置本体３に接続されており、ゲーム装置本体３はマーカ部８が備える各赤外ＬＥＤの点灯を制御することが可能である。
【００４６】
コントローラ７は、当該コントローラ７自身に対して行われた操作の内容、すなわち操作信号を示す操作データをゲーム装置本体３に与える入力装置である。コントローラ７とゲーム装置本体３とは無線通信によって接続される。本実施形態では、コントローラ７とゲーム装置本体３との間の無線通信には例えばＢｌｕｅｔｏｏｔｈ（ブルートゥース）（登録商標）の技術が用いられる。なお、他の実施形態においてはコントローラ７とゲーム装置本体３とは有線で接続されてもよい。
【００４７】
（ゲーム装置本体３の内部構成）
次に、図２を参照して、ゲーム装置本体３の内部構成について説明する。図２は、ゲーム装置本体３の構成を示すブロック図である。ゲーム装置本体３は、ＣＰＵ１０、システムＬＳＩ１１、外部メインメモリ１２、ＲＯＭ／ＲＴＣ１３、ディスクドライブ１４、およびＡＶ−ＩＣ１５等を有する。
【００４８】
ＣＰＵ１０は、光ディスク４に記憶されたゲームプログラムを実行することによってゲーム処理を実行するものであり、ゲームプロセッサとして機能する。ＣＰＵ１０は、システムＬＳＩ１１に接続される。システムＬＳＩ１１には、ＣＰＵ１０の他、外部メインメモリ１２、ＲＯＭ／ＲＴＣ１３、ディスクドライブ１４およびＡＶ−ＩＣ１５が接続される。システムＬＳＩ１１は、それに接続される各構成要素間のデータ転送の制御、表示すべき画像の生成、外部装置からのデータの取得等の処理を行う。システムＬＳＩ１１の内部構成については後述する。揮発性の外部メインメモリ１２は、光ディスク４から読み出されたゲームプログラムや、フラッシュメモリ１７から読み出されたゲームプログラム等のプログラムを記憶したり、各種データを記憶したりするものであり、ＣＰＵ１０のワーク領域やバッファ領域として用いられる。ＲＯＭ／ＲＴＣ１３は、ゲーム装置本体３の起動用のプログラムが組み込まれるＲＯＭ（いわゆるブートＲＯＭ）と、時間をカウントするクロック回路（ＲＴＣ：Ｒｅａｌ  Ｔｉｍｅ  Ｃｌｏｃｋ）とを有する。ディスクドライブ１４は、光ディスク４からプログラムデータやテクスチャデータ等を読み出し、後述する内部メインメモリ１１ｅまたは外部メインメモリ１２に読み出したデータを書き込む。
【００４９】
また、システムＬＳＩ１１には、入出力プロセッサ１１ａ、ＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｏｒ  Ｕｎｉｔ）１１ｂ、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）１１ｃ、ＶＲＡＭ１１ｄ、および内部メインメモリ１１ｅが設けられる。図示は省略するが、これらの構成要素１１ａ〜１１ｅは内部バスによって互いに接続される。
【００５０】
ＧＰＵ１１ｂは、描画手段の一部を構成し、ＣＰＵ１０からのグラフィクスコマンド（作画命令）に従って画像を生成する。より具体的には、ＧＰＵ１１ｂは、当該グラフィクスコマンドに従って３Ｄグラフィックスの表示に必要な計算処理、例えば、レンダリングの前処理にあたる３Ｄ座標から２Ｄ座標への座標変換などの処理や、テクスチャの張り込みなどの最終的なレンダリング処理を行うことで、ゲーム画像データを生成する。ここで、ＣＰＵ１０は、グラフィクスコマンドに加えて、ゲーム画像データの生成に必要な画像生成プログラムをＧＰＵ１１ｂに与える。ＶＲＡＭ１１ｄは、ＧＰＵ１１ｂがグラフィクスコマンドを実行するために必要なデータ（ポリゴンデータやテクスチャデータ等のデータ）を記憶する。画像が生成される際には、ＧＰＵ１１ｂは、ＶＲＡＭ１１ｄに記憶されたデータを用いて画像データを作成する。
【００５１】
ＤＳＰ１１ｃは、オーディオプロセッサとして機能し、内部メインメモリ１１ｅや外部メインメモリ１２に記憶されるサウンドデータや音波形（音色）データを用いて、音声データを生成する。また、内部メインメモリ１１ｅは、外部メインメモリ１２と同様に、プログラムや各種データを記憶するものであり、ＣＰＵ１０のワーク領域やバッファ領域として用いられる。
【００５２】
上述のように生成された画像データおよび音声データは、ＡＶ−ＩＣ１５によって読み出される。ＡＶ−ＩＣ１５は、読み出した画像データをＡＶコネクタ１６を介してテレビ２に出力するとともに、読み出した音声データを、テレビ２に内蔵されるスピーカ２ａに出力する。これによって、画像がテレビ２に表示されるとともに音がスピーカ２ａから出力される。
【００５３】
入出力プロセッサ（Ｉ／Ｏプロセッサ）１１ａは、それに接続される構成要素との間でデータの送受信を実行したり、外部装置からのデータのダウンロードを実行したりする。入出力プロセッサ１１ａは、フラッシュメモリ１７、無線通信モジュール１８、無線コントローラモジュール１９、拡張コネクタ２０、およびメモリカード用コネクタ２１に接続される。無線通信モジュール１８にはアンテナ２２が接続され、無線コントローラモジュール１９にはアンテナ２３が接続される。
【００５４】
入出力プロセッサ１１ａは、無線通信モジュール１８およびアンテナ２２を介してネットワークに接続し、ネットワークに接続される他のゲーム装置や各種サーバと通信することができる。入出力プロセッサ１１ａは、定期的にフラッシュメモリ１７にアクセスし、ネットワークへ送信する必要があるデータの有無を検出し、当該データが有る場合には、無線通信モジュール１８およびアンテナ２２を介してネットワークに送信する。また、入出力プロセッサ１１ａは、他のゲーム装置から送信されてくるデータやダウンロードサーバからダウンロードしたデータを、ネットワーク、アンテナ２２および無線通信モジュール１８を介して受信し、受信したデータをフラッシュメモリ１７に記憶する。ＣＰＵ１０はゲームプログラムを実行することにより、フラッシュメモリ１７に記憶されたデータを読み出してゲームプログラムで利用する。フラッシュメモリ１７には、ゲーム装置本体３と他のゲーム装置や各種サーバとの間で送受信されるデータの他、ゲーム装置本体３を利用してプレイしたゲームのセーブデータ（ゲームの結果データまたは途中データ）が記憶されてもよい。
【００５５】
また、入出力プロセッサ１１ａは、コントローラ７から送信される操作データをアンテナ２３および無線コントローラモジュール１９を介して受信し、内部メインメモリ１１ｅまたは外部メインメモリ１２のバッファ領域に記憶（一時記憶）する。
【００５６】
さらに、入出力プロセッサ１１ａには、拡張コネクタ２０およびメモリカード用コネクタ２１が接続される。拡張コネクタ２０は、ＵＳＢやＳＣＳＩのようなインターフェースのためのコネクタであり、外部記憶媒体のようなメディアを接続したり、他のコントローラのような周辺機器を接続したり、有線の通信用コネクタを接続することによって無線通信モジュール１８に替えてネットワークとの通信を行ったりすることができる。メモリカード用コネクタ２１は、メモリカードのような外部記憶媒体を接続するためのコネクタである。例えば、入出力プロセッサ１１ａは、拡張コネクタ２０やメモリカード用コネクタ２１を介して、外部記憶媒体にアクセスし、データを保存したり、データを読み出したりすることができる。
【００５７】
ゲーム装置本体３には、電源ボタン２４、リセットボタン２５、およびイジェクトボタン２６が設けられる。電源ボタン２４およびリセットボタン２５は、システムＬＳＩ１１に接続される。電源ボタン２４がオンにされると、ゲーム装置本体３の各構成要素に対して、図示しないＡＣアダプタを経て電源が供給される。また、一旦電源がオンにされた状態で、再度電源ボタン２４を押すと、低電力スタンバイモードへの移行が行われる。この状態でも、ゲーム装置本体３への通電は行われているため、インターネット等のネットワークに常時接続しておくことができる。なお、一旦電源がオンにされた状態で、電源をオフにしたいときは、電源ボタン２４を所定時間以上長押しすることで、電源をオフとすることが可能である。リセットボタン２５が押されると、システムＬＳＩ１１は、ゲーム装置本体３の起動プログラムを再起動する。イジェクトボタン２６は、ディスクドライブ１４に接続される。イジェクトボタン２６が押されると、ディスクドライブ１４から光ディスク４が排出される。
【００５８】
次に、図３および図４を参照して、コントローラ７について説明する。なお、図３は、コントローラ７の上面後方から見た斜視図である。図４は、コントローラ７を下面前方から見た斜視図である。
【００５９】
図３および図４において、コントローラ７は、ハウジング７１と、当該ハウジング７１の表面に設けられた複数個の操作ボタン等で構成される操作部７２とを備える。本実施例のハウジング７１は、その前後方向を長手方向とした略直方体形状を有しており、全体として大人や子供の片手で把持可能な大きさであり、例えばプラスチック成型によって形成されている。
【００６０】
ハウジング７１上面の中央前面側に、十字キー７２ａが設けられる。この十字キー７２ａは、十字型の４方向プッシュスイッチであり、４つの方向（前後左右）に対応する操作部分が十字の突出片にそれぞれ９０°間隔で配置される。プレイヤが十字キー７２ａのいずれかの操作部分を押下することによって前後左右いずれかの方向を選択される。例えばプレイヤが十字キー７２ａを操作することによって、仮想ゲーム世界に登場するプレイヤオブジェクト等の移動方向を指示したり、複数の選択肢から選択指示したりすることができる。
【００６１】
なお、十字キー７２ａは、上述したプレイヤの方向入力操作に応じて操作信号を出力する操作部であるが、他の態様の操作部でもかまわない。例えば、十字方向に４つのプッシュスイッチを配設し、プレイヤによって押下されたプッシュスイッチに応じて操作信号を出力する操作部を設けてもかまわない。さらに、上記４つのプッシュスイッチとは別に、上記十字方向が交わる位置にセンタスイッチを配設し、４つのプッシュスイッチとセンタスイッチとを複合した操作部を設けてもかまわない。また、ハウジング７１上面から突出した傾倒可能なスティック（いわゆる、ジョイスティック）を倒すことによって、傾倒方向に応じて操作信号を出力する操作部を上記十字キー７２ａの代わりに設けてもかまわない。さらに、水平移動可能な円盤状部材をスライドさせることによって、当該スライド方向に応じた操作信号を出力する操作部を、上記十字キー７２ａの代わりに設けてもかまわない。また、タッチパッドを、上記十字キー７２ａの代わりに設けてもかまわない。
【００６２】
ハウジング７１上面の十字キー７２ａより後面側に、複数の操作ボタン７２ｂ〜７２ｇが設けられる。操作ボタン７２ｂ〜７２ｇは、プレイヤがボタン頭部を押下することによって、それぞれの操作ボタン７２ｂ〜７２ｇに割り当てられた操作信号を出力する操作部である。例えば、操作ボタン７２ｂ〜７２ｄには、１番ボタン、２番ボタン、およびＡボタン等としての機能が割り当てられる。また、操作ボタン７２ｅ〜７２ｇには、マイナスボタン、ホームボタン、およびプラスボタン等としての機能が割り当てられる。これら操作ボタン７２ａ〜７２ｇは、ゲーム装置本体３が実行するゲームプログラムに応じてそれぞれの操作機能が割り当てられる。なお、図３に示した配置例では、操作ボタン７２ｂ〜７２ｄは、ハウジング７１上面の中央前後方向に沿って並設されている。また、操作ボタン７２ｅ〜７２ｇは、ハウジング７１上面の左右方向に沿って操作ボタン７２ｂおよび７２ｄの間に並設されている。そして、操作ボタン７２ｆは、その上面がハウジング７１の上面に埋没しており、プレイヤが不意に誤って押下することのないタイプのボタンである。
【００６３】
また、ハウジング７１上面の十字キー７２ａより前面側に、操作ボタン７２ｈが設けられる。操作ボタン７２ｈは、遠隔からゲーム装置本体３本体の電源をオン／オフする電源スイッチである。この操作ボタン７２ｈも、その上面がハウジング７１の上面に埋没しており、プレイヤが不意に誤って押下することのないタイプのボタンである。
【００６４】
また、ハウジング７１上面の操作ボタン７２ｃより後面側に、複数のＬＥＤ７０２が設けられる。ここで、コントローラ７は、他のコントローラ７と区別するためにコントローラ種別（番号）が設けられている。例えば、ＬＥＤ７０２は、コントローラ７に現在設定されている上記コントローラ種別をプレイヤに通知するために用いられる。具体的には、コントローラ７からゲーム装置本体３へ送信データを送信する際、上記コントローラ種別に応じて複数のＬＥＤ７０２のうち、種別に対応するＬＥＤが点灯する。
【００６５】
また、ハウジング７１上面には、操作ボタン７２ｂおよび操作ボタン７２ｅ〜７２ｇの間に後述するスピーカ（図５のスピーカ７０６）からの音を外部に放出するための音抜き孔が形成されている。
【００６６】
一方、ハウジング７１下面には、凹部が形成されている。後述で明らかとなるが、ハウジング７１下面の凹部は、プレイヤがコントローラ７の前面をマーカ８Ｌおよび８Ｒに向けて片手で把持したときに、当該プレイヤの人差し指や中指が位置するような位置に形成される。そして、上記凹部の傾斜面には、操作ボタン７２ｉが設けられる。操作ボタン７２ｉは、例えばＢボタンとして機能する操作部である。
【００６７】
また、ハウジング７１前面には、撮像情報演算部７４の一部を構成する撮像素子７４３が設けられる。ここで、撮像情報演算部７４は、コントローラ７が撮像した画像データを解析してその中で輝度が高い場所を判別してその場所の重心位置やサイズなどを検出するためのシステムであり、例えば、最大２００フレーム／秒程度のサンプリング周期であるため比較的高速なコントローラ７の動きでも追跡して解析することができる。この撮像情報演算部７４の詳細な構成については、後述する。また、ハウジング７１の後面には、コネクタ７３が設けられている。コネクタ７３は、例えばエッジコネクタであり、例えば接続ケーブルと嵌合して接続するために利用される。
【００６８】
ここで、以下の説明を具体的にするために、コントローラ７に対して設定する座標系について定義する。図３および図４に示すように、互いに直交するｘｙｚ軸をコントローラ７に対して定義する。具体的には、コントローラ７の前後方向となるハウジング７１の長手方向をｚ軸とし、コントローラ７の前面（撮像情報演算部７４が設けられている面）方向をｚ軸正方向とする。また、コントローラ７の上下方向をｙ軸とし、ハウジング７１の上面（操作ボタン７２ａ等が設けられた面）方向をｙ軸正方向とする。さらに、コントローラ７の左右方向をｘ軸とし、ハウジング７１の左側面（図３では表されずに図４で表されている側面）方向をｘ軸正方向とする。
【００６９】
次に、図５および図６を参照して、コントローラ７の内部構造について説明する。なお、図５は、コントローラ７の上ハウジング（ハウジング７１の一部）を外した状態を後面側から見た斜視図である。図６は、コントローラ７の下ハウジング（ハウジング７１の一部）を外した状態を前面側から見た斜視図である。ここで、図６に示す基板７００は、図５に示す基板７００の裏面から見た斜視図となっている。
【００７０】
図５において、ハウジング７１の内部には基板７００が固設されており、当該基板７００の上主面上に操作ボタン７２ａ〜７２ｈ、加速度センサ７０１、ＬＥＤ７０２、およびアンテナ７５４等が設けられる。そして、これらは、基板７００等に形成された配線（図示せず）によってマイコン７５１等（図６、図７参照）に接続される。マイコン７５１は本願発明のボタンデータ発生手段の一例として、操作ボタン７２ａ等の種類に応じた操作ボタンデータを発生させるように機能する。この仕組みは公知技術であるが、例えばキートップ下側に配置されたタクトスイッチなどのスイッチ機構による配線の接触／切断をマイコン７５１が検出することによって実現されている。より具体的には、操作ボタンが例えば押されると配線が接触して通電するので、この通電がどの操作ボタンにつながっている配線で発生したかをマイコン７５１が検出し、操作ボタンの種類に応じた信号を発生させている。
【００７１】
また、コントローラ７は、無線モジュール７５３（図７参照）およびアンテナ７５４によって、ワイヤレスコントローラとして機能する。なお、ハウジング７１内部には図示しない水晶振動子が設けられており、後述するマイコン７５１の基本クロックを生成する。また、基板７００の上主面上に、スピーカ７０６およびアンプ７０８が設けられる。また、加速度センサ７０１は、操作ボタン７２ｄの左側の基板７００上（つまり、基板７００の中央部ではなく周辺部）に設けられる。したがって、加速度センサ７０１は、コントローラ７の長手方向を軸とした回転に応じて、重力加速度の方向変化に加え、遠心力による成分の含まれる加速度を検出することができるので、所定の演算により、検出される加速度データからコントローラ７の回転を良好な感度でゲーム装置本体３等が判定することができる。
【００７２】
一方、図６において、基板７００の下主面上の前端縁に撮像情報演算部７４が設けられる。撮像情報演算部７４は、コントローラ７の前方から順に赤外線フィルタ７４１、レンズ７４２、撮像素子７４３、および画像処理回路７４４によって構成されており、それぞれ基板７００の下主面に取り付けられる。また、基板７００の下主面上の後端縁にコネクタ７３が取り付けられる。さらに、基板７００の下主面上にサウンドＩＣ７０７およびマイコン７５１が設けられている。サウンドＩＣ７０７は、基板７００等に形成された配線によってマイコン７５１およびアンプ７０８と接続され、ゲーム装置本体３から送信されたサウンドデータに応じてアンプ７０８を介してスピーカ７０６に音声信号を出力する。
【００７３】
そして、基板７００の下主面上には、バイブレータ７０４が取り付けられる。バイブレータ７０４は、例えば振動モータやソレノイドである。バイブレータ７０４は、基板７００等に形成された配線によってマイコン７５１と接続され、ゲーム装置本体３から送信された振動データに応じてその作動をオン／オフする。バイブレータ７０４が作動することによってコントローラ７に振動が発生するので、それを把持しているプレイヤの手にその振動が伝達され、いわゆる振動対応ゲームが実現できる。ここで、バイブレータ７０４は、ハウジング７１のやや前方寄りに配置されるため、プレイヤが把持している状態において、ハウジング７１が大きく振動することになり、振動を感じやすくなる。
【００７４】
次に、図７を参照して、コントローラ７の内部構成について説明する。なお、図７は、コントローラ７の構成を示すブロック図である。
【００７５】
図７において、コントローラ７は、上述した操作部７２、撮像情報演算部７４、加速度センサ７０１、バイブレータ７０４、スピーカ７０６、サウンドＩＣ７０７、およびアンプ７０８の他に、その内部に通信部７５を備えている。
【００７６】
撮像情報演算部７４は、赤外線フィルタ７４１、レンズ７４２、撮像素子７４３、および画像処理回路７４４を含んでいる。赤外線フィルタ７４１は、コントローラ７の前方から入射する光から赤外線のみを通過させる。レンズ７４２は、赤外線フィルタ７４１を透過した赤外線を集光して撮像素子７４３へ出射する。撮像素子７４３は、例えばＣＭＯＳセンサやあるいはＣＣＤのような固体撮像素子であり、レンズ７４２が集光した赤外線を撮像する。したがって、撮像素子７４３は、赤外線フィルタ７４１を通過した赤外線だけを撮像して画像データを生成する。撮像素子７４３で生成された画像データは、画像処理回路７４４で処理される。具体的には、画像処理回路７４４は、撮像素子７４３から得られた画像データを処理して高輝度部分を検知し、それらの位置座標や面積を検出した結果を示す処理結果データを通信部７５へ出力する。なお、これらの撮像情報演算部７４は、コントローラ７のハウジング７１に固設されており、ハウジング７１自体の方向を変えることによってその撮像方向を変更することができる。この撮像情報演算部７４から出力される処理結果データに基づいて、コントローラ７の位置や動きに応じた信号を得ることができる。
【００７７】
コントローラ７は、３軸（ｘ、ｙ、ｚ軸）の加速度センサ７０１を備えていることが好ましい。この３軸の加速度センサ７０１は、３方向、すなわち、上下方向、左右方向、および前後方向で直線加速度を検知する。また、他の実施形態においては、ゲーム処理に用いる制御信号の種類によっては、上下および左右方向（または他の対になった方向）のそれぞれに沿った直線加速度のみを検知する２軸の加速度検出手段を使用してもよい。例えば、この３軸または２軸の加速度センサ７０１は、アナログ・デバイセズ株式会社（Ａｎａｌｏｇ  Ｄｅｖｉｃｅｓ，  Ｉｎｃ．）またはＳＴマイクロエレクトロニクス社（ＳＴＭｉｃｒｏｅｌｅｃｔｒｏｎｉｃｓ  Ｎ．Ｖ．）から入手可能であるタイプのものでもよい。加速度センサ７０１は、シリコン微細加工されたＭＥＭＳ（Ｍｉｃｒｏ  Ｅｌｅｃｔｒｏ  Ｍｅｃｈａｎｉｃａｌ  Ｓｙｓｔｅｍｓ：微小電子機械システム）の技術に基づいた静電容量式（静電容量結合式）であってもよい。しかしながら、既存の加速度検出手段の技術（例えば、圧電方式や圧電抵抗方式）あるいは将来開発される他の適切な技術を用いて３軸または２軸の加速度センサ７０１が提供されてもよい。
【００７８】
当業者には公知であるように、加速度センサ７０１に用いられるような加速度検出手段は、加速度センサの持つ各軸に対応する直線に沿った加速度（直線加速度）のみを検知することができる。つまり、加速度センサ７０１からの直接の出力は、その２軸または３軸のそれぞれに沿った直線加速度（静的または動的）を示す信号である。このため、加速度センサ７０１は、非直線状（例えば、円弧状）の経路に沿った動き、回転、回転運動、角変位、傾斜、位置、または姿勢等の物理特性を直接検知することはできない。
【００７９】
しかしながら、加速度センサ７０１から出力される加速度の信号に基づいて、ゲーム装置のプロセッサ（例えばＣＰＵ１０）またはコントローラのプロセッサ（例えばマイコン７５１）などのコンピュータが処理を行うことによって、コントローラ７に関するさらなる情報を推測または算出（判定）することができることは、当業者であれば本明細書の説明から容易に理解できるであろう。例えば、加速度センサを搭載するコントローラが静的な状態であることを前提としてコンピュータ側で処理する場合（すなわち、加速度センサによって検出される加速度が重力加速度のみであるとして処理する場合）、コントローラが現実に静的な状態であれば、検出された加速度に基づいてコントローラの姿勢が重力方向に対して傾いているか否か又はどの程度傾いているかを知ることができる。具体的には、加速度センサの検出軸が鉛直下方向を向いている状態を基準としたとき、１Ｇ（重力加速度）がかかっているか否かだけで傾いているか否かを知ることができるし、その大きさによってどの程度傾いているかも知ることができる。また、多軸の加速度センサの場合には、さらに各軸の加速度の信号に対して処理を施すことによって、各軸が重力方向に対してどの程度傾いているかをより詳細に知ることができる。この場合において、加速度センサ７０１からの出力に基づいて、プロセッサがコントローラ７の傾き角度のデータを算出する処理をおこなってもよいが、当該傾き角度のデータを算出する処理をおこなうことなく、加速度センサ７０１からの出力に基づいて、おおよその傾き具合を推定するような処理としてもよい。このように、加速度センサ７０１をプロセッサと組み合わせて用いることによって、コントローラ７の傾き、姿勢または位置を判定することができる。一方、加速度センサが動的な状態であることを前提とする場合には、重力加速度成分に加えて加速度センサの動きに応じた加速度を検出するので、重力加速度成分を所定の処理により除去すれば、動き方向などを知ることができる。具体的には、加速度センサ７０１を備えるコントローラ７がユーザの手で動的に加速されて動かされる場合に、加速度センサ７０１によって生成される加速度信号を処理することによって、コントローラ７のさまざまな動きおよび／または位置を算出することができる。なお、加速度センサが動的な状態であることを前提とする場合であっても、加速度センサの動きに応じた加速度を所定の処理により除去すれば、重力方向対する傾きを知ることが可能である。他の実施例では、加速度センサ７０１は、信号をマイコン７５１に出力する前に内蔵の加速度検出手段から出力される加速度信号に対して所望の処理を行うための、組込み式の信号処理装置または他の種類の専用の処理装置を備えていてもよい。例えば、組込み式または専用の処理装置は、加速度センサが静的な加速度（例えば、重力加速度）を検出するためのものである場合、検知された加速度信号をそれに相当する傾斜角（あるいは、他の好ましいパラメータ）に変換するものであってもよい。
【００８０】
他の実施形態の例では、コントローラ７の動きを検出する動きセンサとして、回転素子または振動素子などを内蔵したジャイロセンサを用いてもよい。この実施形態で使用されるＭＥＭＳジャイロセンサの一例として、アナログ・デバイセズ株式会社から入手可能なものがある。加速度センサ７０１と異なり、ジャイロセンサは、それが内蔵する少なくとも一つのジャイロ素子の軸を中心とした回転（または角速度）を直接検知することができる。このように、ジャイロセンサと加速度センサとは基本的に異なるので、個々の用途のためにいずれの装置が選択されるかによって、これらの装置からの出力信号に対して行う処理を適宜変更する必要がある。
【００８１】
具体的には、加速度センサの代わりにジャイロセンサを用いて傾きや姿勢を算出する場合には、大幅な変更を行う。すなわち、ジャイロセンサを用いる場合、検出開始の状態において傾きの値を初期化する。そして、当該ジャイロセンサから出力される角速度データを積分する。次に、初期化された傾きの値からの傾きの変化量を算出する。この場合、算出される傾きは、角度に対応する値が算出されることになる。一方、加速度センサによって傾きを算出する場合には、重力加速度のそれぞれの軸に関する成分の値を、所定の基準と比較することによって傾きを算出するので、算出される傾きはベクトルで表すことが可能であり、初期化を行わずとも、加速度検出手段を用いて検出される絶対的な方向を検出することが可能である。また、傾きとして算出される値の性質は、ジャイロセンサが用いられる場合には角度であるのに対して、加速度センサが用いられる場合にはベクトルであるという違いがある。したがって、加速度センサに代えてジャイロセンサが用いられる場合、当該傾きのデータに対して、２つのデバイスの違いを考慮した所定の変換を行う必要がある。加速度検出手段とジャイロセンサとの基本的な差異と同様にジャイロセンサの特性は当業者に公知であるので、本明細書ではさらなる詳細を省略する。ジャイロセンサは、回転を直接検知できることによる利点を有する一方、一般的には、加速度センサは、本実施形態で用いるようなコントローラに適用される場合、ジャイロセンサに比べて費用効率が良いという利点を有する。
【００８２】
通信部７５は、マイクロコンピュータ（Ｍｉｃｒｏ  Ｃｏｍｐｕｔｅｒ：マイコン）７５１、メモリ７５２、無線モジュール７５３、およびアンテナ７５４を含んでいる。マイコン７５１は、処理の際にメモリ７５２を記憶領域として用いながら、送信データを無線送信する無線モジュール７５３を制御する。また、マイコン７５１は、アンテナ７５４を介して無線モジュール７５３が受信したゲーム装置本体３からのデータに応じて、サウンドＩＣ７０７およびバイブレータ７０４の動作を制御する。サウンドＩＣ７０７は、通信部７５を介してゲーム装置本体３から送信されたサウンドデータ等を処理する。また、マイコン７５１は、通信部７５を介してゲーム装置本体３から送信された振動データ（例えば、バイブレータ７０４をＯＮまたはＯＦＦする信号）等に応じて、バイブレータ７０４を作動させる。
【００８３】
コントローラ７に設けられた操作部７２からの操作信号（キーデータ）、加速度センサ７０１からの加速度信号（ｘ、ｙ、およびｚ軸方向加速度データ；以下、単に加速度データと記載する）、および撮像情報演算部７４からの処理結果データは、マイコン７５１に出力される。マイコン７５１は、入力した各データ（キーデータ、加速度データ、処理結果データ）を無線コントローラモジュール１９へ送信する送信データとして一時的にメモリ７５２に格納する。ここで、通信部７５から無線コントローラモジュール１９への無線送信は、所定の周期毎に行われるが、ゲームの処理は１／６０秒を単位として行われることが一般的であるので、それよりも短い周期で送信を行うことが必要となる。具体的には、ゲームの処理単位は１６．７ｍｓ（１／６０秒）であり、ブルートゥース（Ｂｌｕｅｔｏｏｔｈ；登録商標）で構成される通信部７５の送信間隔は例えば５ｍｓである。マイコン７５１は、無線コントローラモジュール１９への送信タイミングが到来すると、メモリ７５２に格納されている送信データを一連の操作情報として出力し、無線モジュール７５３へ出力する。そして、無線モジュール７５３は、例えばブルートゥース（登録商標）の技術に基づいて、所定周波数の搬送波を用いて操作情報で変調し、その電波信号をアンテナ７５４から放射する。つまり、コントローラ７に設けられた操作部７２からのキーデータ、加速度センサ７０１からの加速度データ、および撮像情報演算部７４からの処理結果データが無線モジュール７５３で電波信号に変調されてコントローラ７から送信される。そして、ゲーム装置本体３の無線コントローラモジュール１９でその電波信号を受信し、ゲーム装置本体３で当該電波信号を復調や復号することによって、一連の操作情報（キーデータ、加速度データ、および処理結果データ）を取得する。そして、ゲーム装置本体３のＣＰＵ１０は、取得した操作情報とゲームプログラムとに基づいて、ゲーム処理を行う。なお、ブルートゥース（登録商標）の技術を用いて通信部７５を構成する場合、通信部７５は、他のデバイスから無線送信された送信データを受信する機能も備えることができる。
【００８４】
次に、図８〜図１７を用いて、本実施形態で想定するゲームの概要について説明する。本ゲームは、３次元の仮想ゲーム空間でプレイヤオブジェクトを操作するアクションアドベンチャーゲームである。図８は、本実施形態で想定するゲームの画面の一例である。図８において、ゲーム画面には３Ｄ仮想ゲーム空間が映し出されており、プレイヤオブジェクト１０１と、スイッチ１０２ａおよびスイッチ１０２ｂ（以下、総称して単にスイッチ１０２と呼ぶこともある）が表示されている。そして、以下の説明では、図８の画面には表示されていない「扉」を開くために、スイッチ１０２ａおよびスイッチ１０２ｂを同時に入れる必要がある場面であることを前提として説明を行う。
【００８５】
当該スイッチ１０２ａおよびスイッチ１０２ｂは、各スイッチ上部の「球」をプレイヤオブジェクト１０１が有する剣で攻撃することで、スイッチを入れることができる。上述のように、ここでは、双方のスイッチを同じタイミングで入れる必要があるが、図８の状態では、プレイヤオブジェクト１０１が一体だけであり、いずれか一方のスイッチしか入れることができない。そこで、本ゲームでは、「ゴ−スト」と呼ばれる、プレイヤオブジェクト１０１と同じ形状をしたキャラクタ（謂わば、プレイヤオブジェクト１０１の分身）を登場させる。そして、プレイヤオブジェクト１０１が当該「ゴ−スト」と協力プレイを行うことで、スイッチ１０２ａおよびスイッチ１０２ｂのスイッチを同時に入れる事を可能としている。
【００８６】
以下、「ゴースト」の出現から双方のスイッチを同時に入れるまでの操作の流れを説明する。大きな流れを先に説明すると、本ゲームでは、まず、プレイヤは、「ゴースト」を出現させるための操作を行う。次に、プレイヤは所定の時間、本ゲームでは１０秒間、当該「ゴースト」を操作して当該ゴーストに所望の動作を行わせる。例えば、上記スイッチ１０２ｂのスイッチを入れる動作を行わせる。このときの「ゴースト」の操作履歴（ゴースト操作中のキーデータ）が、ゴースト操作データとしてメモリに記憶される。１０秒経過すれば、「ゴースト」は消滅する（以下、「ゴースト」出現から「ゴースト」消滅までの間の状態を「ゴースト記録モード」と呼ぶ）。
【００８７】
次に、プレイヤは、任意の場所、任意のタイミングで「ゴースト」の動作の再現を指示する操作を行う。この操作により、「ゴースト」が出現して、上記ゴースト記録モードにおいてプレイヤが行わせた「ゴースト」の動作が再現される。上記の例では、スイッチ１０２ｂのスイッチを入れる動作が再現される。そして、この「ゴースト」の動作が再現されている間（以下、ゴースト再現モードと呼ぶ）に、プレイヤはプレイヤオブジェクト１０１を操作し、「ゴースト」との協力プレイを行うことで、ゲームを進行させる。例えば、「ゴースト」がスイッチ１０２ｂのスイッチを入れるタイミングに合わせて、プレイヤオブジェクト１０１にスイッチ１０２ａのスイッチを入れさせる操作を行う。
【００８８】
以下、上記の操作の流れをより具体的に説明する。まず、「ゴースト」を出現させる操作について説明する。本ゲームでは、「鏡」を使って「ゴースト」を出現させることができる。具体的には、プレイヤが所定の操作を行うことで、プレイヤオブジェクト１０１が「ミラーショット」と呼ばれる動作を行う。これは、仮想ゲーム空間内の任意の壁面に鏡１０３を出現させるための動作である。例えば、任意の壁面を目がけてプレイヤオブジェクト１０１に「ミラー弾」と呼ばれる弾を撃たせる操作を行わせる。これにより、図９に示すように、「ミラー弾」が当たった壁面に鏡１０３を出現させることができる。
【００８９】
次に、プレイヤオブジェクト１０１に「ゴーストショット」と呼ばれる動作を行わせる。この動作は、図１０に示すように、上記のようにして出現させた鏡１０３に映っているプレイヤオブジェクト１０１に向かって弾を撃つ動作である。これにより、鏡１０３に映っているプレイヤオブジェクト１０１を「ゴースト」として出現させることができる。
【００９０】
図１１は、「ゴースト」が出現した直後のゲーム画面を示す図である。図１１では、鏡１０３からゴースト１０４が出てきて降り立った状態が示されている。ここで、本ゲームでは、ゴースト１０４を出現させると、仮想ゲーム空間内の時間進行が一旦停止し、プレイヤオブジェクト１０１も画面に非表示となる。つまり、プレイヤの操作対象が、プレイヤオブジェクト１０１からゴースト１０４に一時的に切り替わる。更に、画面には、棒グラフ状で示したゴースト情報バー１０５が新たに表示される。なお、本実施形態におけるゴースト情報バー１０５は棒グラフ状で示しているが、例えば、円グラフ状などの棒グラフ状以外の形態で示されているものであってもよい。
【００９１】
当該ゴースト情報バー１０５は、ゴースト記録モードにおける時間（仮想ゲーム空間での時間ではなく、実時間）の進行状況とゴーストの動作内容に関する情報を示すためのものである（換言すれば、ゴースト情報バー１０５は時間軸を示している。また、本ゲームの例では、１０秒分の長さを示している）。図１１の状態では、ゴースト情報バー１０５で示される時間軸上における現在時点を示す現在アイコン１０６がゴースト情報バー１０５の左端に表示されている。当該現在アイコン１０６は、時間の経過と共に、左から右に向けて移動していく。つまり、ゴースト情報バー１０５上の現在アイコン１０６の位置で時間およびゴースト１０４の動作の進行状況が把握できる（図１１の例では、ゴースト情報バー１０５の左端が０秒の時点を示し、右端が１０秒の時点を示すことになる）。また、現在アイコン１０６には、その時点のゴースト１０４を側面から見た姿勢を２次元画像で表したシルエット画像１０９が表示される。
【００９２】
ゴースト１０４が出現すれば（すなわち、ゴースト記録モードが開始すれば）、プレイヤは、当該ゴースト１０４を操作して所望の動作を行わせる。図１２および図１３は、ゴースト１０４を操作して、スイッチ１０２ｂのスイッチを入れる様子を示している。ゴースト１０４の操作中は、ゴースト１０４の姿勢に応じてシルエット画像１０９がリアルタイムに更新される。また、ゴースト１０４に移動以外の所定のアクション、例えば、ジャンプ、剣を振る、（床に置かれている）箱を持ち上げる、物を投げる、床のスイッチを踏む、等を行わせたとき、当該アクションが行われたことを示すアクションマーカ１０７（後述のアクションマーカ１０７ａ〜１０７ｃを総称している）がゴースト情報バー１０５上に表示される。図１２の例では、丸印のアクションマーカ１０７ａおよび１０７ｂが表示されている。ここでは、丸印のアクションマーカはジャンプしたことを示すものとする。また、図１３では、剣を振ってスイッチ１０２のスイッチを入れている様子が示されているが、剣を振ったというアクションは、星印のアクションマーカ（後述のアクションマーカ１０７ｃ）で示されるものとする。図１３では、丁度剣を振ったところであるため、現在アイコン１０６の表示されている位置に星印のアクションマーカが表示されることになる。但し、図１３では、現在アイコン１０６と重なっており、隠されて見えない状態である。そして、上記のような、ゴースト１０４の一連の操作履歴を示すデータ（何時、どのボタンを押したのか等を示すデータ、すなわち、ゴースト操作中のキーデータ）がゴースト操作データとして外部メインメモリ１２に記憶される。また、上記ゴースト１０４の操作に伴い、ゴースト１０４の移動軌跡１０８が生成され、表示される。なお、図１２や図１３の例では移動軌跡１０８は線で表示されているが、この他、「足跡」を移動軌跡１０８として表示するようにしても良い。
【００９３】
ゴースト１０４が出現してから１０秒が経過すれば、ゴースト１０４の表示は消去され、ゴースト記録モードが終了する。その結果、図１４に示すように、プレイヤオブジェクト１０１が再度表示され、仮想ゲーム空間の状態がゴーストショットを行う前の状態に戻る。但し、図１４に示されるように、移動軌跡１０８は表示されたまま残る。そして、ゴースト１０４出現に伴い停止していた仮想ゲーム空間内の時間の進行が再開される。
【００９４】
次に、ゴーストの動作の再現について説明する。図１４の状態で、プレイヤがゴースト動作の再現のための操作を行う（所定のボタンを押す等）と、図１５に示すように、ゴースト１０４が鏡１０３から出現する。このとき、上記ゴースト情報バー１０５も表示される。つまり、ゴーストの動作再現中は、ゴースト情報バー１０５が表示され、ゴースト１０４の動作に関する情報をプレイヤに提示する。図１５では、ゴースト情報バー１０５には３つのアクションマーカ１０７ａ、１０７ｂ、１０７ｃが表示されている。一番右のアクションマーカ１０７ｃが、剣を振るアクションを示している。また、ゴースト１０４の出現直後の状態であるため、現在アイコン１０６は、ゴースト情報バー１０５の左端に表示されている。ゴーストの動作再現時においては、現在アイコン１０６は、現在の再現時点を特定するための役目を有している。
【００９５】
この後、図１６に示すように、上記ゴースト操作データに基づいてゴースト１０４の動作が再現される（そのため、ゴースト１０４は、移動軌跡１０８に沿って移動することになる）。また、時間の経過と共に現在アイコン１０６も右に移動していく。上記の例では、スイッチ１０２ｂのスイッチを入れる動作を行っていたため、当該ゴースト１０４の動作も、当該スイッチ１０２ｂのスイッチを入れる動作の再現となる。ここで、ゴースト情報バー１０５にはアクションマーカ１０７が表示されているため、プレイヤは、ゴースト１０４が行う動作のタイミング（例えば、剣を振るタイミング）に関して事前に把握することが可能となっている。図１６の例では、ゴースト情報バー１０５の右端近くに、剣を振ることを示すアクションマーカ１０７ｃが表示されているため、現在アイコン１０６が当該アクションマーカ１０７ｃの位置に重なれば、ゴースト１０４が剣を振ることが事前に把握できる。その結果、図１７に示すように、現在アイコン１０６がアクションマーカ１０７ｃに重なるタイミングに合わせて、プレイヤがプレイヤオブジェクト１０１にスイッチ１０２ａのスイッチを入れる操作（剣を振る操作）を行えば、スイッチ１０２ａおよびスイッチ１０２ｂの双方のスイッチを同時に入れることができる。
【００９６】
なお、本ゲームでは、ゴースト動作の再現中に所定の操作を行うことで、当該再現を途中でキャンセルすることも可能である。また、当該記録されたゴーストのデータは、消去のための指示操作をプレイヤが行わない限りは、原則として記録されたままである。つまり、ゴーストの動作の再現は何度でも繰り返して実行することが可能である。
【００９７】
このように、本ゲームでは、ゴースト１０４の動作の再現中にゴースト１０４の動作内容についての情報を、ゴースト情報バー１０５、現在アイコン１０６、アクションマーカ１０７として表示している。これにより、ゴースト１０４の動きを事前にプレイヤに把握させることができ、プレイヤに当該ゴースト１０４との円滑な協力プレイの実現を可能にして、ゲームの興趣性を高めることができる。なお、ゴースト１０４の動作の再現中にゴースト１０４の動作内容についての情報を、現在アイコン１０６、アクションマーカ１０７として表示するようにしても、現在アイコン１０６とアクションマーカ１０７の画面上の位置関係が認識できるので、現時点から所定の動作が行われるまでのおおよその時間をプレイヤに把握させることができる。協力プレイ内容としては、上述のような、「同時に２つのスイッチを入れる」場合の他、以下のような内容が考えられる。例えば、仮想ゲーム空間を鳥瞰した模式図である図１８に示すように、扉を開けるためのスイッチ１０２が扉から離れた場所にあるとする。そして、スイッチ１０２を入れたときに扉は開くが、開いている時間がごく短い時間であり、スイッチ１０２を入れて扉を開けた後、扉が開いている間にスイッチ１０２のある場所から扉のある場所まで移動することができない場面を想定する。このような場合、例えばスイッチ１０２の正面に鏡１０３を出現させ、上記ゴースト１０４を利用して、スイッチ１０２を入れる動作を行わせる。そして、図１９に示すように、プレイヤオブジェクト１０１が扉の前にいる状態でプレイヤがゴースト１０４の動作再現のための操作を行う。その結果、ゴースト１０４が鏡１０３から出現し、スイッチ１０２のスイッチを入れることで扉が開く。この際、上記のように、ゴースト情報バー１０５にゴースト１０４がスイッチ１０２を入れるタイミング、すなわち、剣を振るタイミングがアクションマーカ１０７として表示されるため、プレイヤは扉が開くタイミングをより的確にかつ容易に把握することができる。そして、プレイヤがこのタイミングに合わせてプレイヤオブジェクト１０１を操作することで、扉が閉まる前にプレイヤオブジェクト１０１を通り抜けさせることが可能となる。
【００９８】
また、その他、例えば、移動する足場にゴースト１０４を利用することも考えられる。図２０は、仮想ゲーム空間を鳥瞰したものを示す模式図である。図２０では、床から所定の高さに足場２０２ａおよび２０２ｂがあり、プレイヤオブジェクト１０１が足場２０２ａの上に乗っているとする。また、足場２０２ａおよび２０２ｂの間は、ジャンプでは飛び越えることができない程度の距離を有しているとする。また、床には箱２０１が存在するとする。このような場合に、ゴースト１０４に箱２０１を頭の上に持ち上げさせて（箱２０１を持ち上げた状態で、箱２０１の上面が足場２０２ａおよび２０２ｂの高さと同じ高さに来るものとする）、そのまま、足場２０２ａの端から２０２ｂの端まで移動するような動作を行って記録しておく。そして、プレイヤオブジェクト１０１が足場２０２ａの端にいる状態で、プレイヤがゴースト１０４の動作を再現する操作を行うと、図２１に示すようにゴースト１０４が箱２０１を持ち上げ、その後図２２に示すように、足場２０２ａの端まで移動する。このタイミングに合わせて、プレイヤはプレイヤオブジェクト１０１を箱２０１の上に移動させる。その後、図２３に示すように、ゴースト１０４が足場２０２ｂの端まで移動するため、このタイミングに合わせて、プレイヤオブジェクト１０１を箱２０１の上から足場２０２ｂに移動させる。これにより、プレイヤオブジェクト１０１を足場２０２ａから２０２ｂへ移動させることが可能となる。また、上記のように、ゴーストの動作については、上記ゴースト情報バー１０５にその情報が表示されているため、プレイヤにプレイヤオブジェクト１０１を移動するタイミングをより把握させやすくすることができる。
【００９９】
また、その他の協力プレイの例としては、例えば、同時に２体の敵オブジェクトを攻撃させることが考えられる。この場合も、ゴースト１０４が剣を振るタイミングがアクションマーカ１０７としてゴースト情報バー１０５に表示されるため、プレイヤに同時攻撃を行うタイミングを容易に把握させることができる。また、そのほか、ゴースト１０４を「囮」とするプレイ方法も考えられる。すなわち、ゴースト１０４を出現させ、所定の敵オブジェクトに向けて移動させ、剣を振る操作を行って記録する。ここで、敵オブジェクトの攻撃目標設定に関する処理の内容として、予め、最初に近づいてきたプレイヤオブジェクトまたはゴーストを攻撃目標として設定し、攻撃動作（移動等）を行うような内容にしておく。そして、プレイヤオブジェクト１０１が敵オブジェクトから離れている状態でゴースト１０４の動作を再現する操作を行うと、ゴースト１０４が敵オブジェクトに近づき、敵オブジェクトは当該近づいてきたゴースト１０４への攻撃動作を開始する。その間に、例えばプレイヤオブジェクト１０１を敵オブジェクトの背後に回り込ませて、後ろから攻撃を行わせることが可能となる。このようなときも、上記一連のゴーストの動作については、上記ゴースト情報バー１０５にその情報が表示されているため、プレイヤにプレイヤオブジェクト１０１を制御するタイミングを把握させやすくすることができる。
【０１００】
このように、本ゲームでは、ゴースト１０４の行う各種動作の情報、所定のアクションを行うタイミングがゴースト情報バー１０５として表示される。これにより、ゴースト１０４がどのような動きをするかをプレイヤに事前に把握させることができる。これにより、プレイヤオブジェクト１０１とゴースト１０４との円滑な協力プレイを実現させることができ、ゲームの興趣性を高めることができる。
【０１０１】
次に、ゲーム装置本体３によって実行されるゲーム処理の詳細を説明する。まず、ゲーム処理の際に外部メインメモリ１２に記憶されるデータについて説明する。図２４は、ゲーム装置本体３の外部メインメモリ１２のメモリマップを示す図である。図２４において、外部メインメモリ１２は、プログラム記憶領域１２１およびデータ記憶領域１２５を含む。プログラム記憶領域１２１およびデータ記憶領域１２５のデータは、光ディスク４に記憶され、ゲームプログラム実行時には外部メインメモリ１２に転送されて記憶される。
【０１０２】
プログラム記憶領域１２１は、ＣＰＵ１０によって実行されるゲームプログラムを記憶し、このゲームプログラムは、メイン処理プログラム１２２と、ゴースト記録処理プログラム１２３と、ゴースト再現処理プログラム１２４などによって構成される。
【０１０３】
メイン処理プログラム１２２は、後述する図２６のフローチャートの処理に対応するプログラムである。ゴースト記録処理プログラム１２３は、上記図１１等を用いて説明したようなゴースト１０４の操作を記録するための処理をＣＰＵ１０に実行させるためのプログラムであり、ゴースト再現処理プログラム１２４は、上記図１５等で示した、ゴースト１０４の動作を再現させるための処理をＣＰＵ１０に実行させるためのプログラムである。
【０１０４】
データ記憶領域１２５には、操作データ１２６、ゴーストデータ１３０、オブジェクトデータ１３５などのデータが記憶されるとともに、ゲーム処理において用いられる各種フラグも記憶される。
【０１０５】
操作データ１２６は、コントローラ７からゲーム装置本体３へ送信されてくる操作データである。上述したように、コントローラ７からゲーム装置本体３へ１／２００秒に１回の割合で操作データが送信されるので、外部メインメモリ１２に記憶される操作データ１２６はこの割合で更新される。本実施形態においては、外部メインメモリ１２には、最新の（最後に取得された）操作データのみが記憶されればよい。
【０１０６】
操作データ１２６には、操作ボタンデータ１２７、加速度データ１２８、および、マーカ座標データ１２９が含まれる。操作ボタンデータ１２７は、各操作ボタン７２ａ〜７２ｉに対する入力状態を示すデータである。図２５は、操作ボタンデータ１２７の構成の一例を示す図である。操作ボタンデータ１２７は、ボタン種類１２７１および押下状態１２７２を含む。ボタン種類１２７１が操作部７２の各ボタンを示す。押下状態１２７２は、各ボタンの押下状態（オン／オフの状態）を示し、”０”は押下されていない状態（オフの状態）、”１”は押下されている状態（オンの状態）を示す。
【０１０７】
加速度データ１２８は、加速度センサ７０１によって検出された加速度（加速度ベクトル）を示すデータである。ここでは、加速度データ１２８は、図３に示すＸＹＺの３軸の方向に関する加速度を各成分とする３次元の加速度ベクトルを示す。
【０１０８】
マーカ座標データ１２９は、撮像情報演算部７４の画像処理回路７４４によって算出される座標、すなわち上記マーカ座標を示すデータである。マーカ座標は、撮像画像に対応する平面上の位置を表すための２次元座標系で表現される。なお、撮像素子７４３によって２つのマーカ８Ｒおよび８Ｌが撮像される場合には、２つのマーカ座標が算出される。一方、撮像素子７４３の撮像可能な範囲内にマーカ８Ｒおよび８Ｌのいずれか一方が位置しない場合には、撮像素子７４３によって１つのマーカのみが撮像され、１つのマーカ座標のみが算出される。また、撮像素子７４３の撮像可能な範囲内にマーカ８Ｒおよび８Ｌの両方が位置しない場合には、撮像素子７４３によってマーカが撮像されず、マーカ座標は算出されない。したがって、マーカ座標データ１２９は、２つのマーカ座標を示す場合もあるし、１つのマーカ座標を示す場合もあるし、マーカ座標がないことを示す場合もある。
【０１０９】
図２４に戻り、ゴーストデータ１３０は、上記ゴースト１０４の操作内容等が記録されたデータであり、ゴースト１０４の動作を示すデータである。ゴーストデータ１３０には、ゴースト１０４の動作（上記の例では最大１０秒分の動作）を１フレーム毎（本実施形態では１／３０秒）に区切ったデータである１フレーム目データ１３１１、２フレーム目データ１３１２・・・ｎフレーム目データ１３１ｎが含まれる（ｎは１から始まる自然数）。なお、これらのデータは、時間の経過順に格納されている（つまり、順編成データ）。各フレーム毎のデータには、ゴースト操作データ１３２、シルエット画像データ１３３、および、アクションマーカデータ１３４が含まれている。ゴースト操作データ１３２は、プレイヤが行ったゴースト１０４の操作を示すデータであり、その構成は上記操作ボタンデータ１２７と同様である。シルエット画像データ１３３は、上記図１１で示したようなシルエット画像１０９のデータである。アクションマーカデータ１３４は、上記図１５等で示したアクションマーカ１０７に関する情報である。具体的には、該当フレームにおけるアクションマーカの有無と、その内容を示す情報（図１５の例で言うと、丸印のアクションマーカ１０７ａであるか星印のアクションマーカ１０７ｃであるか等を示す情報、あるいは、アクションマーカ１０７の画像データそのもの）が含まれている。
【０１１０】
オブジェクトデータ１３５には、仮想ゲーム空間内に登場する各種オブジェクト（プレイヤオブジェクト、敵オブジェクト、アイテムオブジェクトや地形オブジェクト等）のデータが含まれている。
【０１１１】
次に、図２６〜図２８を参照して、ゲーム装置本体３によって実行されるゲーム処理について説明する。ゲーム装置本体３の電源が投入されると、ゲーム装置本体３のＣＰＵ１０は、ＲＯＭ／ＲＴＣ１３に記憶されている起動プログラムを実行し、これによって外部メインメモリ１２等の各ユニットが初期化される。そして、光ディスク４に記憶されたゲームプログラムが外部メインメモリ１２に読み込まれ、ＣＰＵ１０によって当該ゲームプログラムの実行が開始される。図２６に示すフローチャートは、以上の処理が完了した後に行われるゲーム処理を示すフローチャートである。また、図２７は、図２６のゴースト記録処理（ステップＳ３）の詳細な動作を示すサブルーチンであり、図２８は、図２６のゴースト再現処理（ステップＳ７）の詳細な動作を示すサブルーチンである。また、図２６に示すステップＳ１〜ステップＳ１１の処理ループ、図２７に示すステップＳ２７〜ステップＳ３７の処理ループ、および、図２８に示すステップＳ５３〜ステップＳ６１の処理ループは、１フレーム毎に繰り返し実行される。
【０１１２】
図２６において、まず、ＣＰＵ１０は、操作データ１２６を外部メインメモリ１２から取得する（ステップＳ１）。次に、ＣＰＵ１０は、操作データ１２６で示される、プレイヤが行った操作内容がゴースト記録の指示操作であるか否かを判定する（ステップＳ２）。上述した例でいうと、「ゴーストショット」の操作であるか否かを判定する。当該判定の結果、ゴースト記録指示であれば（ステップＳ２でＹＥＳ）、ＣＰＵ１０は、プレイヤの行うゴースト１０４の操作を記録するための、ゴースト記録処理を実行する（ステップＳ３）。
【０１１３】
図２７は、上記ステップＳ３で示したゴースト記録処理の詳細を示すフローチャートである。図２７において、まず、ＣＰＵ１０は、各種初期化処理を実行する。具体的には、まず、ＣＰＵ１０は、ゴーストデータ１３０をクリアする（ステップＳ２１）。次に、ＣＰＵ１０は、仮想ゲーム空間内における時間の進行を停止する（ステップＳ２２）。次に、この時点における仮想ゲーム空間内の状態、具体的には、プレイヤオブジェクト１０１、敵オブジェクトやアイテムオブジェクト（例えば、図２０の箱２０１等）の位置情報を外部メインメモリ１２に記憶する（ステップＳ２３）。
【０１１４】
次に、ゴースト１０４を生成し、鏡１０３から出現する動作を行わせてから、予め設定されている初期位置（例えば鏡１０３の下）に配置する（ステップＳ２４）。次に、ＣＰＵ１０は、上記シルエット画像を生成するための専用の仮想カメラをゴースト１０４の右側面の位置に配置する（ステップＳ２５、図２９参照）。当該専用カメラは、ゴーストの右側面の位置を維持しながら、ゴースト１０４の移動に伴って一緒に移動する。当該専用カメラで撮像されたゴースト１０４の姿勢を元にして上記シルエット画像１０９が生成される。
【０１１５】
次に、ＣＰＵ１０は、ゴースト情報バー１０５を生成し、ゲーム画面上の所定の位置（本実施形態では画面の下部）に配置する（ステップＳ２６）。このとき、ＣＰＵ１０は、時間のカウントを開始する。以上で、ゴースト記録処理に際しての初期化処理が終わる。
【０１１６】
次に、ＣＰＵ１０は、操作データ１２６を取得する（ステップＳ２７）。次に、ＣＰＵ１０は、当該操作データ１２６の内容に基づいて、ゴースト１０４の動作を制御する（ステップＳ２８）。
【０１１７】
次に、ＣＰＵ１０は、上記図１３等で示したようなゴースト１０４の移動軌跡１０８を生成する（ステップＳ２９）。続いて、ＣＰＵ１０は、ステップＳ２８で制御したゴースト１０４の動作に基づいて、当該ゴースト以外のオブジェクトの制御を行う（ステップＳ３０）。例えば、ゴースト１０４が箱オブジェクトを持ち上げる動作を行ったときは、当該箱オブジェクトが持ち上がるように、当該箱オブジェクトの位置情報等を適宜変化させる。
【０１１８】
次に、ＣＰＵ１０は、上記シルエット画像１０９を生成する（ステップＳ３１）。すなわち、上記専用カメラでゴースト１０４の側面の画像を撮影し、当該画像を黒色で塗りつぶす加工を施すことで、シルエット画像１０９を生成し、シルエット画像データ１３３として保存する。
【０１１９】
次に、ＣＰＵ１０は、アクションマーカ１０７の設定を行う（ステップＳ３２）。このステップＳ３２の処理をより具体的に説明すると、まず、ＣＰＵ１０は、操作データ１２６に基づいて、「移動」以外のアクションが指示されたか否かを判定する。例えば、十字キー７２ａ以外のボタンが押されたか否かを判定する。その結果、「移動」以外のアクションが行われていれば、操作されたボタンの内容に応じたアクションの種類を判定する。つまり、ジャンプ操作であるか、剣を振る操作であるか等を判定する。そして、そのアクションの内容に応じてアクションマーカ１０７の画像を表す情報（画像データ、あるいは、アクションマーカの画像データへのリンクを示す情報等）を生成し、アクションマーカデータ１３４として記憶する。なお、操作内容が移動の指示であるときは、アクションマーカデータ１３４にはデータは設定しない（あるいは、移動以外のアクションが行われなかったことを示す情報を格納するようにしてもよい）。
【０１２０】
次に、ＣＰＵ１０は、ゴースト情報バー１０５の更新を実行する（ステップＳ３３）。すなわち、上記シルエット画像データ１３３を元に現在アイコン１０６を生成する。そして、ゴースト出現からの経過時間に応じたゴースト情報バー１０５上の位置に現在アイコン１０６を表示する。また、アクションマーカ１０７が生成されたときは、当該アクションマーカ１０７もゴースト情報バー１０５上に表示する。
【０１２１】
次に、上記ステップＳ２７で取得した操作データ１２６を、ゴースト操作データ１３２として外部メインメモリ１２に記憶する（ステップＳ３４）。
【０１２２】
次に、ＣＰＵ１０は、描画処理を実行する（ステップＳ３５）。すなわち、仮想カメラで仮想ゲーム空間を撮影した画像をゲーム画像としてテレビ２に表示させる処理が実行される。この描画処理において、移動軌跡１０８がテレビ２に表示されることになるが、移動軌跡１０８が表示されるタイミングはこれに限られず、後述するステップＳ３６の後に表示されてもよいし、後述するゴースト再現処理のステップＳ６０における描画処理において表示されてもよい。
【０１２３】
その後、ＣＰＵ１０は、ゴースト出現から所定時間、本実施形態では１０秒が経過したか否かを判定する（ステップＳ３６）。具体的には、ＣＰＵ１０は、上記ステップＳ２６でカウントを開始した時間が１０秒を示しているか否かを判定する。その結果、経過していなければ（ステップＳ３６でＮＯ）、上記ステップＳ２７に戻り、処理を繰り返す。一方、１０秒経過していれば（ステップＳ３６でＹＥＳ）、ＣＰＵ１０は、ゴースト１０４を消去し、上記ステップＳ２３で記憶した各オブジェクトの位置情報に基づいて、仮想ゲーム空間の状態をゴースト出現直前の状態に戻す。更に、ステップＳ２２で停止していた仮想ゲーム空間における時間の進行を再開する（ステップＳ３７）。以上で、ゴースト記録処理は終了する。
【０１２４】
図２６に戻り、ゴースト記録処理が終了すれば、次に、ＣＰＵ１０は、ゲーム終了条件を満たしたか否か（例えば、ゲーム終了指示の有無）を判定し（ステップＳ４）、ゲーム終了でないときは（ステップＳ４でＮＯ）、上記ステップＳ１に戻り、処理を繰り返す。ゲーム終了の時（ステップＳ４でＹＥＳ）は、ＣＰＵ１０はゲーム処理を終了する。
【０１２５】
次に、上記ステップＳ２の判定の結果、ゴースト記録の指示がなされていないときの処理（ステップＳ２でＮＯ）について説明する。このときは、まず、ＣＰＵ１０は、操作データで示される操作内容がゴーストの動作再現の指示であるか否かを判定する（ステップＳ５）。その結果、再現指示のときは（ステップＳ５でＹＥＳ）、続いて、ＣＰＵ１０は、ゴーストデータ１３０があるか否か（空でないか否か）を判定する（ステップＳ６）。すなわち、再現可能なゴーストデータ１３０が記憶されているか否かを判定する。その結果、ゴーストデータ１３０が空のときは（ステップＳ６でＮＯ）、ＣＰＵ１０は、後述するステップＳ１１の処理に進む。一方、ゴーストデータ１３０があれば（ステップＳ６でＹＥＳ）、当該ゴーストデータ１３０に基づいてゴースト再現処理を実行する（ステップＳ７）。
【０１２６】
図２８は、上記ステップＳ７で示したゴースト再現処理の詳細を示すフローチャートである。図２８において、まず、ＣＰＵ１０は、ゴースト１０４を生成し、鏡１０３から出てくるような動作を行わせ（但し、プレイヤオブジェクト１０１が鏡１０３から離れているようなときは、このようなゴースト１０４の動きは画面上に表示されないこともある）、当該ゴースト１０４を予め設定されている初期位置（本実施形態では鏡１０３の下）に配置する（ステップＳ５１）。
【０１２７】
次に、ＣＰＵ１０は、ゴースト情報バー１０５を生成する（ステップＳ５２）。より具体的には、ＣＰＵ１０は、ゴーストデータ１３０を読み込み、更に、当該ゴーストデータ１３０に含まれている、フレーム毎のアクションマーカデータ１３４を取得する。そして、ＣＰＵ１０は、ゴースト情報バー１０５を生成し、何らかのアクションマーカデータが設定されている時点に応じたゴースト情報バー１０５の位置に、各アクションマーカ１０７を生成して表示する。
【０１２８】
次に、ＣＰＵ１０は、１フレーム分のゴースト操作データ１３２を取得する（ステップＳ５３）。なお、上述のように、ゴーストデータ１３０の各フレーム毎のデータは、時間の経過順に格納されているため、ここではシーケンシャルリードを行うことで、１フレーム目のデータから順に読み込んでいくことができる。
【０１２９】
次に、ＣＰＵ１０は、上記読み込んだ１フレーム分のゴースト操作データ１３２に基づき、ゴースト１０４の動作を制御する（ステップＳ５４）。
【０１３０】
次に、ＣＰＵ１０は、ゴースト情報バー１０５を更新する（ステップＳ５５）。具体的には、ＣＰＵ１０は、シルエット画像データ１３３を取得し、これに基づいて現在アイコン１０６を生成して、ゴースト情報バー１０５上に表示する。表示する位置は、ゴースト記録モードにおいて、当該データが記録されたときの経過時間に対応する位置である。例えば、１フレーム目の操作データであれば、一番左端である。フレーム数が上がるにつれて、当該位置が右に向けて変化していく（つまり、時間の経過と共に現在アイコン１０６がゴースト情報バー１０５上を右に移動していく）。なお、ＣＰＵ１０がゴースト情報バーを更新するタイミングは、後述するステップＳ６０の描画処理が行われるときであってもよい。
【０１３１】
次に、ＣＰＵ１０は、操作データ１２６を取得する（ステップＳ５６）。つまり、プレイヤの操作内容を取得する。次に、ＣＰＵ１０は、操作データ１２６で示される操作内容が、ゴースト動作の再現のキャンセル指示か否か判定する（ステップＳ５７）。当該判定の結果、キャンセル指示のときは（ステップＳ５７でＹＥＳ）、後述のステップＳ６２の処理に進む。一方、キャンセル指示ではないときは（ステップＳ５７でＮＯ）、ＣＰＵ１０は、操作データ１２６に基づいたプレイヤオブジェクト１０１の動作制御を行う（ステップＳ５８）。
【０１３２】
次に、ＣＰＵ１０は、その他のゲーム処理を実行する（ステップＳ５９）。換言すれば、プレイヤオブジェクト１０１およびゴースト１０４の動作の結果をゲーム空間に適用する処理を実行する。例えば、上記図１７のように、プレイヤオブジェクト１０１、および／またはゴースト１０４が剣を振ったときは、当たり判定処理を実行する。さらに、当たり判定処理の結果、剣がスイッチに衝突しており、上記図１７のようにスイッチが２つとも同時に入ったと判定されたとき、「扉」を開ける処理が実行される。ここで、スイッチが２つとも同時に入ったとの判定は、同一のフレームスイッチが２つとも入った場合に加えて、所定のフレーム数内にスイッチが２つとも入った場合も含むものとする。
【０１３３】
次に、ＣＰＵ１０は、描画処理を実行する（ステップＳ６０）。すなわち、仮想カメラで仮想ゲーム空間を撮影した画像をゲーム画像としてテレビ２に表示させる処理が実行される。
【０１３４】
次に、ＣＰＵ１０は、ゴーストデータ１３０に格納されている各フレーム毎のデータを最後まで（つまり、１０秒分のデータを）読み込んで処理を行ったか否かを判定する（ステップＳ６１）。当該判定の結果、まだ全てのデータを処理していなければ（ステップＳ６１でＮＯ）、上記ステップＳ５３に戻り、処理を繰り返す。一方、最後まで読み込んでいれば（ステップＳ６１でＹＥＳ）、次に、ＣＰＵ１０は、ゴースト１０４を消去する処理を実行する（ステップＳ６２）。以上で、ゴースト再現処理は終了する。
【０１３５】
図２６に戻り、ゴースト再現処理が終われば、ＣＰＵ１０は、上記ステップＳ４の処理に進み、ゲーム終了の判定を行う。
【０１３６】
次に、上記ステップＳ５の判定の結果、操作内容がゴーストの動作再現の指示でないときの処理（ステップＳ５でＮＯ）について説明する。このときは、ＣＰＵ１０は、まず、操作内容がゴーストデータの消去指示であるか否かを判定する（ステップＳ８）。その結果、消去指示のときは（ステップＳ８でＹＥＳ）、ＣＰＵ１０は、ゴーストデータ１３０をクリアする（ステップＳ９）。さらに、ＣＰＵ１０は、ゴースト記録処理において生成された移動軌跡１０８（図１３等参照）も消去する（ステップＳ１０）。その後、上記ステップＳ４の処理に進む。
【０１３７】
一方、ステップＳ８の判定の結果、操作内容がゴーストの消去指示でないときは（ステップＳ８でＮＯ）、ＣＰＵ１０は、操作データ１２６に基づいて上述のゴーストに関係する処理以外のゲーム処理（プレイヤオブジェクトの移動処理や当たり判定処理等）を実行する（ステップＳ１１）。その後、ＣＰＵ１０は、ステップＳ４の処理に進み、ゲームの終了判定を実行する。以上で、本実施形態にかかるゲーム処理は終了する。
【０１３８】
このように、本実施形態では、プレイヤが操作したゴースト１０４の動作に関する情報をゴースト情報バー１０５、現在アイコン１０６、アクションマーカ１０７として表示している。これにより、ゴースト１０４との協力プレイ時に、プレイヤが操作したゴースト１０４の動作内容を事前に把握させやすくすることができる。その結果、プレイヤにゴースト１０４との協力プレイや連携プレイを円滑に行わせることができ、ゲームの興趣性を高めることができる。
【０１３９】
また、ゴースト１０４の動作内容を、プレイヤがコントローラ７を操作した内容（どのボタンを押したか等）を示す操作データ１２６と構成が同様であるゴースト操作データ１３２として記憶している。これにより、例えば、仮想ゲーム空間内の各オブジェクトの位置データをゴーストの動作内容として記憶するような場合に比べ、記憶容量を軽減することが可能となる。特に、仮想ゲーム空間が３次元空間であるときに、ゴースト１０４以外のオブジェクト（例えば、図２０の箱２０１等）の移動等を伴うような動作が行われたときには、当該ゴースト１０４以外のオブジェクトの位置情報についても記憶する必要があるが、上記ゴースト操作データ１３２として記憶するのであれば、このような情報まで記憶する必要はなく、かつ、ゴースト操作データ１３２に基づいてゴーストの動作が再現された結果、ゴースト１０４以外のオブジェクトの移動等も反映される。
【０１４０】
また、ゴーストの動作の再現時に、再現を途中でキャンセルすることを可能としているため、例えばプレイヤがゴースト１０４との協力プレイを試みたが、操作ミス等で失敗した場合に、ゴーストの操作の再現が一通り終わるまで待つことなく、すぐにやり直しを行うことが可能となる。
【０１４１】
なお、上記実施形態では、シルエット画像１０９について、ゴースト１０４の動作記録時に生成されたシルエット画像を外部メインメモリ１２に記憶し、ゴーストの動作再現時にこれを読み出すようにしていたが、これに限らず、ゴーストの動作再現時に上記専用カメラを用いてリアルタイムにシルエット画像１０９を生成するようにしてもよい。このようにすれば、シルエット画像データ１３３を記憶するための容量を削減することが可能となる。
【０１４２】
また、上記ゴーストの動作再現時に、再現処理のキャンセルを可能としていたが、ゴーストの動作記録時においても、途中で記録処理をキャンセルできるように構成しても良い。これにより、ゴースト１０４の動作の記録中にプレイヤが操作をミスしても、記録終了時間まで待つことなく、すぐに記録のやり直しを行うことが可能となる。
【０１４３】
また、上記実施形態では、ゴースト１０４が一体だけの場合（ゴーストデータ１３０が一体分のみの場合）を例にしたが、ゴースト１０４を複数用いるようにしてもよい。すなわち、ゴーストデータ１３０を複数体分用意し、各データが識別できるようにＩＤを設定しておく。そして、ゴースト１０４の動作の記録時に任意のＩＤのゴーストデータと対応付けて記憶させる。ゴーストの動作再現指示の際には、プレイヤが任意のゴーストデータのＩＤを指定できるようにする。更に、複数のゴースト１０４を同時に仮想ゲーム空間内に出現させるようにしてもよい。この場合は、上記ゴースト情報バー１０５も複数表示し（例えば、縦に２つ並べて表示する等）、各ゴースト情報バー１０５に対応するゴーストが識別できるような情報を各ゴースト情報バー１０５に付加して表示すればよい。複数のゴースト１０４を利用することで、ゲームの興趣性を更に高めることが可能となる。
【０１４４】
また、上記実施形態では、ゴースト記録モードにおいて、ゴースト１０４が出現してから１０秒の所定時間が経過するまでプレイヤによるゴースト１０４の操作を記録するようにしているが、これに限られず、所定時間が経過する前に、プレイヤの所定の操作によってゴースト１０４の操作の記録を終了するようにしてもよい。この場合、ゴースト１０４が出現してからプレイヤの操作によってゴースト１０４の記録を終了するまでのゴースト１０４の動作再現が行われることになる。例えば、ゴースト１０４が出現してから５秒経過後にゴースト１０４の操作の記録を終了した場合は、当該５秒分の操作内容に基づくゴースト１０４の動作が再現されることになる。これにより、プレイヤが自由にゴースト１０４の記録時間を制御できるので、プレイヤによる操作の自由度を高めることができる。
【０１４５】
また、上記ゴースト再生モードに関して、上述の実施形態では、ゴースト１０４の動作を一度だけ再現する場合を例にしていたが、これに限らず、例えば、プレイヤが所定の操作を行うまでは、ゴースト１０４の動作の再現が繰り返し行われるようにしても良い。すなわち、上記ステップＳ７のゴースト再現処理を、プレイヤによる再現停止の指示操作を受け付けるまで、繰り返して実行するように構成しても良い。換言すれば、上記ステップＳ７のゴースト再現処理が終了した後、プレイヤによる停止指示がなければ、再度、ゴースト再現処理を実行するようにしてもよい。このように、何度もゴースト１０４の動作を再現させることで、プレイヤがゴースト１０４の動きに併せて所定の操作（例えば、同時にスイッチを入れる等）を行うことを所望したときに、プレイヤに、自身が行うべき操作のタイミングを計りやすくすることができる。また、ゴースト再現処理を終了した後に再度ゴーストの動作を再現させたい場合に、プレイヤがゴースト再現処理のための所定の操作を行う必要がないため、プレイヤの利便性を高めることができる。
【０１４６】
更に、上記のゴースト再現処理の繰り返しを、プレイヤが操作に失敗したときにのみ繰り返し実行されるようにしてもよい。例えば、上記図１７に示したような、２つのスイッチを同時に入れる場面において、まず、プレイヤは、スイッチ１０２ｂのスイッチを入れる動作を行うゴースト１０４の動作の再現の指示操作を行う。これに応じて、ゴースト１０４の動作の再現が開始され、これに併せて、プレイヤもプレイヤオブジェクト１０１を操作する。しかし、プレイヤがタイミングを外して、同時にスイッチ１０２を入れることに失敗した場合は、ゴースト再現のための指示操作を改めてプレイヤが行わなくても、ゴースト１０４の再現処理が再度実行されるようにしてもよい。より具体的には、上記図８や図１７に示したような、「扉を開くために、２つのスイッチを同時に入れる必要がある」というイベント内容を示す「イベントデータ」を予め容易し、外部メインメモリ１２に記憶しておく。そして、いずれか一方のスイッチをゴースト１０４が入れる動作を行ったときは、ＣＰＵ１０は、当該イベントデータを参照して、イベントクリアのための条件、この例では、２つのスイッチを入れる動作が行われたタイミングが同時であることを満たしたか否かを判定する。その結果、当該条件を満たされていないときは、再度、ゴースト再現処理を実行し、当該条件が満たされていれば、「扉を開く」処理を行うようにすればよい。これにより、プレイヤがゴースト１０４との協力プレイに失敗したときに、自動的にゴースト１０４の動作の再現が行われるため、プレイヤの利便性をより高めることが可能となる。なお、上記条件が満たされているときに、「扉を開く」処理を行うとともに、ゴースト再現処理を終了するようにしてもよい。
【０１４７】
また、上記実施形態では、プレイヤが操作したゴースト１０４の動作に関する情報をゴースト情報バー１０５、現在アイコン１０６、アクションマーカ１０７として表示しているが、これに限らず、例えば、現時点からゴースト１０４が所定の動作（例えば、剣を振る動作）が行われるまでの時間を表示してもよい。これにより、プレイヤが操作したゴースト１０４がどのタイミングで所定の動作を行うかをプレイヤに把握させることができる。その結果、プレイヤにゴースト１０４との協力プレイや連携プレイを円滑に行わせることができ、ゲームの興趣性を高めることができる。
【産業上の利用可能性】
【０１４８】
本発明にかかるゲーム装置およびゲームプログラムは、動作情報に基づき動作する第１のオブジェクトの動作内容についてプレイヤに事前に把握させることができ、据置型ゲーム装置、携帯型ゲーム装置等に有用である。
【図面の簡単な説明】
【０１４９】
【図１】本発明の実施形態に係るゲームシステム１を説明するための外観図
【図２】図１のゲーム装置本体３の機能ブロック図
【図３】図１のコントローラ７の上面後方から見た斜視図
【図４】図３のコントローラ７を下面前方から見た斜視図
【図５】図３のコントローラ７の上ハウジングを外した状態を示す斜視図
【図６】図３のコントローラ７の下ハウジングを外した状態を示す斜視図
【図７】図３のコントローラ７の構成を示すブロック図
【図８】本実施形態で想定するゲームの画面の一例
【図９】本実施形態で想定するゲームの画面の一例
【図１０】本実施形態で想定するゲームの画面の一例
【図１１】本実施形態で想定するゲームの画面の一例
【図１２】本実施形態で想定するゲームの画面の一例
【図１３】本実施形態で想定するゲームの画面の一例
【図１４】本実施形態で想定するゲームの画面の一例
【図１５】本実施形態で想定するゲームの画面の一例
【図１６】本実施形態で想定するゲームの画面の一例
【図１７】本実施形態で想定するゲームの画面の一例
【図１８】本実施形態で想定するゲーム空間を鳥瞰した模式図
【図１９】本実施形態で想定するゲーム空間を鳥瞰した模式図
【図２０】本実施形態で想定するゲーム空間を鳥瞰した模式図
【図２１】本実施形態で想定するゲーム空間を鳥瞰した模式図
【図２２】本実施形態で想定するゲーム空間を鳥瞰した模式図
【図２３】本実施形態で想定するゲーム空間を鳥瞰した模式図
【図２４】ゲーム装置本体３のメインメモリ１２のメモリマップを示す図
【図２５】操作ボタンデータ１２７の構成の一例を示す図
【図２６】本発明の実施形態に係るゲーム処理を示すフローチャート
【図２７】図２６のステップＳ３で示したゴースト記録処理の詳細を示したフローチャート
【図２８】図２６のステップＳ７で示したゴースト再現処理の詳細を示したフローチャート
【図２９】専用カメラの配置を説明するための図
【符号の説明】
【０１５０】
１…ゲームシステム
２…モニタ
２ａ…スピーカ
３…ゲーム装置
４…光ディスク
７…コントローラ
１０…ＣＰＵ
１１…システムＬＳＩ
１１ａ…入出力プロセッサ
１１ｂ…ＧＰＵ
１１ｃ…ＤＳＰ
１１ｄ…ＶＲＡＭ
１１ｅ…内部メインメモリ
１２…外部メインメモリ
１３…ＲＯＭ／ＲＴＣ
１４…ディスクドライブ
１５…ＡＶ−ＩＣ
１６…ＡＶコネクタ
１７…フラッシュメモリ
１８…無線通信モジュール
１９…無線コントローラモジュール
２０…拡張コネクタ
２１…外部メモリカード用コネクタ
２２…アンテナ
２３…アンテナ
２４…電源ボタン
２５…リセットボタン
２６…イジェクトボタン
７１…ハウジング
７２…操作部
７３…コネクタ
７４…撮像情報演算部
７４１…赤外線フィルタ
７４２…レンズ
７４３…撮像素子
７４４…画像処理回路
７５…通信部
７５１…マイコン
７５２…メモリ
７５３…無線モジュール
７５４…アンテナ
７００…基板
７０１…加速度センサ
７０２…ＬＥＤ
７０３…水晶振動子
７０４…バイブレータ
７０７…サウンドＩＣ
７０８…アンプ
【図１】
2010131322.tif 000003
【図２】
2010131322.tif 000004
【図３】
2010131322.tif 000005
【図４】
2010131322.tif 000006
【図５】
2010131322.tif 000007
【図６】
2010131322.tif 000008
【図７】
2010131322.tif 000009
【図８】
2010131322.tif 000010
【図９】
2010131322.tif 000011
【図１０】
2010131322.tif 000012
【図１１】
2010131322.tif 000013
【図１２】
2010131322.tif 000014
【図１３】
2010131322.tif 000015
【図１４】
2010131322.tif 000016
【図１５】
2010131322.tif 000017
【図１６】
2010131322.tif 000018
【図１７】
2010131322.tif 000019
【図１８】
2010131322.tif 000020
【図１９】
2010131322.tif 000021
【図２０】
2010131322.tif 000022
【図２１】
2010131322.tif 000023
【図２２】
2010131322.tif 000024
【図２３】
2010131322.tif 000025
【図２４】
2010131322.tif 000026
【図２５】
2010131322.tif 000027
【図２６】
2010131322.tif 000028
【図２７】
2010131322.tif 000029
【図２８】
2010131322.tif 000030
【図２９】
2010131322.tif 000031