(57)【要約】    【構成】  ゲーム装置にモニタおよびコントローラを接続してゲームシステムが構成される。音入力があったとき、プレイヤキャラクタ７４の近傍の妖精キャラクタ７６１−７６ｎが基準位置８０１−８０ｎが示す矢印形状に配置表示される。    【効果】  仮想空間内でゲームに登場する妖精キャラクタによってプレイヤにヒントを与えることができるので、ヒントが仮想現実を壊すことがない。【選択図】  図１３
2005318933.tif 000002
【特許請求の範囲】
【請求項１】
コントローラの操作によって動作が制御できる第１キャラクタと、複数の第２キャラクタとを仮想世界に登場させてゲームを進行させるゲーム装置であって、
前記コントローラからの操作信号に基づいて前記第１キャラクタの動作を制御する第１キャラクタ制御手段、および
所定の入力があった場合に前記第２キャラクタを所定形状に配置した第１態様表示を行い、前記所定の入力がない場合に前記第２キャラクタを所定規則に従って第２態様表示を行なう第２キャラクタ表示手段を備える、ゲーム装置。
【請求項２】
前記第２キャラクタ表示手段は、前記所定形状を形成する複数の所定形状基準位置を前記仮想世界内に設定する所定形状基準位置設定手段を含み、前記第１態様表示では前記複数の第２キャラクタの各々を前記所定形状基準位置に対応付けて表示する、請求項１記載のゲーム装置。
【請求項３】
前記第２キャラクタ表示手段は、前記複数の第２キャラクタを移動制御する際の基準となる移動基準位置を前記仮想世界内に設定する移動基準位置設定手段を含み、前記第２態様表示では前記複数の第２キャラクタの各々を前記移動基準位置に対応付けかつ各第２キャラクタが対応の前記移動基準位置を基準として移動するように表示する、請求項２記載のゲーム装置。
【請求項４】
音を入力するための音入力手段をさらに備え、
前記所定の入力は前記音入力手段への音入力である、請求項１ないし３のいずれかに記載のゲーム装置。
【請求項５】
前記第２キャラクタ表示手段は、前記第１態様表示から一定時間経過後に前記第２態様表示に移行させる移行手段を含む、請求項1ないし４のいずれかに記載のゲーム装置。
【請求項６】
前記第２キャラクタ表示手段は第２キャラクタを半透明に表示する、請求項1ないし５のいずれかに記載のゲーム装置。
【請求項７】
コントローラの操作によって動作が制御できる第１キャラクタと、複数の第２キャラクタとを仮想世界に登場させてゲームを進行させるゲーム装置のゲームプログラムであって、
前記ゲーム装置を
前記コントローラからの操作信号に基づいて前記第１キャラクタの動作を制御する第１キャラクタ制御手段、および
所定の入力があった場合に前記第２キャラクタを所定形状に配置した第１態様表示を行い、前記所定の入力がない場合に前記第２キャラクタを所定規則に従って第２態様表示を行なう第２キャラクタ表示手段として機能させる、ゲームプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明はゲーム装置に関し、特に、複数のキャラクタを所定形状に配置して、たとえば、プレイヤにヒントを提示するゲーム装置に関する。
【背景技術】
【０００２】
特許文献１には、プレイヤにヒントを表示するゲーム装置が開示されている。このゲーム装置では、キャラクタが看板の近傍に到達したときに、看板に書かれているヒント内容を看板とは別の場所に表示する。
【特許文献１】特開２００２−８５８３４号公報［Ａ６３Ｆ１３／１０  １３／１２］
【発明の開示】
【発明が解決しようとする課題】
【０００３】
特許文献１に開示されるゲーム装置では、ゲームの途中でプレイヤにヒントが出されるので、ゲームの進行に有利であるが、ヒント内容が仮想世界の表現とは別にテキスト表示されるため、仮想現実感を壊すおそれがあった。また、ヒント内容を表示するための領域を仮想空間の表示領域とは別に設ける必要があった。
【０００４】
それゆえに、この発明の主たる目的は、新規なゲームシステムを提供することである。
【０００５】
この発明の他の目的は、仮想現実感を壊すことなく、ヒント内容を提示することができる、ゲーム装置を提供することである。
【課題を解決するための手段】
【０００６】
請求項１の発明は、コントローラの操作によって動作が制御できる第１キャラクタと、複数の第２キャラクタとを仮想世界に登場させてゲームを進行させるゲーム装置であって、コントローラからの操作信号に基づいて第１キャラクタの動作を制御する第１キャラクタ制御手段、および第２キャラクタ表示手段を備え、第２キャラクタ表示手段は、所定の入力があった場合に第２キャラクタを所定形状に配置した第１態様表示を行い、所定の入力がない場合に第２キャラクタを所定規則に従って第２態様表示を行なう、ゲーム装置である。
【０００７】
請求項１の発明では、ゲーム装置（１２）にモニタ（３０）およびコントローラ（１００：実施例で相当する部分を示す参照号。以下、同様。）を接続してゲームシステムを構成する。コントローラは第１叩き操作面（１２０）および第２叩き操作面（１２２）を有し、ゲームプレイヤがそれらの叩き操作面を叩くことによって、コントローラから操作信号がゲーム装置（１２）に入力される。第１キャラクタ制御手段（３６，Ｓ１）は、その操作信号に応じて、第１キャラクタ（プレイヤキャラクタ）を移動させ、モニタ（３０）に表示する。
【０００８】
第２キャラクタ表示手段（３６，Ｓ２９，Ｓ３５）は、たとえばマイク（１２４）のような音入力手段からの音入力のような所定の入力があったときには、第２キャラクタは第１態様で表示される（図１２，図１４）。つまり、第２キャラクタが所定形状を形成するように表示される。所定形状がたとえばプレイヤキャラクタが進むべき方向を指し示す矢印であるなら、プレイヤはその矢印が示す方向へプレイヤキャラクタを移動させればよい。すなわち、第１態様表示で所定形状に配置された複数の第２キャラクタがプレイヤにヒントを与えることになる。この場合、仮想世界内に第３キャラクタを配置し、矢印の頭の位置と当該第３キャラクタの配置位置を結ぶ方向に伸びる矢印を所定形状にしてもよい。
【０００９】
また、所定形状がプレイヤキャラクタの移動のための足場を形成する形状であるなら、プレイヤはその足場を使って（足場に乗って）プレイヤキャラクタを移動させればよい。すなわち、第１態様表示で所定形状に配置された複数の第２キャラクタがプレイヤのゲーム進行の手助けをすることになる。
【００１０】
なお、所定形状の例は上述の例に限られず、プレイヤにヒントを与えたりゲーム進行の手助けをするような形状が好ましいが、逆に、プレイヤキャラクタの進行ルート上に壁が形成される等、プレイヤのゲーム進行を妨害するような形状であってもかまわない。
【００１１】
しかしながら、音入力のような所定の入力がないときは、第２キャラクタ表示手段は、第２キャラクタを第２態様で表示する（図１１，図１３）。
【００１２】
なお、所定の入力があった場合に、所定の条件を満たす第２キャラクタのみを第１態様で表示し、他の第２キャラクタは第２態様で表示するようにしてもよい。具体的には、音入力があった場合に仮想世界に所定の変化を起こし、各第２キャラクタがその所定の変化の影響を受けるか否かを判断して、影響をうける第２キャラクタのみ第１態様で表示するようにしてもよい。また、代表的な第２キャラクタが所定の変化の影響を受けるか否かを判断して、その代表的な第２キャラクタが所定の変化の影響を受ける場合に複数の第２キャラクタを第１態様で表示するようにしてもい。
【００１３】
また、複数の第２キャラクタのそれぞれの基準位置が第１キャラクタの位置に基づいて決まる所定領域内にあるとき（プレイヤキャラクタの位置を基準として決定される画面領域内にあるとき）、第２キャラクタを表示するようにしてもよい。
【００１４】
請求項１の発明によれば、仮想現実感を壊すことなく、また、表示領域を別途設ける必要なく、プレイヤがゲームを進行する手助けとなる処理をすることができる。また、所定入力がないときには手助け処理がされておらず、すなわち、常に手助け処理がされているのではないため、ゲーム進行が深みを増すことになる。たとえば、手助け処理がヒントを表示する処理であった場合、常にヒントが表示されていたのでは、味気なく深みがないため興趣性をそぐ場合があるが本発明ではそのようなことがない。
【００１５】
また、この発明では、プレイヤは第２態様表示を見たときには、何らかの手助け処理があるということがわかるので、所定入力を行なうか否かの判断材料をプレイヤに与えることができる。
【００１６】
請求項２の発明は、第２キャラクタ表示手段は、所定形状を形成する複数の所定形状基準位置を仮想世界内に設定する所定形状基準位置設定手段を含み、第１態様表示では複数の第２キャラクタの各々を所定形状基準位置に対応付けて表示する、請求項１記載のゲーム装置である。
【００１７】
請求項２の発明では、たとえばメインメモリ（４０）のような所定形状基準位置設定手段に、第１態様表示のときに複数のノンプレイヤキャラクタ（第２キャラクタである妖精キャラクタ）を所定形状に配置するためのそれぞれの基準位置を設定しておき、第１態様表示のとき、各第２キャラクタをそれぞれの所定形状基準位置に対応付けて表示する。具体的には、その所定形状基準位置に第２キャラクタが配置される。
【００１８】
請求項２の発明によれば、請求項１の発明と同様の効果がある。
【００１９】
請求項３の発明は、第２キャラクタ表示手段は、複数の第２キャラクタを移動制御する際の基準位置となる複数の移動基準位置を仮想世界内に設定する移動基準位置設定手段を含み、第２態様表示では複数の第２キャラクタの各々を移動基準位置に対応付けかつ各第２キャラクタが対応の移動基準位置を基準として移動するように表示する、請求項２記載のゲーム装置である。
【００２０】
請求項３の発明では、たとえばメインメモリ（４０）のような移動基準位置設定手段に、第２態様表示のときに複数のノンプレイヤキャラクタ（第２キャラクタである妖精キャラクタ）を移動制御するためのそれぞれの基準位置を設定しておき、第２態様表示のとき、各第２キャラクタをそれぞれの移動基準位置を基準として移動するように表示する。たとえば、その移動基準位置から対応する第２キャラクタが離れないように第２キャラクタを移動させながら表示する。具体的には、たとえば、第２キャラクタが対応する移動基準位置から離れたときには、当該第２キャラクタを対応する移動基準位置に向かう方向に移動するように制御したり、対応する移動基準位置を基準とする決定される所定領域内でランダム移動させることが考えられる。また、前者の場合には、対応する移動基準位置から離れた距離に応じて、移動基準位置に向かう加速度（または速度）を大きくしてもよい。
【００２１】
請求項３の発明によれば、請求項１の発明と同様の効果がある。
【００２２】
請求項４の発明は、音を入力するための音入力手段をさらに備え、所定の入力は音入力手段への音入力である、請求項１ないし３のいずれかに記載のゲーム装置である。
【００２３】
たとえばマイクである音入力手段(１２４)は、実施例ではコントローラ(１００)に設けられるが、コントローラとは別に設けられてもよい。
【００２４】
請求項４の発明によれば、手助け処理が音入力により起動するため、プレイヤ以外の者が音入力をして手助け処理を起動することができる。このため、プレイヤはプレイヤキャラクタの動作制御の操作に集中することができる。また、プレイヤがプレイヤキャラクタの動作制御の操作で忙しくて音入力を行なう余裕がない場合や、プレイヤが第２態様表示に気づかなかった場合に（手助け処理があることに気づかなかった場合に）、周りの観戦者等が音を発して入力を行なうことにより手助け処理を起動してプレイヤを助けることができる。もちろん音入力をプレイヤが行なってもよい。
【００２５】
請求項５の発明は、第２キャラクタ表示手段は、第１態様表示から一定時間経過後に第２態様表示に移行させる移行手段を含む、請求項1ないし４のいずれかに記載のゲーム装置である。
【００２６】
請求項５の発明では、移行手段（３６，Ｓ３３）が、第１態様表示の時間を計測し、それが一定時間になったら、第２態様表示で第２キャラクタを表示する。
【００２７】
請求項５の発明によれば、所定入力を行なった後、手助け処理を活用するゲーム操作をすばやく行なう必要があるため、ゲーム性が増す。
【００２８】
請求項６の発明は、第２キャラクタ表示手段は第２キャラクタを半透明に表示する、請求項1ないし５のいずれかに記載のゲーム装置である。
【００２９】
請求項６の発明によれば、第２態様表示によって仮想世界の表示が見えづらくなることがない。
【００３０】
請求項７の発明は、コントローラの操作によって動作が制御できる第１キャラクタと、複数の第２キャラクタとを仮想世界に登場させてゲームを進行させるゲーム装置のゲームプログラムであって、ゲーム装置を、コントローラからの操作信号に基づいて第１キャラクタの動作を制御する第１キャラクタ制御手段、および所定の入力があった場合に第２キャラクタを所定形状に配置した第１態様表示を行い、所定の入力がない場合に第２キャラクタを所定規則に従って第２態様表示を行なう第２キャラクタ表示手段として機能させる、ゲームプログラムである。
【００３１】
請求項７の発明では、請求項１の発明と同様の効果が期待できる。
【発明の効果】
【００３２】
この発明によれば、ゲームの仮想世界に登場する第２キャラクタを所定の入力に応じて所定形状に配置することによって、仮想現実感を壊すことなく、プレイヤにゲーム上のヒントを与えることができる。
【００３３】
この発明の上述の目的，その他の目的，特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【発明を実施するための最良の形態】
【００３４】
図１を参照して、この実施例のビデオゲームシステム１０はビデオゲーム装置１２を含む。ビデオゲーム装置１２は、略立方体のハウジング１４を含み、ハウジング１４の上端には光ディスクドライブ１６が設けられる。光ディスクドライブ１６には、ゲームプログラム等を記憶した情報記憶媒体の一例であるたとえばＣＤ−ＲＯＭやＤＶＤ-ＲＯＭのような光ディスク１８が装着される。ハウジング１４の前面には複数の（実施例では４つの）コネクタ２０が設けられる。これらコネクタ２０は、ケーブル２４によって、コントローラ１００をビデオゲーム装置１２に接続するためのものであり、この実施例では最大４つのコントローラ１００をビデオゲーム装置１２に接続することができる。なお、この発明を実行する装置は、ビデオゲーム装置に限られず、携帯型ゲーム装置，業務用ゲーム装置，または携帯電話等、ゲームを実行可能な装置であればなんでもよい。
【００３５】
そして、このコントローラ１００はケーブル２２によってビデオゲーム装置１２に接続される。しかしながら、コントローラ１００は、他の方法、たとえば電磁波（たとえば電波または赤外線）を介してワイヤレスで、ビデオゲーム装置１２に接続されてもよい。
【００３６】
ビデオゲーム装置１２のハウジング１４の前面のコネクタ２０の下方には、少なくとも１つの（この実施例では２つの）メモリスロット２２が設けられる。このメモリスロット２２にはメモリカード２４が挿入される。メモリカード２８は、光ディスク１８から読み出したゲームプログラム等をローディングして一時的に記憶したり、このゲームシステム１０を利用してプレイしたゲームのゲームデータ（たとえばゲームの結果）を保存（セーブ）しておいたりするために利用される。
【００３７】
ビデオゲーム装置１２のハウジング１４の後面には、ＡＶケーブルコネクタ（図示せず）が設けられ、そのコネクタを用いて、ＡＶケーブル２８を通してビデオビデオゲーム装置１２にモニタ３０を接続する。このモニタ３０は典型的にはカラーテレビジョン受像機であり、ＡＶケーブル２８は、ビデオゲーム装置１２からの映像信号をカラーテレビのビデオ入力端子に入力し、音声信号を音声入力端子に与える。したがって、カラーテレビ（モニタ）３０の画面３２上にたとえば３次元（３Ｄ）ビデオゲームのゲーム画像が表示され、左右のスピーカ３４からゲーム音楽や効果音などのステレオゲーム音声、または２スピーカであってもサラウンド効果を出すことが可能な場合は、サラウンド音声を含むゲーム音声が出力される。
【００３８】
このゲームシステム１０において、ユーザまたはゲームプレイヤがゲーム（または他のアプリケーション）をプレイするために、ユーザはまずゲーム装置１２の電源をオンし、次いで、ユーザはビデオゲーム（もしくはプレイしたいと思う他のアプリケーション）をストアしている適宜の光ディスク１８を選択し、その光ディスク１８をゲーム装置１２のディスクドライブ１６にローディングする。応じて、ゲーム装置１２がその光ディスク１８にストアされているソフトウェアに基づいてビデオゲームもしくは他のアプリケーションを実行し始めるようにする。ユーザはゲーム装置１２に入力を与えるためにコントローラ１００を操作する。応じて、ゲームもしくは他のアプリケーションをスタートさせ、さらには動画キャラクタ（プレイヤキャラクタ）を異なる方向に移動させたりできる。
【００３９】
ここで、図１−図５を参照して、実施例のコンガ型コントローラ１００を詳細に説明する。コントローラ１００は筐体１１２を含み、この筐体１１２は、樽形状に形成される第１ハウジング１１４と、当該第１ハウジング１１４とほぼ同じ形状および大きさに形成される第２ハウジング１１６と、第１ハウジング１１４と第２ハウジング１１６とを連結し、第１ハウジング１１４および第２ハウジング１１６よりも小さい大きさで略四角柱（直方体）状に形成される第３ハウジング（連結部）１１８とによって構成される。
【００４０】
また、第１ハウジング１１４および第２ハウジング１１６の上面（天面）には、カバー１２０および１２２がそれぞれ設けられ、このカバー１２０および１２２によって覆われる領域がプレイヤないしユーザが操作（叩き操作）する領域（操作領域）または叩き操作面である。つまり、操作装置ないしコントローラ１００は、第１ハウジング１１４の上面と第２ハウジング１１６の上面とに２つの操作入力部を有している。たとえば、カバー１２０および１２２はラバーで形成され、プレイヤないしユーザの叩き操作によって、弾性変形し、その後、元の形状に戻る。カバー１２０および１２２は平面視の大きさ（カバーを真上から見た形状の大きさ）が少なくとも直径３ｃｍの円を含む大きさである。これによって、プレイヤによる叩き操作が容易になる。なお、カバー１２０および１２２の形状は円形でなくてもよく、円を含む形状であれば楕円でも矩形でもその他どのような形状でもよい。
【００４１】
なお、図１に示すように、第３ハウジング１１８の上面には、マイク１２４が設けられる。音を集音するための孔を設ける場合には、マイク１２４は第３ハウジング１１８の内部或いは集音部が当該孔から露出するように設置される。ただし、この実施例では、マイク１２４を第３ハウジング１１８に設けるようにしてあるが、ユーザが叩き操作する操作領域（操作入力部）以外であれば、第１ハウジング１１４または第２ハウジング１１６に設けるようにしてもよい。
【００４２】
図２はコントローラ１００の一部についての分解図である。つまり、第１ハウジング１１４側についての分解図であり、第２ハウジング１１６および第３ハウジング１１８については簡単のため、省略してある。
【００４３】
図２を参照して、第１ハウジング１１４には上面（天面）パネル１２６を含み、この上面パネル１２６の上方には、大きさの異なるスイッチ基板１３０およびスイッチ基板１３２が設けられ、このスイッチ基板１３０および１３２は、上面パネル１２６の所定位置にそれぞれ固定的に配置（収納）される。図２では省略するが、スイッチ基板１３０および１３２のそれぞれには、２つの接点（図４および図５ではスイッチ基板１３２の接点１３２ａ,１３２ａだけが図示される。）が設けられる。
【００４４】
スイッチ基板１３０および１３２の上方には、それぞれ、２つのラバースイッチ１３４が配置され、このラバースイッチ１３４は、後述する押圧突起１５０および１５４の先端に接合される。図２では省略するが、このラバースイッチ１３４の裏面には、接点１３４ａが設けられ、各ラバースイッチ１３４は、スイッチ基板１３０および１３２の接点と対向する位置に設けられる（図４参照）。
【００４５】
ラバースイッチ１３４の上方には、第１ハウジング１１４の蓋１３６が設けられ、これが上面パネル１２６、スイッチ基板１３０、１３２およびラバースイッチ１３４を覆うように第１ハウジング１１４に装着される。蓋１３６には、後述する係合突起１４８および１５２を通すための５つの孔１３８と押圧突起１５０および１５４と対向する位置に配置されたラバースイッチ１３４を通すための４つの孔１４０とが設けられる。
【００４６】
蓋１３６の上方には、異なる大きさ（形状）の押し下げ部材１４２および押し下げ部材１４４が設けられ、さらに、その上方には、蓋１３６に装着されるカバー１２０が設けられる。図３および図３のIV-IV断面図の一部である図４に示すように、押し下げ部材１４２は、三日月形状の本体１４６を有し、本体１４６から下方に突出して、３つの係合突起１４８および２つの押圧突起１５０が設けられる。また、押し下げ部材１４４は、半月形状の本体１５２を含み、本体１５２から下方に突出して、３つの係合突起１５２および２つの押圧突起１５４が設けられる。
【００４７】
図３は第１ハウジング１１４およびカバー１２０を真上から見た図であり、係合突起１４８，押圧突起１５０，係合突起１５２および押圧突起１５４は、それぞれ、図３に示すような位置に配置される。図３から分かるように、３つの係合突起１４８は押し下げ部材１４２の本体１４６の端部（左右両端および下端）に設けられ、２つの押圧突起１５０は３つの係合突起１４８の間に設けられる。また、３つの係合突起１５２は押し下げ部材１４４の本体１５２の端部（左右両端および上端）に設けられ、２つの押圧突起１５４は３つの係合突起１５２の間に設けられる。また、図４に示すように、係合突起１５２（係合突起１４８も同様である。）は、少なくともその先端に設けられる係合部１５８が上面パネル１２６の裏面（第１ハウジング１１４の内部）まで貫通するように、蓋１３６に設けられる孔１３８および上面パネル１２６に設けられる孔を通される。ただし、蓋１３６が上面パネル１２６に装着されることにより、孔１３８の内部に面パネル１２６の孔が形成されることになる。さらに、押圧突起１５０および押圧突起１５４は、蓋１３６の孔１４０内に配置されるラバースイッチ１３４を押圧するように設けられる。言い換えると、ラバースイッチ１３４は、その表面（押圧突起１５０および押圧突起１５４と接合される面）が第１ハウジング１１４の孔１４０から露出するように第１ハウジング１１４内に収納される。
【００４８】
なお、押圧突起１５０および１５４の先端部は、図４に示すようにラバースイッチ１３４上に接触して載置される。あるいは、ラバースイッチ１３４と嵌合構造または接着或いはその両方によって、接合されてもよい。したがって、ラバースイッチ１３４によって、押し下げ部材１４２および１４４は、支持されることになる。
【００４９】
また、図３および図４に示すように、係合突起１５２（係合突起１４８も同じ。）には、切り欠き（スリット）１６０が設けられ、これにより、係合突起１４８および１５２は、面パネル１２６の孔を通るときに縮径され、その孔を貫通すると、元に戻り、係合部１５８が上面パネル１２６の裏面（第１ハウジング１１４の内壁）に係合する。このため、押し下げ部材１４２および１４４が離脱してしまうのを防止することができる。
【００５０】
たとえば、図５（Ａ）に示すように、プレイヤがコントローラ１００（カバー１２０）の右側を叩くと、これによって、カバー１２０は弾性変形し、押し下げ部材１４４（押し下げ部材１４２も同じ。）の右側が押し下げられようとする。このとき、押し下げ部材１４４の左側に設けられる係合突起１５２の係合部１５８が上面パネル１２６の裏面に係合する。これにより、押し下げ部材１４４が上方向に付勢されることが防止される。したがって、押し下げ部材１４４の右側が下方向に付勢され、当該右側のラバースイッチ１３４が押圧部材１５４によって押圧され、スイッチ基板１３２に接触する。すなわち、接点１３２ａと接点１３４ａとが接触する。
【００５１】
また、図５（Ｂ）に示すように、プレイヤがコントローラ１００（カバー１２０）の左側を叩くと、これによって、カバー１２０が弾性変形し、押し下げ部材１４４（押し下げ部材１４２も同じ。）の左側が押し下げられようとする。このとき、押し下げ部材１４４の右側に設けられる係合突起１５２の係合部１５８が上面パネル１２６の裏面に係合する。これにより、押し下げ部材１４４が上方向に付勢されることが防止される。したがって、押し下げ部材１４４の左側が下方向に付勢され、当該左側のラバースイッチ１３４が押圧部材１５４によって押圧され、ラバースイッチ１３４の接点１３４ａがスイッチ基板１３２の接点１３２ａに接触する。
【００５２】
つまり、押し下げ部材１４４（押し下げ部材１４２も同じ。）のいずれの位置（領域）が叩かれたとしても、叩いた位置或いはその近傍に設けられる係合突起１５２（１４８）以外の少なくとも１つの係合突起１５２（１４８）の係合部１５８が上面パネル１２６の裏面に係合する。このため、プレイヤの叩き操作があると、押し下げ部材１４４（１４２）が押し下げられ、いずれかのラバースイッチ１３４の接点１３４ａは、スイッチ基板１３２の接点１３２ａ（スイッチ基板１３０の接点）に、必ず接触されるのである。
【００５３】
具体的には、図５に示すコントローラ１００（カバー１２０）の左半分の領域のいずれかの位置が叩かれたときは、押し下げ部材１４４の右側に設けられる係合突起１５２の係合部１５８が上面パネル１２６の裏面に係合し、押し下げ部材１４４の左側が下方向に付勢され、当該左側のラバースイッチ１３４が押圧部材１５４によって押圧され、ラバースイッチ１３４の接点１３４ａがスイッチ基板１３２の接点１３２ａに接触する。反対に、コントローラ１００（カバー１２０）の右半分の領域のいずれかの位置が叩かれたときは、押し下げ部材１４４の左側に設けられる係合突起１５２の係合部１５８が上面パネル１２６の裏面に係合し、押し下げ部材１４４の右側が下方向に付勢され、当該右側のラバースイッチ１３４が押圧部材１５４によって押圧され、ラバースイッチ１３４の接点１３４ａがスイッチ基板１３２の接点１３２ａに接触する。また、コントローラ１００（カバー１２０）の中央部分の領域のいずれかの位置が叩かれたときは、押し下げ部材１４４の左右両方が略均一に押下げられるので、左右両方のラバースイッチ１３４が押圧部材１５４によって押圧され、ラバースイッチ１３４の接点１３４ａがスイッチ基板１３２の接点１３２ａに接触する。
【００５４】
このように、コントローラ１００（カバー１２０または１２２）のどの位置（領域）が叩かれても確実にいずれかのラバースイッチを押圧して同じ操作信号を出力することができる。
【００５５】
コントローラ１００の電気的な構成が図６に示される。この図６を参照して、コントローラ１００は、コントローラＩＣ１６２を含み、コントローラＩＣ１６２には、第１ボタン１６４，第２ボタン１６６，第３ボタン１６８および第４ボタン１７０が接続される。また、上述したケーブル３８の端部であり、プラグ３６が接続されない側の端部がコントローラＩＣ１６２に接続される。したがって、図１に示すように、ケーブル２２がゲーム装置１２のコネクタ２０に差し込まれることによって、図６に示すように、コントローラＩＣ１６２はゲーム装置１２と電気的に接続される。さらに、コントローラＩＣ１６２には、オペアンプ１７２を介してマイク１２４が接続される。
【００５６】
第１ボタン１６４および第２ボタン１６６は、第１ハウジング１１４に設けられるボタンであり、この実施例では、第１ボタン１６４は、スイッチ基板１３０およびそのスイッチ基板１３０の上方に（に対向して）設けられる２つのラバースイッチ１３４によって構成される。また、第２ボタン１６６は、スイッチ基板１３２およびそのスイッチ基板１３２に対向して設けられる２つのラバースイッチ１３４によって構成される。
【００５７】
第３ボタン１６８および第４ボタン１７０は、第２ハウジング１１６に設けられるボタンであり、この実施例では、第３ボタン１６８は、第１ボタン１６４と同様に構成され、第４ボタン１７０は、第２ボタン１６６と同様に構成される。
【００５８】
したがって、コントローラ１００では、プレイヤは、第１ボタン１６４ないし第４ボタン１７０のいずれか１つまたはいずれか２つ以上の組み合わせにより、様々な操作をすることができるのである。プレイヤの叩き操作が第１ボタン１６４ないし第４ボタン１６６のオン／オフの状態信号でコントロールＩＣ１６２に入力される。そして、叩き操作に応じた操作信号がコントローラＩＣ１６２からゲーム装置１２に出力される。
【００５９】
また、コントローラ１００では、プレイヤが手拍子や音声により音を発生すると、その音がマイク１２４に入力され、オペアンプ１７２で増幅された後、コントローラＩＣ１６２に入力される。これにより、音の発音による操作信号がコントローラＩＣ１６２からゲーム装置１２に出力される。たとえば、図１に示すように、コントローラ１００のマイク１２４の近傍で拍手すると、その拍手による音がマイク１２４に入力され、そのときの音量が閾値以上であれば、音入力があったものとして検出される。
【００６０】
図7には、コントローラＩＣ１６２からゲーム装置１２に出力される操作信号のフォーマットの一例が示される。ただし、操作信号は、ゲーム装置１２（この実施例では、本件出願人が製造販売する「ＧＡＭＥ  ＣＵＢＥ（商品名）」）の標準のコントローラに対応したフォーマットであり、図示は省略するが、当該コントローラは、２つのアナログジョイスティック（コントロールスティックおよびＣスティック），十字キー，Ａボタン，Ｂボタン，Ｘボタン，Ｙボタン，Ｚボタン，Ｌトリガーボタン，Ｒトリガーボタンおよびスタート（ＳＴＡＲＴ）／ポーズ（ＰＡＵＳＥ）ボタンなどを備える。
【００６１】
図７からも分かるように、操作信号は８バイトで構成され、１バイト目（1st  byte）には、ビット７（b7）から順にビット０（b0）まで、“０”，“０”，“ＯＲＧ＿ＣＨ”，“ＳＴＡＲＴ”，“Ｙ”，“Ｘ”，“Ｂ”および“Ａ”についてのデータが書き込まれる。ビット７およびビット６は固定値“０”であり、ビット５は設定モード“ＯＲＧ＿ＣＨ”のオンまたはオフを示すデータが書き込まれる。この実施例では、設定モード“ＯＲＧ＿ＣＨ”がオンである場合には“１”が書き込まれ、設定モード“ＯＲＧ＿ＣＨ”がオフである場合には“０”が書き込まれる。ここで、“ＯＲＧ＿ＣＨ”は、基準位置（ジョイスティックの原点（ニュートラルポジション））を再設定するか否かを設定するモード（設定モード）についての変数である。ビット４〜ビット０は、Ｙボタン，Ｘボタン，ＢボタンおよびＡボタンの各々のオンまたはオフを示すデータが書き込まれる。この実施例では、ボタンがオンである場合には該当するビットに“１”が書き込まれ、ボタンがオフである場合には該当するビットに“０”が書き込まれる。
【００６２】
２バイト目（2nd  byte）には、ビット７から順にビット０まで、“ＦＩＮ”，“Ｌ”，“Ｒ”，“Ｚ”，“ＵＰ”，“ＤＯＷＮ”，“ＲＩＧＨＴ”および“ＬＥＦＴ”についてのデータが書き込まれる。ビット７はコントローラを識別するモード“ＦＩＮ”のオンまたはオフを示すデータが書き込まれる。この実施例では、標準コントローラの場合にはオンである“１”が書き込まれ、操作装置１０（打楽器型コントローラ）の場合にはオフである“０”が書き込まれる。ビット６−ビット０には、Ｌトリガーボタン，Ｒトリガーボタン、Ｚボタン、ＵＰ（上）ボタン、ＤＯＷＮ（下）ボタン、ＲＩＧＨＴ（右）ボタンおよびＬＥＦＴ（左）ボタンの各々のオン／オフを示すデータが書き込まれる。各ビットに書き込まれるデータ値は、上述したＹボタン等と同じである。
【００６３】
なお、ＵＰ（上）ボタン、ＤＯＷＮ（下）ボタン、ＲＩＧＨＴ（右）ボタンおよびＬＥＦＴ（左）ボタンは、十字キーの各ボタンである。
【００６４】
３バイト目（3rd  byte）には、コントロールスティックのＸ方向の傾き量を示すデータが全８ビットを用いた２進数のデータで書き込まれる。したがって、Ｘ方向の傾きは、“00000000”（１０進数で“０”）−“11111111”（“２５５”）で表される。たとえば、コントロールスティックを左に傾けると“０”に近づき、右に傾けると“２５５”に近づく。
【００６５】
なお、デフォルト設定では、ニュートラルポジションは“１２８（0100000）”であるため、これより小さい場合には、左方向に傾けられていることが分かり、これより大きければ右方向に傾けられていることが分かる。また、その傾き量は、取得したデータ値とニュートラルポジションのデータ値との差分によって検出することができる。
【００６６】
４バイト目（4th  byte）には、コントロールスティックのＹ方向の傾き量を示すデータが全８ビットを用いた２進数のデータで書き込まれる。したがって、Ｙ方向の傾きもまた、Ｘ方向と同様に、“00000000”（１０進数で“０”）−“11111111”（“２５５”）で表される。たとえば、コントロールスティックを下に傾けると“０”に近づき、上に傾けると“２５５”に近づく。
【００６７】
なお、デフォルト設定では、ニュートラルポジションは“１２８（0100000）”である
ため、これより小さい場合には、下方向に傾けられていることが分かり、これより大きければ上方向に傾けられていることが分かる。また、その傾き量は、取得したデータ値とニュートラルポジションのデータ値との差分によって検出することができる。
【００６８】
５バイト目（5th  byte）には、ＣスティックのＸ方向の傾き量を示すデータが全８ビットを用いた２進数のデータで書き込まれる。また、６バイト目（6th  byte）には、ＣスティックのＹ方向の傾き量を示すデータが全８ビットを用いた２進数のデータで書き込まれる。これらのデータ値の決め方は、上述したコントロールスティックの場合と同じである。
【００６９】
７バイト目（7th  byte）には、Ｌトリガーボタンの押し込み量を示すデータが全０ビットを用いた２進数のデータで書き込まれる。Ｌトリガーボタンが押されていない場合のデータ値は“00000000”であり、押し込み量に応じてデータ値は大きくされ、最大限に押し込んだ場合のデータ値は“11111111”となる。
【００７０】
８バイト目（8th  byte）には、Ｒトリガーボタンの押し込み量を示すデータが全０ビットを用いた２進数で書き込まれる。このデータ値の決め方は、Ｌトリガーボタンの場合と同じである。
【００７１】
このように、操作信号のフォーマットが示されるが、コントローラ１００にはジョイスティック、Ｙボタン、Ｘボタン、ＢボタンおよびＡボタンは設けられておらず、第１ボタン１６４ないし第４ボタン１７０のオン／オフについての操作信号とマイク１２４への音の発音による操作信号とコントローラ識別モードとをゲーム装置１２に出力するようにしてあるため、たとえば１バイト目−３バイト目までのデータが使用されることになる。具体的には、第１ボタン１６４のオン／オフのデータが１バイト目のビット３に書き込まれ、第２ボタン１６６のオン／オフのデータがビット２に書き込まれ、第３ボタン１６８のオン／オフのデータがビット１に書き込まれ、そして、第４ボタン１７０のオン／オフのデータがビット０に書き込まれる。また、コントローラ１００（打楽器型コントローラ）であることを識別するためのデータである“０”が２バイト目のビット７に書き込まれる。さらに、マイク１２４への音の入力の有無（オン／オフ）のデータが３バイト目に書き込まれる。なお、音の大きさ（音量）のデータもゲーム装置に出力する場合には、３バイト目に音量に対応するデータ値（“00000000”−“11111111”）も書き込まれる。
【００７２】
なお、図１に示すようにコントローラ１００には、スタート／ポーズボタン１７４も設けられるため、そのオン／オフのデータがビット４に書き込まれる。
【００７３】
図８は図１実施例のビデオゲームシステム１０の電気的な構成を示すブロック図である。ビデオゲーム装置１２には、中央処理ユニット（以下、「ＣＰＵ」という。）３６が設けられる。このＣＰＵ３６は、コンピュータ或いはプロセサなどとも呼ばれ、ビデオゲーム装置１２の全体的な制御を担当する。ＣＰＵ３６ないしコンピュータは、ゲームプロセサとして機能し、このＣＰＵ３６には、バスを介して、メモリコントローラ３８が結合される。メモリコントローラ３８は主として、ＣＰＵ３６の制御の下で、バスを介して結合されるメインメモリ４０の書込みや読出しを制御する。このメモリコントローラ３８にはＧＰＵ(Graphics Processing Unit:グラフィックス処理装置) ４２が結合される。
【００７４】
ＧＰＵ４２は、描画手段の一部を形成し、たとえばシングルチップＡＳＩＣで構成され、メモリコントローラ３８を介してＣＰＵ３６からのグラフィクスコマンド(graphics command ：作画命令) を受け、そのコマンドに従って、ジオメトリユニット４４およびレンダリングユニット４６によって３次元（３Ｄ）ゲーム画像を生成する。つまり、ジオメトリユニット４４は、３次元座標系の各種キャラクタやオブジェクト（複数のポリゴンで構成されている。そして、ポリゴンとは少なくとも３つの頂点座標によって定義される多角形平面をいう。）の回転，移動，変形等の座標演算処理を行う。レンダリングユニット４６は、各種オブジェクトの各ポリゴンにテクスチャ（Texture ：模様画像）を張り付けるなどの画像生成処理を施す。したがって、ＧＰＵ４２によって、ゲーム画面上に表示すべき３Ｄ画像データが生成（作成）され、その画像データがフレームバッファ４８内に描画（記憶）される。
【００７５】
なお、ＧＰＵ４２が作画コマンドを実行するにあたって必要なデータ（プリミティブまたはポリゴンやテクスチャ等）は、ＧＰＵ４２がメモリコントローラ３８を介して、メインメモリ４０から入手する。
【００７６】
フレームバッファ４８は、たとえばラスタスキャンモニタ３４の１フレーム分の画像データを描画（蓄積）しておくためのメモリであり、ＧＰＵ４２によって１フレーム毎に書き換えられる。後述のビデオＩ／Ｆ５８がメモリコントローラ３８を介してフレームバッファ４８のデータを読み出すことによって、モニタ３４の画面上に３Ｄゲーム画像が表示される。
【００７７】
また、Ｚバッファ５０は、フレームバッファ４８に対応する画素（記憶位置またはアドレス）数×１画素当たりの奥行データのビット数に相当する記憶容量を有し、フレームバッファ４８の各記憶位置に対応するドットの奥行き情報または奥行データ（Ｚ値）を記憶するものである。
【００７８】
なお、フレームバッファ４８およびＺバッファ５０は、ともにメインメモリ４０の一部を用いて構成されてもよい。
【００７９】
メモリコントローラ３８はまた、ＤＳＰ(Digital Signal Processor)５２を介して、ＡＲＡＭ５４に結合される。したがって、メモリコントローラ３８は、メインメモリ４０だけでなく、サブメモリとしてのＡＲＡＭ５４の書込みおよび／または読出しを制御する。
【００８０】
ＤＳＰ５２は、サウンドプロセサとして働き、ＣＰＵ３６の指示に従って、ＡＲＡＭ５４に書き込まれている音波形データ（図５参照）を用いて、ゲームに必要な音（効果音）、音声或いは音楽（ＢＧＭ）に対応するオーディオデータを生成する。
【００８１】
メモリコントローラ３８は、さらに、バスによって、各インタフェース（Ｉ／Ｆ）５６，５８，６０，６２および６４に結合される。コントローラＩ／Ｆ５６は、コントローラ２２のためのインタフェースであり、コントローラ１００のコントローラＩＣ１６２（図６）からの操作信号またはデータをメモリコントローラ３８を通してＣＰＵ３６に与える。ビデオＩ／Ｆ５８は、フレームバッファ４８にアクセスし、ＧＰＵ４２で作成した画像データを読み出して、画像信号または画像データ（ディジタルＲＧＢピクセル値）をＡＶケーブル２８（図１）を介してモニタ３０に与える。
【００８２】
外部メモリＩ／Ｆ６０は、ゲーム装置１２の前面に挿入されるメモリカード２６（図１）をメモリコントローラ３８に連係させる。それによって、メモリコントローラ３８を介して、ＣＰＵ３６がこのメモリカード２６にデータを書込み、またはメモリカード２６からデータを読み出すことができる。オーディオＩ／Ｆ６２は、メモリコントローラ３８を通してＤＳＰ５２から与えられるオーディオデータまたは光ディスク１８から読み出されたオーディオストリームを受け、それらに応じたオーディオ信号（音声信号）をモニタ３０のスピーカ３４に与える。
【００８３】
なお、ステレオ音声の場合には、スピーカ３４は、少なくとも、左右１つずつ設けられる。また、サラウンド処理することで、左右２つのスピーカのみであっても後方から音が発生しているように音を聞かせることも可能である。
【００８４】
そして、ディスクＩ／Ｆ６４は、そのディスクドライブ１６をメモリコントローラ３８に結合し、したがって、ＣＰＵ３６がディスクドライブ１６を制御する。このディスクドライブ１６によって光ディスク１８から読み出されたプログラムデータやテクスチャデータ等が、ＣＰＵ３６の制御の下で、メインメモリ４０に書き込まれる。
【００８５】
図９にはメインメモリ４０のメモリマップが示される。メインメモリ４０は、プログラム記憶領域６８，プログラムデータ記憶領域７０およびグラフィックデータ記憶領域７２を含む。ゲームプログラム記憶領域６８には、光ディスク１８から読み出したゲームプログラムが、１度に全部または部分的かつ順次的に、記憶される。
【００８６】
プログラムデータ記憶領域７０にも、同様に、光ディスク１８から読み出したプログラムデータが１度に全部または部分的かつ順次的に、記憶される。プログラムデータは、たとえば、キャラクタやオブジェクトのモデルの座標データを含む。このプログラムデータ記憶領域７０は、ゲームプレイヤがコントローラ１００を操作することによってゲーム空間内で移動させ、あるいは他の任意の動作をさせることができるキャラクタ（プレイヤキャラクタまたは第１キャラクタ）の座標データ（初期位置の座標データ）を記憶するプレイヤキャラクタ座標データ記憶領域７０ａ、および敵キャラクタや妖精キャラクタなどプレイヤキャラクタ以外のキャラクタ（ノンプレイヤキャラクタ：ゲームプレイヤによって操作または制御できないキャラクタ）の座標データ（初期位置の座標データ）を記憶するノンプレイヤキャラクタ座標データ記憶領域７０ｂを含む。
【００８７】
ノンプレイヤキャラクタ座標データ領域７０ｂには、移動基準位置データテーブル７０ｃと所定形状基準位置データテーブル７０ｄと現在位置データ７０ｅが設定されている。この実施例では、ノンプレイヤキャラクタである複数の妖精キャラクタが仮想世界に登場する。各妖精キャラクタには妖精番号が付られており、移動基準位置データテーブル７０ｃには、それぞれの妖精キャラクタの番号毎に、その番号の妖精キャラクタの移動制御の基準となる位置が３次元仮想空間（ゲーム空間またはゲーム世界）における座標として設定されている。また、所定形状基準位置データテーブル７０ｄには、それぞれの妖精キャラクタの番号毎に、音入力があった場合にその番号の妖精キャラクタが位置すべき基準位置が３次元仮想空間（ゲーム空間またはゲーム世界）における座標として設定されている。移動基準位置は、第２キャラクタ（妖精）が移動表示される第２態様表示のときに用いられ、所定形状基準位置は、第２キャラクタを所定形状、たとえば矢印形状やブロック形状に配置する第１態様表示のときに用いられる。また、現在位置データ７０ｅには、各妖精キャラクタの番号毎に、その番号の妖精キャラクタの現在位置が３次元仮想空間（ゲーム空間またはゲーム世界）における座標として記憶されている。
【００８８】
なお、移動基準位置と所定形状基準位置を同じ位置に設定してもよく、その場合には、いずれか一方のデータのみを設定すればよい。また、プレイヤキャラクタの座標データおよび各ノンプレイヤキャラクタの現在位置データはゲームの進行にともなって変更される。しかしながら、移動基準位置データおよび所定形状基準位置データは、ゲームの進行にともなって変更されることはなく仮想世界内において固定的な位置を示すデータである。
【００８９】
グラフィックデータ記憶領域７２にも、同様に、光ディスク１８から読み出したグラフィックデータが１度に全部または部分的かつ順次的に、記憶される。グラフィックデータは、たとえば、色や透明度などのような描画に関するデータである。グラフィックデータ記憶領域７２には、上述のプレイヤキャラクタのポリゴンなどのデータ（ポリゴンリスト等）を記憶するための記憶領域７２ａ，ノンプレイヤキャラクタ（妖精キャラクタや敵キャラクタ等）のポリゴンなどのデータ（ポリゴンリスト等）を記憶するための記憶領域７２ｂ，静止オブジェクト（壁オブジェクト，地面オブジェクトなど）のポリゴンなどのデータを記憶するための記憶領域７２ｂ，およびテクスチャデータを記憶するための記憶領域７２ｄを含む。そして、テクスチャデータ記憶領域７２ｄには、上述の静止オブジェクトのそれぞれの表面に貼り付けるための静止オブジェクトテクスチャを記憶する記憶領域７２ｄａ，上述の平面マップに貼り付けるための平面マップテクスチャを記憶する記憶領域７２ｄｂ，さらにはその他のオブジェクトやキャラクタに貼り付けるためのテクスチャを記憶する記憶領域７２ｄｃを含む。この実施例では、第２キャラクタである妖精キャラクタを半透明表示するためのテクスチャデータが設定されている。つまり、この実施例では、妖精キャラクタは半透明で表示される。なお、この実施例では３次元画像処理を実行するゲーム装置を例として説明するが、この発明は２次元画像処理を実行するゲーム装置でもよい。
【００９０】
図１０を参照して、図１実施例のゲームシステム１０で、ゲーム装置１２の電源を入れ、コントローラ１００のスタートスイッチ１１８を押すことによって、ゲームがスタートする。そして、ＣＰＵ３６（図８）は、コントローラＩＣ１６２（図６）からコントローラＩ／Ｆ５６（図８）を経て入力される図７に示す操作信号またはコントローラデータを見る。
【００９１】
この実施例のゲームは、プレイヤの操作に基づいて仮想世界の中でプレイヤキャラクタを動作制御し、画面領域よりも大きな仮想世界の中を移動しながら、敵キャラクタを倒したり、アイテムを取得したりしつつ、ゴールを目指すゲームである。
【００９２】
プレイヤが第１操作面１２０を叩き操作すると、第１ボタン１６４または第２ボタン１６６（図６）がオンとなり、したがって、図７の１バイト目のビット３に第１ボタン１６４のオンのデータ（左操作信号）が書き込まれ、あるいは第２ボタン１６６のオンのデータ（左操作信号）がビット２に書き込まれる。また、プレイヤが第２操作面１２２を叩き操作すると、第３ボタン１６８または第４ボタン１７０（図６）がオンとなり、したがって、図７の１バイト目のビット１に第３ボタン１６８のオンのデータ（右操作信号）が書き込まれ、あるいは第４ボタン１７０のオンのデータ（右操作信号）がビット０に書き込まれる。
【００９３】
そして、ＣＰＵ３６は、ステップＳ１で、このような操作信号に基づいて、プレイヤキャラクタ７４（図１２）を移動制御する。たとえば、プレイヤが第１叩き操作面１２０を叩き操作すると、システム３６は、左操作信号を検出し、モニタ３０（図１）の画面に表示されるゲーム世界または仮想世界に登場するプレイヤキャラクタ（第１キャラクタ）７４を左方向へ移動させる。ＣＰＵ３６は、同様に、プレイヤが第２叩き操作面１２２を叩き操作すると、右操作信号を検出し、プレイヤキャラクタ７４を右方向へ移動させる。
【００９４】
続くステップＳ３において、ＣＰＵ３６は、音入力があったかどうか判断する。具体的には、マイク１２４への音の入力の有無（オン／オフ）のデータが図７の３バイト目に書き込まれ、その音の大きさ（音量）のデータが同じく３バイト目に音量データ値（“00000000”−“11111111”）として書き込まれる。したがって、ＣＰＵ３６は、コントローラデータの３バイト目の音量データを見て、それぞれが一定以上であれば、すなわち閾値以上の音入力があれば、ステップＳ３で“ＹＥＳ”を判断する。
【００９５】
ステップＳ３で”ＹＥＳ”の場合、ステップＳ５において仮想世界に衝撃波を発生する処理がされる。すなわち、音入力があった場合に仮想世界に発生する所定の変化である衝撃波が発生される。具体的には、衝撃波発生フラグがオンに設定され、衝撃波中心位置および衝撃波半径が設定される。衝撃波中心位置は、音入力があった時点におけるプレイヤキャラクタの座標位置が設定され、衝撃波半径は初期値（衝撃波がプレイヤキャラクタを囲む程度の大きさ）が設定される。なお、衝撃波発生フラグ、衝撃波中心位置および衝撃波半径はメインメモリ４０に記憶されるデータである。また、ゲーム開始時において衝撃波発生フラグはオフに設定される。
【００９６】
ステップＳ３で”ＮＯ”の場合またはステップＳ５の後、ステップＳ７において、衝撃波発生フラグがオンか否かが判断される。ステップＳ７で”ＹＥＳ”の場合、ステップＳ９に進み、メインメモリ４０に記憶された衝撃波中心位置および衝撃波半径に基づいて、球体状の衝撃波が仮想世界に配置される。具体的には衝撃波中心位置を球体の中心とし、衝撃波半径を球体の半径とするような球体（衝撃波）が仮想世界内に配置される。そして、この球体（衝撃波）が画面領域内の場合は表示処理がされる。なお、画面領域とは仮想世界のうちモニタ３０に表示される領域のことであり、プレイヤキャラクタの位置を基準とする仮想世界における一定の領域内が画面領域に設定される。具体的には、３次元画像処理におけるクリッピング処理に行なうことにより表示領域とされる範囲が画面領域である。
【００９７】
ステップＳ９の後、ステップＳ１１において、衝撃波半径を一定量だけ増加する処理がされる。この処理によって、次回のステップＳ９において半径を増した衝撃波が配置および表示されることになり、衝撃波が次第に半径を増して大きくなることになる。
【００９８】
ステップＳ１１の後、ステップＳ１３において、衝撃波半径が所定値以上になったか否かが判断される。”ＹＥＳ”の場合、ステップＳ１７に進み、衝撃波を消す処理がされ、衝撃波発生フラグがオフにされる。すなわち、衝撃波は初期半径から次第に大きくなり、半径が所定以上になったときに消滅する。なお、ステップＳ１３における所定値は画面領域よりも大きな半径としてもよい。その場合、衝撃波が画面領域を超えて広がることになり、画面領域外に存在する妖精キャラクタについても衝撃波を当てることができる。
【００９９】
ステップＳ１３において”ＮＯ”の場合、ステップＳ１５において、衝撃波中心位置を変更する処理がされる。この処理では、衝撃波中心位置を一定方向に一定速度で移動するようにしてもよいし、音入力があったときのプレイヤキャラクタの移動ベクトルを記憶しておき、この移動ベクトルと同じベクトルだけ衝撃波中心位置を移動するようにしてもよい。この処理によって、衝撃波が時間と共に移動することになる。なお、ステップＳ１５の処理を省略して衝撃波中心位置は初期位置から変更しないようにしてもよい。
【０１００】
ステップＳ７で”ＮＯ”の場合、ステップＳ１５またはステップＳ１７の後、図１１に示すステップＳ１９に進む。
【０１０１】
図１１のステップＳ１９−ステップＳ３７では、仮想世界に存在する複数の妖精キャラクタのそれぞれについて配置位置を決定する処理および表示処理がされる。それぞれのステップＳ１９−Ｓ３３においては、１つの妖精キャラクタについて着目し、その妖精キャラクタについての処理がされる。まず、ステップＳ１９において、衝撃波発生フラグがオンか否かが判断される。”ＹＥＳ”の場合、ステップＳ２１において、妖精キャラクタの現在位置が前述のステップＳ９で配置された球体の表面に当たっているか否かが判断される。”ＹＥＳ”の場合、ステップＳ２３において、その妖精キャラクタについて基準位置配置フラグがオンにされる。なお、基準位置配置フラグは妖精キャラクタそれぞれについてメインメモリ４０に記憶されるデータであり、ゲーム開始時にはオフに設定されている。
【０１０２】
ステップＳ１９またはステップＳ２１において”ＮＯ”の場合またはステップＳ２３の後、ステップＳ２５に進み、妖精キャラクタの現在位置が画面領域内か否かが判断される。”ＹＥＳ”の場合、ステップＳ２７において、その妖精キャラクタの基準位置配置フラグがオンか否かが判断される。”ＹＥＳ”の場合、ステップＳ２９において、その妖精キャラクタを、対応する所定形状基準位置に配置して（すなわち現在位置を所定形状基準位置に設定して）表示する処理がされる。すなわち、音入力がされた場合に発生した衝撃波に当たったキャラクタについて第１態様で表示される。
【０１０３】
このステップＳ２９で、ＣＰＵ３６は、メモリ４０の所定形状基準位置データテーブル７０ｄを参照し、そのテーブルが示す仮想空間座標（Ｘ１１，Ｙ１１，Ｚ１１）、（Ｘ１２，Ｙ１２，Ｚ１２）、（Ｘ１３，Ｙ１３，Ｚ１３）…に対応する位置に妖精キャラクタを表示する。図１３を参照してステップＳ２９の処理を具体的に説明する。図１３には、所定形状準位置８０１，…８０ｎ，および妖精キャラクタ７６１，…７６ｎが示されている。現在着目している妖精キャラクタが７６１の場合、図１３に示す対応の所定形状基準位置８０１に妖精キャラクタ７６１を配置する．
妖精キャラクタ７６１，…７６ｎのすべてについて基準位置配置フラグがオンの場合（妖精キャラクタ７６１，…７６ｎのすべてが衝撃波に当たった場合）、基準位置８０１，…８０ｎが所定形状に配置されているので、その各基準位置上に各妖精キャラクタ７６１，…７６ｎを配置されることになり、結果的に、妖精キャラクタ７６１，…７６ｎが所定形状に配置された第１態様で表示され、図１３の例では、矢印形状に配置して表示する。
【０１０４】
そして、ステップＳ３１においてその妖精キャラクタについての基準位置配置フラグがオンになってから一定時間が経過したか否かが判断され、”ＹＥＳ”の場合は、ステップＳ３３において、その妖精キャラクタについての基準位置配置フラグがオフに設定される。なお、ＣＰＵ３６は、ステップＳ２１で基準位置配置フラグをオンにしたときにたとえばメインメモリ４０の所定領域に形成されたタイマ（図示せず）をトリガする。そして、ＣＰＵ３６は、そのタイマの計測時間を監視し、基準位置配置フラグがオンになってから（すなわち妖精キャラクタの所定形状表示から）一定時間経過したかどうか、ステップＳ３１で判断する。このステップＳ３１で“ＮＯ”が判断される限りステップＳ２９での第１態様表示が継続される。なお、このタイマは妖精キャラクタのそれぞれについて設けられる。
【０１０５】
しかしながら、ステップＳ３１で“ＹＥＳ”が判断されると、つまり、妖精キャラクタの所定形状表示が始まって一定時間経過すると、ＣＰＵ３６は、基準位置配置フラグをオフにする（ステップＳ３３）。したがって、このステップＳ３３が、第１態様表示から第２態様表示への移行手段として機能する。
【０１０６】
上述のように妖精キャラクタ７６１，…７６ｎをたとえば矢印形状に配置することによって、たとえばプレイヤキャラクタ７４の進むべき方向やたとえばアイテムの存在する方向などを示すようにすれば、その矢印形状の妖精キャラクタがゲームプレイヤに対してヒントを与えることができる。しかしながら、このヒントがあまりにも長時間継続することはゲームの興趣（切迫感）を削ぐことがあるので、上述のように一定時間の第１態様表示の後には再び第２態様表示に移行させるのである。
【０１０７】
一方、ステップＳ２７において”ＮＯ”の場合、ステップＳ３５において、その妖精キャラクタを、対応する移動基準位置を基準として移動制御する処理がされ、移動後の位置にその妖精キャラクタを表示する処理がされる。すなわち、ステップＳ３５において、妖精キャラクタは第２態様で表示される。つまり、メモリ４０の移動基準位置データテーブル７０ｃを参照し、そのテーブルが示す仮想空間座標（Ｘ１，Ｙ１，Ｚ１）、（Ｘ２，Ｙ２，Ｚ２）、（Ｘ３，Ｙ３，Ｚ３）…を基準として妖精キャラクタを移動制御する。
【０１０８】
図１２を参照してステップＳ３５の処理を具体的に説明する。図１２には、移動基準位置７８１，…７８ｎおよび妖精キャラクタ７６１，…７６ｎが示されている。現在着目している妖精キャラクタが７６１として、まず、対応する移動基準位置７８１に妖精キャラクタ７６１を配置する。そして、モニタ３０の毎表示フレームにおいて、妖精キャラクタ７６１にランダムな方向の加速度を加える。ただし、加速度には上限が設定されている。さらに毎表示フレームにおいて、妖精キャラクタ７６１に、対応する移動基準位置７８１に向かう方向の加速度を与える。このときの加速度は、移動基準位置７８１と対応の妖精キャラクタ７６１との間の距離に比例するように設定される。ただし、２次元距離を計算する処理は重いので、高速化のために、正確な距離ではなくＸＹ各成分の距離としている。この処理によって、妖精キャラクタは基準位置７８１の位置に留まらずに、基準位置７８１の付近をランダムに移動することになる。この移動のことを以下ランダム移動と呼ぶ。妖精キャラクタ７６１，…７６ｎのすべてについて基準位置配置フラグがオフの場合、各妖精キャラクタがランダム移動することになる。
【０１０９】
なお、このランダム移動において、摩擦を考慮するようにしてもよく、その場合には、表示フレーム毎に、たとえば０．９のような１未満の数値を加速度に掛け算する。
【０１１０】
このように、妖精キャラクタに移動基準位置に向かう方向に加速度を加えることによって、妖精キャラクタが対応する移動基準位置から離れることなく、たとえば図１２に示すようにランダム表示（第２態様表示）される。
【０１１１】
ステップＳ２５またはステップＳ３１において”ＮＯ”の場合、または、ステップＳ３３またはＳ３５の後、ステップＳ３７において、ステップＳ１９〜ステップＳ３３の処理を仮想空間内のすべての妖精キャラクタについて処理したか否かが判断され、”ＹＥＳ”の場合は、ステップＳ３９に進み、”ＮＯ”の場合はステップＳ１９に戻って他の妖精キャラクタについて処理を繰り返す。
【０１１２】
ステップＳ３９ではゲームオーバーか否かが判断され、ゲームオーバーでない場合はステップＳ１に戻ってゲーム処理を繰り返し、ゲームオーバーの場合は終了する。
【０１１３】
なお、ステップＳ３５では図１４に示す第２態様表示にし、ステップＳ２９では図１５に示す第１態様表示にすることも変形例として可能である。
【０１１４】
すなわち、図１４に示すような妖精キャラクタ７６１，…７６ｎのランダム表示が行なわれているときには、この妖精キャラクタはプレイヤキャラクタにとって何も助けにはならない。つまり、プレイヤキャラクタ７４は、高い障壁８２を越えることはできない。
【０１１５】
しかしながら、図１５に示すように妖精キャラクタ７６１，…７６ｎをブロック形状に配置することによって、プレイヤキャラクタ７４の助けとなる。つまり、音入力に応じて、妖精キャラクタ７６１，…７６ｎが一定時間ブロック形状に集合して表示されると、たとえば図１５に示すようにプレイヤキャラクタ７４がジャンプしてその上に乗ることができる。したがって、プレイヤキャラクタ７４単独では到底越えられなかった高い障壁８２であっても、プレイヤキャラクタ７４が、妖精ブロック上からジャンプすることによって、容易に越えることができる。
【０１１６】
妖精キャラクタ７６１，…７６ｎをブロック形状に配置するためには、ステップＳ２９で、ＣＰＵ３６は、ブロック形状配置のための所定形状基準位置データテーブル７０ｄを参照し、そのテーブルが示す仮想空間座標（Ｘ１１，Ｙ１１，Ｚ１１）、（Ｘ１２，Ｙ１２，Ｚ１２）、（Ｘ１３，Ｙ１３，Ｚ１３）…に対応する位置に各妖精キャラクタを表示する。具体的には、図１５に示す所定形状基準位置８４１，…８４ｎに妖精キャラクタ７６１，…７６ｎを配置する。
【０１１７】
なお、上述の実施例では所定の入力としてステップＳ３で音入力を検知するようにした。しかしながら、所定の入力としては、たとえばプレイヤが第１叩き操作面１２０と第２叩き操作面１２２とを同時に叩き操作したときの操作信号のような他の入力も容易に考えられる。また、打楽器型コントローラではない場合には、たとえばＺボタン操作とかも所定の入力として考えられる。
【０１１８】
さらに、上述の実施例では、打楽器型コントローラ１００を用い、ステップＳ１では、その叩き操作回数に応じた移動速度を設定するようにした。しかしながら、コントローラは、公知のジョイスティック付きコントローラに変更されてもよい。ジョイスティック付きコントローラを用いる場合には、ステップＳ１では、プレイヤキャラクタの移動方向はジョイスティックの傾斜方向によって決まり、移動速度はジョイスティックの傾動角度（レバーを倒した程度）に応じて設定するようにすればよい。
【０１１９】
また、上述の実施例では、各妖精キャラクタごとに、音入力があった場合に仮想世界に発生する変化の影響を受けるか否か、すなわち、衝撃波との当たり判定を行なって、各妖精キャラクタごとに第１態様で表示するか第２態様で表示するかを決定するようにしたが、他の変形例では、代表的な妖精キャラクタを１つ決めて、その代表妖精キャラクタが衝撃波と当たったときには、すべての妖精キャラクタを第１態様で表示し、その代表妖精キャラクタが衝撃波と当たらない場合は、すべての妖精キャラクタを第２態様で表示するようにしてもよい。具体的には、代表妖精キャラクタを示すデータを記憶し、そのデータが示す妖精キャラクタについてのみ衝撃波（音入力により仮想世界に発生する所定の変化）の影響を受けるか否かを判定する。代表妖精キャラクタが衝撃波の影響を受けると判定された場合には、すべての妖精キャラクタについて第１態様で表示する。この場合、仮想世界に存在する妖精キャラクタをグループにわけて（各妖精キャラクタについてどのグループに属するかを示すグループ属性情報を記憶しておき）、各グループごとに代表妖精キャラクタを決め（グループごとに代表妖精キャラクタを示すデータを記憶しておき）、代表妖精キャラクタが衝撃波の影響を受ける場合には、その代表妖精キャラクタのグループに属する他の妖精キャラクタすべてを第１態様で表示するようにしてもよい。このグループは、ヒントごとやブロックごと等、手助け処理の単位ごとにグループわけするとよい。
【０１２０】
たとえば、所定形状がヒントを表す形状の場合、上述の実施例では、衝撃波が一部の妖精キャラクタにのみ当たった場合には、ヒントの一部のみが表示されて興趣性が増し、ヒントの全体を表示するにはすべての妖精キャラクタに衝撃波を当てる必要があるためゲーム性が増す。これに対して、上述の他の変形例では、衝撃波が代表妖精キャラクタに当たった場合には他の妖精キャラクタも第１態様で表示されるため、代表妖精キャラクタにさえ衝撃波を当てればヒントの全体が表示される。
【０１２１】
また、上述の実施例では、仮想世界に存在するすべての妖精キャラクタについて、第１態様で表示するか第２態様で表示するかを決定する処理を実行するようにしたが、所定条件を満たす妖精キャラクタについてのみ当該処理をするようにしてもよい。たとえば、画面領域に存在する妖精キャラクタのみ処理をするようにしてもよいし、画面領域よりも大きい所定領域に存在する妖精キャラクタのみ処理するようにしてもよい。また、その画面領域または所定領域外でも処理を行なうか否かを示すフラグを各妖精キャラクタについて（またはグループごとに）記憶しておいて、そのフラグが画面領域または所定領域外でも当該処理を行なうことを示す妖精キャラクタ（またはグループ）についてのみ画面領域または所定領域外であっても当該処理をするようにしてもよい。この場合には、たとえば重要な手助け処理をする妖精キャラクタについては画面に表示される前から衝撃波とのあたり判定をしておいて、第１態様で表示される一定時間内に、プレイヤキャラクタが移動してその妖精キャラクタが画面領域に含まれるようにしたときに、その妖精キャラクタが第１態様で表示されることになる。
【図面の簡単な説明】
【０１２２】
【図１】この発明の一実施例のゲームシステムを示す図解図である。
【図２】図１に示す実施例に用いられる打楽器型コントローラの一部を示す分解図である。
【図３】打楽器型コントローラの一部についての上面図である。
【図４】図３の線IV-IVにおける打楽器型コントローラの一部についての断面図の一部である。
【図５】図４の断面図においてプレイヤによる叩き操作があった場合の状態を示す図解図である。
【図６】打楽器型コントローラの電気的な構成を示すブロック図である。
【図７】打楽器型コントローラからゲーム装置に入力される操作信号のフォーマットを示す図解図である。
【図８】図１実施例の電気的な構成を示すブロック図である。
【図９】図８実施例のメインメモリのメモリマップの一例を示す図解図である。
【図１０】図１実施例の動作の一例を示すフロー図である。
【図１１】図１実施例の動作の図１０の続き示すフロー図である。
【図１２】図１実施例において妖精キャラクタをランダム表示した状態の一例を示す図解図である。
【図１３】図１実施例において妖精キャラクタを所定形状配置表示した状態の一例を示す図解図である。
【図１４】図１実施例において妖精キャラクタをランダム表示した状態の他の例を示す図解図である。
【図１５】図１実施例において妖精キャラクタを所定形状配置表示した状態の他の例を示す図解図である。
【符号の説明】
【０１２３】
１０  …ゲームシステム
１２  …ゲーム装置
１８  …光ディスク
３０  …モニタ
３６  …ＣＰＵ
４０  …メインメモリ
１００  …打楽器型コントローラ
１２４  …マイク
【図１】
2005318933.tif 000003
【図２】
2005318933.tif 000004
【図３】
2005318933.tif 000005
【図４】
2005318933.tif 000006
【図５】
2005318933.tif 000007
【図６】
2005318933.tif 000008
【図７】
2005318933.tif 000009
【図８】
2005318933.tif 000010
【図９】
2005318933.tif 000011
【図１０】
2005318933.tif 000012
【図１１】
2005318933.tif 000013
【図１２】
2005318933.tif 000014
【図１３】
2005318933.tif 000015
【図１４】
2005318933.tif 000016
【図１５】
2005318933.tif 000017