説明

プログラム、情報記憶媒体及びゲーム装置

【課題】 プレーヤキャラクタを阻害オブジェクトに接触させずに移動させて進行していくゲームを実行するゲームにおいて、プレーヤキャラクタが阻害オブジェクトを「回避する」行為に注目することで、従来のゲームにはない新たな面白さを実現すること。
【解決手段】 フレーム毎に、プレーヤキャラクタである自機10の位置に判定基準点A(設定順にA1〜A5)を設定し、この判定基準点Aに判定体B(B1〜B5)を配置する。そして、阻害オブジェクトである弾24がこれらの判定体Bを通過したか否かを判断し、通過した判定体Bの判定基準点Aに設定されているポイントをゲームスコアに加算する。各判定基準点Aには、最近に設定されたもの程、高いポイントが設定されている。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プレーヤキャラクタを阻害オブジェクトに接触させずに移動させて進行していくゲームを実行するゲーム装置等に関する。
【背景技術】
【0002】
プレーヤが模擬銃を操作し、この模擬銃から擬似的に発射された弾丸が画面内のキャラクタに命中したかを楽しむ、いわゆるガンシューティングゲームと呼ばれるゲームを実行する射的ビデオゲーム装置が知られている。命中したか否かの判断は、弾丸とそのキャラクタとの当たり判定(ヒット判定)によって実現される。また、かかるゲーム装置の1つして、単に命中した/しないだけではなく、標的となるキャラクタの周囲を取り囲む所定範囲内の近傍領域と弾丸との当たり判定を行い、当たり(ヒット)と判定された際には命中した場合とは異なる演出を行うことで、より興趣性を高めたものも知られている(例えば、特許文献1参照)。
【特許文献1】特開平10−230081号公報
【発明の開示】
【発明が解決しようとする課題】
【0003】
標的となるキャラクタを攻撃する他のゲームとして、シューティングゲームがある。シューティングゲームでは、主に、模擬戦闘機等のプレーヤキャラクタと敵キャラクタとが画面上に登場し、プレーヤは、敵キャラクタや敵キャラクタから発射される弾丸(ミサイル)等にプレーヤキャラクタを接触させることなく、プレーヤキャラクタから弾丸(ミサイル)を発射させ、敵キャラクタに命中させて撃ち落とすといった操作をする。
【0004】
ところで、従来のシューティングゲームでは、どれだけ多くの敵キャラクタを撃ち落とせたか、或いは、どれだけ高スコアを獲得できたかといったことに重点が置かれており、プレーヤキャラクタをどのように移動させたかといったことには注目されてこなかった。
【0005】
具体的には、シューティングゲームでは、敵キャラクタや弾丸、地上或いは空中に配置される障害物といった、プレーヤキャラクタの移動を阻害するオブジェクト(阻害オブジェクト)にプレーヤキャラクタが接触(衝突)すると、プレーヤキャラクタが撃墜(破壊)されてゲームオーバーとなる。このため、これらの阻害オブジェクトに接触させることなくプレーヤキャラクタを移動させることが、ゲーム進行上、必須である。
【0006】
しかし、プレーヤキャラクタを阻害オブジェクトに「接触させない」といっても、阻害オブジェクトとの距離がかなり離れて安全な場合もあれば、阻害オブジェクトをぎりぎりのところで回避した危険な場合もあり、その状態は千差万別である。また、阻害オブジェクトの数が多いほど、或いは、プレーヤキャラクタの移動速度が速いほど、阻害オブジェクトに接触する確率が高くなり、これを上手に回避するためにはプレーヤの高い操作技術が要求される。
【0007】
そこで、阻害オブジェクトを「回避する」といったプレーヤキャラクタの行為に注目することで、従来のゲームにはない新たな面白さを持たせることができないだろうか。本発明は、このような事情に鑑みて為されたものである。
【0008】
尚、プレーヤキャラクタを阻害オブジェクトに接触させずに移動させてゲームを進行していくゲームは、シューティングゲームに限られるものではない。
【課題を解決するための手段】
【0009】
上記課題を解決するために、第1の発明は、
コンピュータを、プレーヤの操作入力に従ってプレーヤキャラクタの移動を制御するプレーヤキャラクタ制御手段(例えば、図9の自キャラクタ制御部212)として機能させ、前記プレーヤキャラクタの移動を阻害する阻害オブジェクトに接触させずに前記プレーヤキャラクタを移動させて進行していくゲームを実行させるためのプログラム(例えば、図9のゲームプログラム410)であって、
前記プレーヤキャラクタの移動軌跡に沿った移動後方に回避判定エリアを設定する判定エリア設定手段(例えば、図9の判定体管理部218)、
前記プレーヤキャラクタと前記阻害オブジェクトとが接触せずに前記阻害オブジェクトが前記設定された回避判定エリアを通過したか否かを判断することで、前記プレーヤキャラクタが前記阻害オブジェクトを回避したか否かを判断する回避判断手段(例えば、図9の判定体ヒット判定部224)、
前記回避判断手段による判断結果に基づいて所定の処理を実行する後処理手段(例えば、図9の回避評価部228)、
として前記コンピュータを更に機能させるためのプログラムである。
【0010】
また、第16の発明は、
プレーヤの操作入力に従ってプレーヤキャラクタの移動を制御するプレーヤキャラクタ制御手段を備え、前記プレーヤキャラクタの移動を阻害する阻害オブジェクトに接触させずに前記プレーヤキャラクタを移動させて進行していくゲームを実行するゲーム装置(例えば、図1,図9の家庭用ゲーム装置1200)であって、
前記プレーヤキャラクタの移動軌跡に沿った移動後方に回避判定エリアを設定する判定エリア設定手段、
前記プレーヤキャラクタと前記阻害オブジェクトとが接触せずに前記阻害オブジェクトが前記設定された回避判定エリアを通過したか否かを判断することで、前記プレーヤキャラクタが前記阻害オブジェクトを回避したか否かを判断する回避判断手段、
前記回避判断手段による判断結果に基づいて所定の処理を実行する後処理手段、
を更に備えることを特徴とするゲーム装置である。
【0011】
この第1又は第16の発明によれば、プレーヤキャラクタを阻害オブジェクトに接触させずに移動させて進行していくゲームにおいて、プレーヤキャラクタの移動後方に回避判定エリアが設定され、阻害オブジェクトが、プレーヤキャラクタに接触することなくこの回避判定エリアを通過したか否かにより、プレーヤキャラクタが阻害オブジェクトを回避したか否かが判断され、その判断結果に応じて所定の処理が行われる。
【0012】
プレーヤキャラクタの移動後方(移動方向の逆方向)に設定された回避判定エリアを阻害オブジェクトが通過したことを判断することで、プレーヤキャラクタが阻害オブジェクトに接触することなく相対的に接近し、その後離れていったこと、即ち阻害オブジェクトを「回避」したことを判断できる。従って、単に阻害オブジェクトに接触しないようにプレーヤキャラクタを移動させるのみではなく、阻害オブジェクトを「回避する」ことを楽しむといった新たな面白さを持たせることができる。
【0013】
また、単なる移動後方ではなく、プレーヤキャラクタの移動軌跡に沿った移動後方に、回避判定エリアが設定される。即ち、プレーヤが過去に居た位置に回避判定エリアが設定されるので、タイミングが遅れていれば阻害オブジェクトに接触していたかもしれないといった状態を「回避した」と判断できる。特に、現在を起点とした比較的短い過去の時間範囲での移動軌跡を回避判定エリアの設定対象とすることで、プレーヤキャラクタが一寸前にいた居た位置を、阻害オブジェクトが通過したかを判断することができる。即ち、阻害オブジェクトをぎりぎりで「回避した」ことを判断できる。
【0014】
尚ここで、所定の処理としては、回避したと判断された場合に、所定ポイントを加算するといったゲームスコアの可変処理や、特定の阻害オブジェクトを回避することで、以降のゲームステージのプレイが可能となる、或いは、特定のボーナスステージをプレイ可能となるといったゲーム進行の可変処理や、回避の成功を褒め称えるような画像の表示や音声の出力等の演出処理等がある。
【0015】
なお、第2の発明として、コンピュータを、プレーヤの操作入力に従ってプレーヤキャラクタの移動を制御するプレーヤキャラクタ制御手段として機能させ、前記プレーヤキャラクタの移動を阻害する阻害オブジェクトに接触させずに前記プレーヤキャラクタを移動させて進行していくゲームを実行させるためのプログラムであって、
前記操作入力の履歴に基づいて前記プレーヤキャラクタの移動後方に回避判定エリアを設定する判定エリア設定手段、
前記プレーヤキャラクタと前記阻害オブジェクトとが接触せずに前記阻害オブジェクトが前記設定された回避判定エリアを通過したか否かを判断することで、前記プレーヤキャラクタが前記阻害オブジェクトを回避したか否かを判断する回避判断手段、
前記回避判断手段による判断結果に基づいて所定の処理を実行する後処理手段、
として前記コンピュータを更に機能させるためのプログラムを構成することとしてもよい。
【0016】
また、第17の発明として、プレーヤの操作入力に従ってプレーヤキャラクタの移動を制御するプレーヤキャラクタ制御手段を備え、前記プレーヤキャラクタの移動を阻害する阻害オブジェクトに接触させずに前記プレーヤキャラクタを移動させて進行していくゲームを実行するゲーム装置であって、
前記操作入力の履歴に基づいて前記プレーヤキャラクタの移動後方に回避判定エリアを設定する判定エリア設定手段、
前記プレーヤキャラクタと前記阻害オブジェクトとが接触せずに前記阻害オブジェクトが前記設定された回避判定エリアを通過したか否かを判断することで、前記プレーヤキャラクタが前記阻害オブジェクトを回避したか否かを判断する回避判断手段、
前記回避判断手段による判断結果に基づいて所定の処理を実行する後処理手段、
を更に備えることを特徴とするゲーム装置を構成することとしてもよい。
【0017】
この第2又は第17の発明によれば、プレーヤキャラクタの制御のためのプレーヤの操作入力の履歴に基づいて回避判定エリアを設定できる。従って、例えば、過去数フレーム分の操作入力方向や入力の強さ等に基づいて回避判定エリアを設定するといったことが可能となる。
【0018】
第3の発明は、第1又は第2の発明のプログラムであって、
前記阻害オブジェクトの動きを制御する阻害オブジェクト制御手段(例えば、図9の敵オブジェクト制御部214)として前記コンピュータを更に機能させるためのプログラムである。
【0019】
この第3の発明によれば、阻害オブジェクトの動きが制御される。即ち、動く阻害オブジェクトに対する回避を判断することができる。ここで、「動き」とは、その位置を変える「移動」と、位置は変えずに向きや姿勢等を変える「挙動」とを含んでいる。
【0020】
第4の発明は、第1〜第3の何れかの発明のプログラムであって、
前記判定エリア設定手段が、前記プレーヤキャラクタの周囲と、前記プレーヤキャラクタの移動後方の所定範囲とを前記回避判定エリアとして設定するように前記コンピュータを機能させるためのプログラムである。
【0021】
この第4の発明によれば、プレーヤキャラクタの周囲と、プレーヤキャラクタの移動後方の所定範囲とが回避判定エリアとして設定される。従って、阻害オブジェクトがプレーヤキャラクタの近傍を通過した、即ちプレーヤキャラクタが阻害オブジェクトに接触することなくその近傍を通過したことを判断できる。このため、阻害オブジェクトが、例えば敵戦闘機のような移動するオブジェクトであっても、例えば建造物のような移動しない(停止している)オブジェクトであっても、その阻害オブジェクトに対するプレーヤキャラクタの「回避」を判断できる。
【0022】
第5の発明は、第1〜第4の何れかの発明のプログラムであって、
前記判定エリア設定手段が、前記回避判定エリアの大きさ及び/又は形状を可変する可変手段を有するように前記コンピュータを機能させるためのプログラムである。
【0023】
この第5の発明によれば、回避判定エリアの大きさ及び/又は形状が可変される。
【0024】
具体的には、第6の発明のプログラムのように、
前記可変手段が、前記プレーヤキャラクタの移動速度に応じて、前記回避判定エリアの大きさ及び/又は形状を可変するように前記コンピュータを機能させるためのプログラムとしても良い。
【0025】
この第6の発明によれば、プレーヤキャラクタの移動速度に応じて、回避判定エリアの大きさ及び/又は形状が可変される。一般的に、移動速度が速いほどより高度な操作性が要求され、阻害オブジェクトの回避が難しいので、例えば移動速度に比例するように回避判定エリアの大きさを決定することで、「回避した/しない」の判定基準を、実質的に移動速度が遅い場合と同程度或いは緩くすることが可能となる。
【0026】
更にこの場合、第7の発明のように、
前記可変手段が、少なくとも、前記プレーヤキャラクタの移動速度に応じて、前記回避判定エリアの前記プレーヤキャラクタの移動後方方向の長さを可変するように前記コンピュータを機能させるためのプログラムとしても良い。
【0027】
この第7の発明によれば、プレーヤキャラクタの移動速度に応じて、回避判定エリアの移動後方の長さが可変される。移動速度が速いと、単位時間当たりの移動距離が長くなるので、例えば移動速度に比例するように回避判定エリアの移動後方方向の長さを決定することで、「回避した/しない」の判断基準を、実質的に移動速度が遅い場合と同程度或いは緩くすることが可能となる。
【0028】
第8の発明は、第1〜第7の何れかの発明のプログラムであって、
前記回避判定エリアの表示/非表示を制御する判定エリア表示制御手段(例えば、図9の判定体管理部218)として前記コンピュータを更に機能させるためのプログラムである。
【0029】
この第8の発明によれば、回避判定エリアの表示/非表示が制御される。
従って、例えば回避判定エリアを表示することで、プレーヤに「回避」の判定基準を明らかにし、プレーヤが阻害オブジェクトの「回避」を楽しむことをサポートすることができる。
【0030】
第9の発明は、第1〜第8の何れかの発明のプログラムであって、
前記回避判断手段が、前記阻害オブジェクトが前記回避判定エリアを通過した際の、前記回避判定エリア内での前記プレーヤキャラクタと前記阻害オブジェクトとの接近距離に応じて、回避の程度を判断するように前記コンピュータを機能させるためのプログラムである。
【0031】
この第9の発明によれば、阻害オブジェクトが回避判定エリアを通過した際のプレーヤキャラクタと阻害オブジェクトとの接近距離に応じて、回避の程度が判断される。即ち、単に阻害オブジェクトを「回避した/しない」といった判断のみではなく、「回避した」場合にはその回避の程度が判断される。例えば、接近距離が短い場合には、接触寸前なかなり危険な状況を回避したとみなして回避の程度を高く判断し、一方、接近距離が比較的長い場合には、余裕を持って回避したとみなして回避の程度を低く判断することができる。そして、この回避の程度によって、例えば回避の程度が高いほど、プレーヤの操作技術をより高く評価するよう、その後の所定の処理を行うことができる。
【0032】
第10の発明は、第1〜第9の何れかの発明のプログラムであって、
前記回避判断手段が、前記阻害オブジェクトが前記回避判定エリアを通過した際の、前記プレーヤキャラクタと前記阻害オブジェクトとの相対速度に応じて、回避の程度を判断するように前記コンピュータを機能させるためのプログラムである。
【0033】
この第10の発明によれば、阻害オブジェクトが回避判定エリアを通過した際のプレーヤキャラクタと阻害オブジェクトとの相対速度に応じて、回避の程度が判断される。阻害オブジェクトが移動している場合には、プレーヤキャラクタの移動速度そのものよりも、プレーヤキャラクタと阻害オブジェクトの相対速度に応じて回避の難易度が変化する。一般的に、相対速度が速いほど、回避の難易度が高くなる。従って、相対速度が速いほど、より難易度が高い回避であったとみなして、回避の程度を高く判断することができる。そして、この回避の程度によって、例えば回避の程度が高いほど、プレーヤの操作技術をより高く評価するよう、その後の所定の処理を行うことができる。
【0034】
第11の発明は、第1〜第10の何れかの発明のプログラムであって、
現在の移動状況に基づいて前記プレーヤキャラクタの予測軌道を算出する予測手段、
前記予測手段により算出された予測軌道に基づき、前記プレーヤキャラクタと前記阻害オブジェクトとの接触可能性を判断する接触可能性判断手段、
として前記コンピュータを更に機能させ、
前記後処理手段が、前記接触可能性判断手段により接触可能性有りと判断された後に前記回避判断手段により回避したと判断されたか否かに基づいて、前記所定の処理を実行するように前記コンピュータを機能させる、
ためのプログラムである。
【0035】
この第11の発明によれば、現在の移動状況に基づいてプレーヤキャラクタの予測軌道が算出され、この予測軌道に基づいてプレーヤキャラクタと阻害オブジェクトとの接触可能性が判断され、接触可能性有りと判断された後に回避したと判断されたか否かに基づいて、所定の処理が実行される。従って、例えば接触可能性有りと判断された後に回避したと判断された場合には、そのままでは阻害オブジェクトに接触してしまうところだったのを、上手く操作してこれを回避したとみなせるので、この場合には、可能性無しと判断された場合と比較してプレーヤの操作技術を高く評価するような所定の処理を行うことができる。
【0036】
第12の発明は、第1〜第11の何れかの発明のプログラムであって、
前記プレーヤキャラクタの静止時間に応じて、前記プレーヤキャラクタの周囲に近接エリアを設定する近接エリア設定手段(例えば、図9の判定体管理部218)、
前記プレーヤキャラクタと前記阻害オブジェクトとが接触せずに前記阻害オブジェクトが前記設定された近接エリアを通過したか否かを判断することで、前記プレーヤキャラクタが前記阻害オブジェクトと接触しそうであったか否かを判断する接触危険判断手段(例えば、図9の判定体ヒット判定部224)、
前記接触危険判断手段による判断結果に基づいて所定の処理を実行する手段(例えば、図9の回避評価卯226)、
として前記コンピュータを更に機能させるためのプログラムである。
【0037】
また、第13の発明は、第1〜11の何れかの発明のプログラムであって、
プレーヤの操作入力が無い状態の経過時間に応じて、前記プレーヤキャラクタの周囲に近接エリアを設定する近接エリア設定手段(例えば、図9の判定体管理部218)、
前記プレーヤキャラクタと前記阻害オブジェクトとが接触せずに前記阻害オブジェクトが前記設定された近接エリアを通過したか否かを判断することで、前記プレーヤキャラクタが前記阻害オブジェクトと接触しそうであったか否かを判断する接触危険判断手段(例えば、図9の判定体ヒット判定部224)、
前記接触危険判断手段による判断結果に基づいて所定の処理を実行する手段(例えば、図9の回避評価卯226)、
として前記コンピュータを更に機能させるためのプログラム。
【0038】
この第12又は第13の発明によれば、プレーヤキャラクタの静止時間又はプレーヤの操作入力が無い状態の経過時間に応じて、プレーヤキャラクタの周囲に近接エリアが設定され、阻害オブジェクトがプレーヤキャラクタと接触せずに近接エリアを通過したか否かを判断することで、プレーヤキャラクタが阻害オブジェクトに接触しそうであったかが判断され、この判断結果に基づいて所定の処理が実行される。
【0039】
また、第14の発明は、第5の発明のプログラムであって、
前記判定エリア設定手段が、前記プレーヤキャラクタに対する操作入力の履歴に基づいて、前記回避判定エリアを設定する場所を決定するように前記コンピュータを機能させ
前記判定エリア設定手段が、前記回避判定エリアの大きさ及び/又は形状を前記プレーヤキャラクタに対する操作入力の履歴に基づいて可変するように前記コンピュータを機能させる、
ためのプログラムである。
【0040】
この第14の発明によれば、プレーヤキャラクタの移動軌跡に沿った移動後方に回避判定エリアが設定されるが、その設定される具体的な場所として、例えば、過去数フレーム分の操作入力方向や入力の強さ等に基づいて決定することが可能となる。また、回避判定エリアの大きさ及び/又は形状が、その操作入力の履歴に基づいて可変される。例えば、強い入力が為された直後の回避判定エリアの大きさを大きくするといったことが可能となる。
【0041】
第15の発明は、第1〜第14の何れか一項に記載のプログラムを記憶したコンピュータ読み取り可能な情報記憶媒体である。
【0042】
ここでいう「情報記憶媒体」とは、記憶されている情報をコンピュータが読み取り可能な、例えばハードディスクやMO、CD−ROM、DVD、メモリカード、ICメモリ等の記憶媒体である。従って、この第15の発明によれば、該情報記憶媒体に記憶されている情報をコンピュータに読み取らせて演算処理を実行させることで、第1〜第12の何れかの発明と同様の効果を奏することができる。
【発明の効果】
【0043】
本発明によれば、プレーヤの移動後方に設定した回避判定エリアを、阻害オブジェクトがプレーヤキャラクタに接触せずに通過したかを判断することで、プレーヤキャラクタがこの阻害オブジェクトを回避したか否かが判断される。この回避判定エリアは、プレーヤキャラクタの移動軌跡に沿って、或いは、プレーヤキャラクタの周囲を含むように設定されたり、その大きさや形状、移動後方方向の長さが、プレーヤキャラクタの移動速度や阻害オブジェクトとの接近距離又は相対速度に応じて可変される。従って、プレーヤキャラクタを単に阻害オブジェクトに接触しないように移動させるのみではなく、どのように回避するかを楽しむといった新たな面白さを持たせることができる。
【発明を実施するための最良の形態】
【0044】
以下、図面を参照して、本発明に好適な実施形態を説明する。尚、以下では、家庭用ゲーム装置でシューティングゲームを実行する場合を説明するが、本発明の適用がこれに限定されるものではない。
【0045】
[ゲーム装置]
図1は、本発明を適用した家庭用ゲーム装置の概略外観図である。同図に示すように、家庭用ゲーム装置1200は、本体装置1220と、プレーヤがゲーム操作を入力するための方向キー1212やボタンスイッチ1214を有するゲームコントローラ1210と、スピーカ1232を有するディスプレイ1230と、を備える。ゲームコントローラ1210は本体装置1220に接続され、ディスプレイ1230は、画像信号及び音信号を伝送可能なケーブル1202によって本体装置1220に接続されている。
【0046】
本体装置1220がゲーム処理を行うために必要なプログラムやデータ等を含むゲーム情報等は、例えば本体装置1220に着脱自在な情報記憶媒体であるCD−ROM1240やメモリカード1252、ICカード1254等に格納されている。或いは、ゲーム情報等は、本体装置1220が具備する通信装置1224を介して通信回線Nに接続し、外部装置から取得することとしても良い。ここで、通信回線Nとは、データ授受が可能な通信路を意味する。即ち、通信回線Nとは、直接接続のための専用線(専用ケーブル)やイーサネット(登録商標)等によるLANの他、電話通信網やケーブル網、インターネット等の通信網を含む意味であり、また、通信方式については有線/無線を問わない。
【0047】
また、本体装置1220は、例えばCPUの他、ROMやRAM等のメモリを搭載した制御ユニット1222、CD−ROM1240等の情報記憶媒体の読取装置を具備する。本体装置1220は、CD−ROM1240等から読み出したゲーム情報と、ゲームコントローラ1210からの操作信号とに基づいて種々のゲーム処理を実行し、ゲーム画面の画像信号及びゲーム音の音信号を生成する。そして、生成した画像信号及び音信号をディスプレイ1230に出力して、ディスプレイ1230にゲーム画面を表示させるとともに、スピーカ1232からゲーム音を出力させる。プレーヤは、ディスプレイ1230に表示されたゲーム画面を見、スピーカ1232から出力されるゲーム音を聞きながら、ゲームコントローラ1210を操作してゲームを楽しむ。
【0048】
[ゲーム画面]
本実施形態の家庭用ゲーム装置1200では、縦スクロール型の2Dシューティングゲームが実行される。図2は、ディスプレイ1230に表示されるゲーム画面の一例を示す図である。同図に示すように、ゲーム画面には、プレーヤキャラクタである自機10と、敵キャラクタ22や敵キャラクタ22から発射される弾(ミサイル)24等の敵オブジェクトと、岩石32や建造物34等の障害オブジェクトとが配置されたゲームステージ(ゲーム空間)を上方から俯瞰した画像(ゲーム画像)が表示される。また、ゲーム画面左上には、現在のゲームスコア90が表示される。
【0049】
自機10は、プレーヤの操作入力に従って画面内を移動制御される。また、自機10は、敵オブジェクト或いは障害オブジェクト(以下、敵オブジェクトと障害オブジェクトとを包括して「阻害オブジェクト」と称する。)に接触(衝突)すると、該接触した阻害オブジェクトによって破壊(撃墜)され、その時点で強制的にゲーム終了となる。阻害オブジェクトに接触することなく、自機10がゲームステージ中の所定のゴール地点に到達すると、ゲームクリアとなってゲーム終了となる。プレーヤは、画面内を阻害オブジェクトに接触しないように自機10を移動させ、ゴール地点に到達させるように操作する。
【0050】
また、自機10は、その向きや姿勢が常に同一であり、位置のみがプレーヤの操作入力に従って変化するように制御される。具体的には、ゲーム画面において、自機10は、その移動方向に関わらず、常にスクロール方向、即ち画面上方向を向いて表示される。
【0051】
敵キャラクタ22は、予め定められた所定の制御ルーチンに従って、ゲームステージ中を移動するとともに、自機10に向かって弾24を発射する等の攻撃動作を行うよう、コンピュータによって自動制御される。
【0052】
障害オブジェクトは、ゲームステージ中に固定配置されたオブジェクトである。即ち、本ゲームは縦スクロールであるので、障害オブジェクトは、ゲーム画面上では画面下方向に所定速度で移動して表示される。尚、本実施形態では、障害オブジェクトはゲームステージ中に固定位置に配置され、動作しないものとするが、例えば回転軸を有して回転する板状のオブジェクト等として動作するものとしたり、移動するものとしたりして、動くオブジェクトにしても良い。
【0053】
[回避判定の原理]
本実施形態では、接近して来る阻害オブジェクトに対する自機の「回避」を判定する回避判定が行われる点に特徴がある。
【0054】
具体的には、図3(a)に示すように、ゲーム画面において、自機10の移動軌跡12に沿って、複数の残像体40から成る残像が表示される。詳細には、自機10が通過した位置に次々と新たな残像体40が表示されるとともに、表示されてから所定時間以上経過した「古い」残像体40が消去されることで、移動方向とは反対方向に、尾を引くように自機10の残像が表示される。また別の言い方をすれば、自機10に対するプレーヤの操作入力の履歴に基づいて、複数の残像体40から成る残像が表示されるともいえる。
【0055】
また、各残像体40は同図(b)に示すように、「新しい(表示されてからの経過時間が短い)」ほど色が濃く、「古い(表示されてからの経過時間が長い)」ほど色が薄く表示される。即ち、自機10に近いほど色が濃く、遠いほど色が薄い。
【0056】
そして、自機10が阻害オブジェクトに接触することなく、該阻害オブジェクトがこの残像(詳細には、残像体40)を通過すると、所定のポイントがゲームスコアに加算される。このとき、阻害オブジェクトが残像のどの部分を通過するかによって加算されるポイントが異なる。具体的には、自機10により近い残像部分、即ちより「新しい」残像体40を通過するほど、高いポイントが加算されるようになっている。
【0057】
つまり、「新しい」残像体40とは、自機10がより直前に居た位置であり、言い換えれば、移動速度や移動方向といった条件が少しでも異なっていたならば、阻害オブジェクトに接触していた可能性が高い位置である。従って、阻害オブジェクトが通過した残像体40が「新しい」程、自機10がその阻害オブジェクトをぎりぎりで(間一髪で)「回避」したとみなせるので、「新しい」残像体40ほど、ポイントが高く設定されている。
【0058】
回避判定の原理を詳細に説明する。
図4に示すように、本実施形態では、各フレームにおいて、該フレームでの自機10の位置に判定基準点Aが設定され、この判定基準点Aに判定体Bが配置される。同図では、自機10が移動中の場合を示しており、簡明のため、自機10の移動軌跡12上に5つの判定基準点A1,A2,A3,A4,A5が設定されていることとし、各判定基準点Aの間隔を広めに取っている(実際には、1フレーム毎に判定基準点Aが設定されるため、間隔はより狭い)。判定基準点A1は4フレーム前に設定され、判定基準点A2は3フレーム前に設定され、判定基準点A3は2フレーム前に設定され、判定基準点A4は1フレーム前に設定され、判定基準点A5は現フレームで設定されたものである。そして、各判定基準点A1,A2,A3,A4,A5それぞれには、判定体B1、B2,B3,B4,B5が配置されている。
【0059】
判定体Bは、図5に示すように、自機10を内包し得る程度の大きさの正方形状のオブジェクトであり、一辺の長さHが自機10の縦方向の長さLよりも長いH0で形成されている。そして、判定体Bは、中心Oが判定基準点Aに一致し、各辺がX軸或いはZ軸の各座標軸と平行になるように配置される。また、判定体Bは、透明度αが「1」の透明オブジェクトである。
【0060】
また、各判定基準点Aには、「設定残時間」及び「ポイント」が設定されている。
「設定残時間」とは、該判定基準点Aが設定され得る残り時間であり、いわゆる寿命に相当する。この設定残時間は時間経過とともに減少し、ゼロ(0)になると、該判定基準点Aの設定が解除(削除)され、該判定基準点Aに配置されている判定体Bも削除される。
【0061】
「ポイント」とは、該判定基準点Aに設定されている判定体Bを阻害オブジェクトが通過した際にゲームスコアに加算される値であり、より「新しい」判定基準点Aであるほど、高い値が設定されている。同図では、判定基準点A1が最も古く、以下、順に判定基準点A5が最も新しいため、「ポイント」として、判定基準点A1には「5」が設定され、判定基準点A2,A3には「10」が設定され、判定基準点A4,A5には「20」が設定されている。
【0062】
上述のように、本実施形態では、時間経過とともに新たな判定基準点Aが次々と設定され、且つ、古い判定基準点Aが次々と削除されていく。つまり、1つの判定基準点Aに着目すると、その判定基準点Aは、時間経過とともに「新しい」判定基準点Aから「古い」判定基準点Aへと徐々に変化することになる。従って、各判定基準点Aに設定されるポイントは、時間経過とともに徐々に低い値に変更される。
【0063】
そして、これらの判定体Bと阻害オブジェクトとのヒット判定(交差判定)を行うことで、自機10が阻害オブジェクトを通過したか否かが判断され、その判断結果に応じて、自機10の阻害オブジェクトに対する「回避」が評価される。具体的には、図6に示すように、阻害オブジェクト(弾24)が判定体Bを通過する際には、該判定体Bを通過中は「ヒット有り」と判定され、判定体Bを抜けると(通過すると)、「ヒット無し」と判定される。従って、阻害オブジェクトと判定体Bとのヒット判定結果から、阻害オブジェクトの判定体Bの通過を判断できる。
【0064】
阻害オブジェクトが判定体Bを通過したと判断されると、該通過した判定体Bの判定基準点Aに設定されているポイントが、該阻害オブジェクトの「回避」に対する評価結果としてゲームスコアに加算される。また、一の阻害オブジェクトが複数の判定体Bを通過した場合には、これらの判定体Bの判定基準点Aに設定されているポイントの内、最高ポイントが「回避」の評価としてゲームスコアに加算される。つまり、「新しい」判定基準点Aであるほど、高いポイントが設定されているので、自機10がより阻害オブジェクトに接近して回避するほど、高得点がゲームスコアに加算されることになる。
【0065】
但し、阻害オブジェクトが自機10に接触(ヒット)した場合には、自機10がその阻害オブジェクトを「回避」したとはみなせないため、ポイントの加算は行われない。また、判定体Bは、これにヒットしたオブジェクトの移動に影響を与えない。
【0066】
即ち、判定体Bは、例えば図4に示すように、自機10が阻害オブジェクトを回避したか否かを判定するためのエリア(回避判定エリア)ARを形成するために作用する。この回避判定エリアARには2つの部分がある。即ち、判定体Bの大きさが自機10より大きいため、自機10の現在位置の判定体Bによる自機10の周囲の部分と、自機10の移動軌跡12上に配置される各判定体Bによる、移動軌跡12に沿った自機10の移動後方の部分とである。
【0067】
つまり、自機10が通過していない部分(側方や前方)をも含む自機10の周囲に回避判定エリアが形成される。このため、自機10が阻害オブジェクトに接触することなくその近傍を通過した、即ちその阻害オブジェクトを「回避した」ことを判定できる。
【0068】
従って、図4に示したように自機10の移動軌跡12と阻害オブジェクトの移動軌跡とが交わらない場合であっても、自機10と障害オブジェクトが所定距離以内まで近接したならば、その障害オブジェクトと判定体Bとがヒットしたと判定される。従って、固定配置されている障害オブジェクト(その移動軌跡は“点”である)に対する自機10の「回避」を判定できる。
【0069】
また、ゲームスタート時を除いて、基本的に一定数の判定基準点Aが設定され、各判定基準点は、自機10の移動速度が速いほど、その設定間隔が長くなる。従って、自機10の移動速度が速いほど、自機10の移動軌跡12に沿って長い範囲で判定体Bが配置されることになる。つまり、自機10の移動速度に応じて、判定体Bにより設定される回避判定エリアの形状が、移動方向後方の長さが長くなるように可変される。
【0070】
図4では、阻害オブジェクトである弾24が、判定体B3,B4のそれぞれを通過したと判定される。判定体B3が設定されている判定基準点A3のポイントは「10」であり、判定体B4が設定されている判定基準点A4のポイントは「20」である。従って、高い方のポイント「20」が、自機10の弾24に対する「回避」の評価結果としてゲームスコアに加算される。
【0071】
また、本実施形態では、自機10を所定時間以上停止(静止)させると、設定されている判定体Bの大きさが変化する。
【0072】
図7は、自機10を図4に示した状態で停止させた場合を示す図である。図7(a)は、自機10を判定基準点A5の位置で停止させたまま、3フレームが経過した後の状態を示している。即ち、「古い」判定基準点A1〜A3及び判定体B1〜B3が削除され、自機10の停止位置、即ち判定基準点A5の位置に、新たな判定基準点A6,A7,A8及び判定体B6,B7,B8が設定されている。
【0073】
次いで、1フレームが経過すると、同図(b)に示すように、判定基準点A4及び判定体B4が削除され、判定基準点A5の位置に、新たな判定基準点A9及び判定体B9が設定される。即ち、停止位置に、全ての判定基準点A及び判定体Bが重なって設定される。
【0074】
この状態で、更に所定数のフレームが経過すると、配置されている各判定体Bの拡大が開始される。詳細には、各判定体Bは、当初、一辺の長さHが所定の初期値H0に設定されるが、1フレーム毎に、一辺の長さHが所定の拡大量ΔHづつ増加されて拡大する。従って、「古い」判定体Bほど、その大きさが大きい。尚、この間も、1フレーム毎に新たな判定基準点A及び判定体Bの設定、「古い」判定基準点A及び判定体Bの削除が行われる。
【0075】
同図(c)は、各判定体Bの拡大が行われている状態を示す図である。同図(c)では、自機10の停止位置に、判定基準点A21,A22,A23,A24,A25及び判定体B21,B22,B23,B24,B25が設定(配置)されている。そして、各判定体B21〜B25は、新しい順、即ち判定体B25,B24,B23,B22,B21の順に小さくなっている。即ち、最も「新しい」判定体B25が、一辺の長さHが初期値「H0」で最も小さく、次いで、判定体B24の一辺長さHが「H0+ΔH」であり、判定体B23の一辺の長さHが「H0+2×ΔH」であり、判定体B22が、一辺の長さHが「H0+3×ΔH」であり、最も「古い」判定体B21の一辺の長さHが「H0+4×ΔH」で最も大きくなっている。
【0076】
その後、停止していた自機10が再度移動を開始すると、同図(d)に示すように、各判定体Bの大きさは元の大きさ(初期値H0)に戻り、以降は、図4と同様に、各フレームでの位置に判定基準点Aが設定され、一辺の長さがH0の判定体Bが配置される。
【0077】
[残像体配置]
また、図8(a)に示すように、各判定基準点Aには残像体40が配置される。残像体40は、同図(b)に示すように、自機10と同一形状且つ同一の大きさのオブジェクトであり、透明度αが、0<α<1、に設定されている半透明オブジェクトである。詳細には、透明度αがそれぞれ異なる3つの残像体40A,40B,40Cが用意されており、これらの何れかが各判定基準点Aに配置される。残像体40A,40B,40Cの透明度αは、残像体40Aが最も小さく(即ち、最も濃い)、残像体40Cが最も大きい(即ち、薄い)。但し、最も「新しい」判定基準点Aは、自機10の現在位置であるため、残像体40は配置されない。
【0078】
各判定基準点Aに残像体40A,40B,40Cの何れが配置されるかは、該判定基準点Aの設定残時間によって決まる。具体的には、設定残時間が比較的長い、即ち「新しい」判定基準点Aには、透明度αが最も小さい残像体40Aが配置され、設定残時間が比較的短い、即ち「古い」判定基準点Aには、透明度αが最も大きい残像体40Cが配置され、設定時間がその中間の判定基準点Aには、透明度αが中間の残像体40Bが配置される。従って、残像が徐々に薄くなっていく様子が表現される。
【0079】
図8(a)は、図4に示した状態において残像体40を配置した様子を示す図である。図8(a)では、判定基準点A5は自機10の現在位置であるので、判定基準点A1〜A4のそれぞれに残像体40が配置される。即ち、最も「新しい」判定基準点A4には残像体40Aが配置され、その次に「新しい」判定基準点A3,A2には残像体40Bが配置され、最も「古い」判定基準点A1には残像体40Aが配置されている。
【0080】
従って、ゲーム画面としては、図3に示したように、判定体Bは透明オブジェクトであるので表示されず、残像体40は表示されることになる。また、残像体40は半透明オブジェクトであるので、その後方の色(ゲームステージ上の色)が透けて見えるように表示される。尚、図8(a)では、簡明のため、残像体40の数を限っており、各残像体40の間に隙間ができる程度に間隔をおいて配置されている。
【0081】
尚、図4〜図8では、合計5つの判定基準点A及び判定体Bが設定されることとしたが、勿論、この数は幾つでも構わない。また、1フレーム毎に新たな判定基準点A及び判定体Bが設定されることとしたが、設定間隔は何フレームでも構わない。但し、配置される各判定体Bの間に隙間が生じると、阻害オブジェクトがその隙間を通過した場合には「回避した」と判定されないため、判定基準点Aの設定間隔と判定体Bの大きさと判定体Bとは、各判定体Bの間に隙間が生じないように調整する必要がある。
【0082】
[機能構成]
次に、機能構成を説明する。
図9は、本実施形態における家庭用ゲーム装置1200の機能構成を示すブロック図である。同図に示すように、家庭用ゲーム装置1200は、機能的には、操作入力部100と、処理部200と、画像表示部310と、音出力部320と、記憶部400と、を備えて構成される。
【0083】
操作入力部100は、プレーヤによる操作指示を受け付け、操作に応じた操作信号を処理部200に出力する。この機能は、例えばボタンスイッチやレバー、ダイヤル、マウス、キーボード、各種センサ等によって実現される。図1では、ゲームコントローラ1210がこれに該当する。
【0084】
処理部200は、家庭用ゲーム装置1200の全体制御やゲームの進行、画像生成等の各種演算処理を行う。この機能は、例えばCPU(CISC型、RISC型)、ASIC(ゲートアレイ等)等の演算装置やその制御プログラムにより実現される。図1では、制御ユニット1222に実装されているCPU等がこれに該当する。
【0085】
また、処理部200は、主にゲームの実行に係る演算処理を行うゲーム演算部210と、ゲーム演算部210の処理によって求められた各種のデータに基づき、仮想カメラ等の所与の視点から見た仮想三次元空間(ゲーム空間)の画像を生成する画像生成部230と、効果音やBGM等のゲーム音を生成する音生成部240と、を含んでいる。
【0086】
ゲーム演算部210は、操作入力部100から入力された操作信号や、記憶部400から読み出したゲーム情報(プログラム及びデータ)等に基づいて種々のゲーム処理を実行する。ゲーム処理としては、例えばゲーム空間への自機10や敵オブジェクト等の各種オブジェクトの配置処理、操作入力部100からの操作信号に基づく自機10の制御、敵オブジェクト等の制御、各種オブジェクトのヒット判定処理(交差判定処理)等がある。
【0087】
また、本実施形態では、ゲーム演算部210は、自キャラクタ制御部212と、敵オブジェクト制御部214と、自キャラヒット判定部216と、判定体管理部218と、残像体配置部222と、判定体ヒット判定部224と、回避評価部226と、スクロール制御部228と、を含んでいる。
【0088】
自キャラクタ制御部212は、操作入力部100からの操作入力に従って、自キャラクタである自機10の移動や弾(ミサイル)の発射等の攻撃動作を制御する。具体的には、移動制御としては、1フレーム毎に、現在位置及び操作入力部100からの操作入力に従って自機10の次フレームでの位置を演算し、演算した位置に自機10を再配置する。
【0089】
ここで、自機10に関する情報は自キャラクタ情報430に格納されている。図10に、自キャラクタ情報430のデータ構成の一例を示す。同図によれば、自キャラクタ情報430は、自機10のモデルデータ431と、残像体データ432と、現在位置433と、次フレームでの位置434と、移動方向及び移動速度を表す移動ベクトル435と、拡大フラグ436と、を含んでいる。
【0090】
残像体データ432には、透明度αが異なる複数の残像体40のデータが格納される。各残像体40は、その形状及びRGB値は全て同一であり、透明度αのみが異なる半透明オブジェクトである。同図では、透明度αが小さい順に、3つの残像体40A,40B,40Cのデータが格納されている。
【0091】
拡大フラグ436とは、判定体Bの拡大を行うか否かを示すフラグである。この拡大フラグが「1」に設定されている場合に、判定体Bの拡大が行われる。拡大フラグは、自機10の位置が同一である状態が所定フレーム数以上継続されると、同一位置に停止しているとみなされ、「1」に設定される。
【0092】
ここで、拡大開始の判定基準となるフレーム数(以下、「拡大開始フレーム数」と称する。)Fは、図11に示すように、設定される全ての判定基準点Aが同一位置(自機10が停止している位置)に設定され、更に数〜数十フレーム経過した後のフレーム数として設定される。本実施形態では、1フレーム毎に判定基準点Aの設定及び削除が行われるので、全判定基準点Aが自機10の停止位置に重なって設定されるのに要するフレーム数は、設定される判定基準点Aの総数(以下、「設定基準点数」と称する。)Mに等しい。従って、例えば設定基準点数Mが「30」の場合には、拡大開始フレーム数Fは「60〜100」程度に設定される。
【0093】
拡大開始フレーム数Fは、拡大開始フレーム数情報490に格納されている。拡大開始フレーム数情報490は、図12に示すように、拡大開始フレーム数Fの値を格納している。また、設定基準点数Mは、設定基準点数情報510に格納されている。設定基準点数情報510は、図13に示すように、設定基準点数Mの値を格納している。
【0094】
自キャラヒット判定部216は、自機10と阻害オブジェクトとのヒット判定を行う。自キャラヒット判定部216によりヒットしたと判定されると、自機10が阻害オブジェクトに接触(衝突)し、破壊(撃墜)されたとして、その時点で強制的にゲーム終了となる。
【0095】
敵オブジェクト制御部214は、予め定められた制御ルーチンに従って各敵オブジェクトを制御する。具体的には、敵キャラクタ22をゲームステージ中で移動させる移動制御や、敵キャラクタ22に弾(ミサイル)24を発射させる等の攻撃動作の制御を行うとともに、該発射された弾24の移動を制御する。
【0096】
ここで、各敵オブジェクトに関する情報は敵オブジェクト情報440に格納されている。図14に、敵オブジェクト情報440のデータ構成の一例を示す。同図によれば、敵オブジェクト情報440は敵オブジェクト毎に生成され、1つの敵オブジェクト情報440は、該当する敵オブジェクトの識別番号である敵オブジェクトID441と、モデルデータ442と、制御ルーチン443と、現在位置444と、次フレーム位置445と、移動ベクトル446と、を含んでいる。敵オブジェクト制御部214は、この敵オブジェクト情報440を参照して、敵オブジェクトを自動制御する。
【0097】
判定体管理部218は、自機10の位置に基づいて判定基準点A及び判定体Bの設定及び削除等を行い、回避判定エリアを設定する。具体的には、1フレーム毎に、自機10の現在位置に新たな判定基準点Aを設定するとともに、該判定基準点Aに、一辺の長さHが所定の初期値H0である大きさの判定体Bを配置する。そして、既設定の判定基準点Aの内、最も「古い」判定基準点Aを削除するとともに、該判定基準点Aに配置されている判定体Bを削除する。
【0098】
また、判定体管理部218は、自機10が同一位置に継続して居るフレーム数をカウントし、カウント数が拡大開始フレーム数F以上になったならば、拡大フラグを「1」に設定する。そして、拡大フラグが「1」に設定されている間は、既配置の各判定体Bを、一辺の大きさHを所定の拡大量ΔHだけ増加させて拡大する。
【0099】
ここで、各判定基準点A及び判定体Bに関する情報は判定体管理情報450に格納される。図15に、判定体管理情報450のデータ構成の一例を示す。同図によれば、判定体管理情報450は、判定基準点毎に、該判定基準点Aの識別番号451と、設定されている位置452と、該判定基準点Aに配置される判定体Bの大きさ453と、設定残時間454と、を対応付けて格納している。但し、判定体管理情報450に格納されている情報は、現在設定されている判定基準点Aについての情報である。同図では、設定基準点数Mが「30」の場合を示しており、従って、判定体管理情報450には、合計「30」の判定基準点Aそれぞれの情報が格納されている。
【0100】
判定基準点識別番号451は、設定順に「1」から連続する番号が付される。即ち、判定体識別番号451が大きいほど、「新しい」判定基準点Aであることを表す。
【0101】
大きさ453は、該当する判定基準点Aに配置される判定体Bの一辺の長さHを格納する。この大きさ453は、当初、所定の初期値H0が格納される。それ以降は、拡大フラグが「0」であるならばその値は変更されないが、拡大フラグが「1」である間は、1フレーム毎に所定の拡大量ΔHづつ増加した値に更新される。
【0102】
設定残時間454は、該当する判定基準点Aが設定され得る残りのフレーム数を格納する。この設定残時間454には、当初、所定の最大残時間が格納され、以降、1フレーム毎に「1」減算した値に更新される。そして、設定残時間454が「0」になると、該当する判定基準点Aの情報が判定体管理情報450から削除される。即ち、判定基準点Aの設定が解除(削除)されるとともに、この設定基準点に配置されていた判定体Bも削除される。本実施形態では、1フレーム毎に判定基準点Aの設定及び削除が行われるので、各判定基準点Aが設定され得るフレーム数は、設定基準点数Mに等しい。従って、最新の判定基準点Aの設定残時間454には、所定の最大残時間として、設定基準点数Mに等しい値が格納される。
【0103】
判定体管理部218は、1フレーム毎に、自機10の現在位置に新たな判定基準点Aを設定し、これに連続する新たな判定基準点識別番号451を付し、設定位置452として自機10の現在位置と、大きさ453として所定の初期値H0と、設定残時間454として設定基準点数Mと、を対応付けて判定体管理情報450に追加格納する。また、1フレーム毎に、判定体管理情報450に既に格納されている各判定基準点Aについて、それぞれの設定残時間454を「1」減算し、減算後の設定残時間454が「0」である判定基準点Aの情報を判定体管理情報450から削除する。更に、停止フラグが「1」である場合には、既に格納されている各判定基準点Aについて、それぞれの大きさ453を所定の拡大量ΔHだけ増加させる。
【0104】
ここで、判定体Bの大きさを決定するための初期値H0及び拡大量ΔHは、判定体設定情報460に格納されている。図16に、判定体設定情報460のデータ構成の一例を示す。同図に示すように、判定体設定情報460は、判定体Bの配置当初の大きさである初期値461と、拡大1回当たりの拡大量462とを格納している。
【0105】
残像体配置部222は、判定体管理情報450及びポイント設定情報470を参照して、各判定基準点Aに残像体40を配置する。
【0106】
ポイント設定情報470とは、各判定基準点Aに設定するポイント及び残像体40を決定するための情報である。図17に、ポイント設定情報470のデータ構成の一例を示す。同図によれば、ポイント設定情報470は、設定残時間471と、ポイント472と、残像体473と、を対応付けて格納している。
【0107】
設定残時間471は、判定基準点Aに設定され得る設定残時間が複数期間(同図では、3期間)に分類され、各期間毎にポイント472及び残像体473が対応付けられている。本実施形態では、設定残時間が長い、即ち新しい判定基準点Aであるほど、ポイント472として高い値が対応付けられ、また、ポイント472が高いほど、残像体473として透明度αが小さい(濃い)残像体40が対応付けられている。ここで、残像体473は自機10の残像体であり、自キャラクタ情報430の残像体データ432に格納されている各残像体40A,40B,40Cを指定している。
【0108】
即ち、残像体配置部222は、判定体管理情報450を参照して各判定基準点Aの設定残時間を判断し、ポイント設定情報470においてこの設定残時間に対応付けられている残像体40を、該判定基準点Aに配置する。
【0109】
判定体ヒット判定部224は、各阻害オブジェクトと配置されている各判定体Bとのヒット判定を行い、阻害オブジェクトの判定体Bの通過を判定する。判定体ヒット判定部224による判定結果は、判定体ヒット情報480に格納される。
【0110】
図18に、判定体ヒット情報480のデータ構成の一例を示す。同図によれば、判定体ヒット判定情報480は阻害オブジェクト毎に生成され、1つの判定体ヒット情報480は、該当する阻害オブジェクトを識別するオブジェクトID481を含み、該阻害オブジェクトとヒットすると判定された判定体Bの判定基準点Aの判定基準点識別番号482と、ポイント483と、を対応付けて格納している。但し、判定体ヒット情報480は、現在何れかの判定体Bとヒットしている(ヒット有り)と判定されている阻害オブジェクトについてのみ生成され、ヒット無しと判定されたものは削除される。即ち、判定体Bとヒット中の阻害オブジェクトに関する判定体ヒット情報480のみが存在することになる。
【0111】
ポイント483には、該当する判定基準点Aに設定されているポイントが格納される。判定基準点Aに設定されるポイント(設定ポイント)は、上述のように、時間経過とともに変化する。このため、ポイント483には、該当する判定体Bとヒットしたと判定された時点で、該判定体Bの判定基準点Aに設定されていたポイントが格納される。また、同一の判定体Bとの複数回のヒットが判定された場合には、各判定時点での設定ポイントの内、最も高いポイントが選択されて格納される。本実施形態では、判定基準点Aに設定されるポイントは時間経過とともに減少する。従って、ポイント483には、該当する判定体Bと最初にヒットしたと判定された時点での設定ポイントが格納される。
【0112】
判定基準点Aの設定ポイントは、ポイント設定情報470を参照して判断される。即ち、判定体管理情報450を参照して、判定体Bとヒットしたと判定された時点における該判定体Bの判定基準点Aの設定残時間が判断され、次いで、ポイント設定情報470において、この判断された設定残時間を含む期間と対応付けられているポイントが、該判定基準点Aの設定ポイントとされる。
【0113】
また、各判定体ヒット情報480は、該当する阻害オブジェクトが何れの判定体Bとヒットしていないと判定されると、判定体ヒット判定部224により、該阻害オブジェクトが判定体Bを通過した(抜けた)と判断され、該判定体ヒット情報480に基づく回避評価部226による評価が行われた後、削除される。
【0114】
回避評価部226は、判定体ヒット判定部224により阻害オブジェクトが判定体Bと通過したと判断された場合に、該阻害オブジェクトの判定体ヒット情報480を参照して、自機10の阻害オブジェクトに対する「回避」を評価する。具体的には、判定体ヒット情報480に格納されているポイント483の内、最も高い値を該阻害オブジェクトに対する自機10の「回避」の評価としてゲームスコアに加算する。その後、該判定体ヒット情報480を評価済みとして削除する。ここで、ゲームスコアは、ゲームスコア情報520に格納されている。
【0115】
スクロール制御部228は、ゲーム画面を所定方向(縦方向)にスクロールさせて表示するための制御を行う。
【0116】
画像生成部230は、ゲーム演算部210による演算結果に基づき、ゲーム画面を表示するためのゲーム画像(2DCG画像)を生成し、生成した画像の画像信号を画像表示部310に出力する。
【0117】
画像表示部310は、画像生成部230からの画像信号に基づいて、例えば1/60秒毎に1フレームの画面を再描画しながらゲーム画面を表示する。この機能は、例えばCRT、LCD、ELD、PDP、HMD等のハードウェアによって実現される。図1では、ディスプレイ1230がこれに該当する。
【0118】
音生成部240は、ゲーム中に使用される効果音やBGM等のゲーム音を生成し、生成したゲーム音の音信号を音出力部320に出力する。
【0119】
音出力部320は、音生成部240からの音信号に基づいて、BGMや効果音等のゲーム音声を出力する。この機能は、例えばスピーカ等によって実現される。図1では、スピーカ1232がこれに相当する。
【0120】
記憶部400は、処理部200に家庭用ゲーム装置1200を統合的に制御させるための諸機能を実現するためのシステムプログラムや、ゲームを実行させるために必要なプログラムやデータ等を記憶するとともに、処理部200の作業領域として用いられ、処理部200が各種プログラムに従って実行した演算結果や操作入力部100から入力される入力データ等を一時的に記憶する。この機能は、例えば各種ICメモリやハードディスク、CD−ROM、DVD、MO、RAM、VRAM等によって実現される。図1では、制御ユニット1222に実装されているROMやRAM等がこれに該当する。
【0121】
また、記憶部400は、処理部200をゲーム演算部210として機能させるためのゲームプログラム410及びゲームデータを記憶する。ゲームデータには、ステージ情報420と、自キャラクタ情報430と、敵オブジェクト情報440と、判定体管理情報450と、判定体設定情報460と、ポイント設定情報470と、判定体ヒット情報480と、拡大開始フレーム数情報490と、設定基準点数情報510と、ゲームスコア情報520とが含まれている。
【0122】
ステージ情報420は、ゲーム空間にゲームステージを構築するための情報であり、これには、ゲームステージ中に固定配置される岩石32や建造物34等の障害オブジェクトのデータ(配置位置やモデルデータ等)も含まれている。
【0123】
[処理の流れ]
次に、処理の流れを説明する。
図19は、本実施形態におけるゲーム処理の流れを説明するためのフローチャートである。このゲーム処理は、ゲーム演算部210がゲームプログラム410を実行することで実現される。尚、シューティングゲームの実行にかかる処理は従来と同様に実行可能であるので、その詳細な説明は省略し、本実施形態に特徴的な処理を中心に説明する。
【0124】
同図によれば、ゲーム処理では、先ず、初期設定処理が行われる。初期設定処理としては、具体的には、ゲーム演算部210が、ステージ情報420に基づいてゲーム空間にゲームステージを構築し、岩石32や建造物34等の障害オブジェクトを該ゲームステージに固定配置する。そして、自キャラクタ制御部212が、自機10をゲームステージ中の所定の初期位置に配置し、敵オブジェクト制御部214が、各敵オブジェクトをゲームステージ中の所定の初期位置に配置する。また、各種パラメータの初期化が行われる(ステップS11)。
【0125】
その後、1フレーム毎にループAの処理が実行される。
ループAでは、自キャラクタ制御部212が、操作入力部100からの操作入力に従って自機10の次フレームでの位置を演算し、演算した位置に自機10を再配置する(ステップS12)。また、敵オブジェクト制御部214が、各敵オブジェクトについて、定められた制御ルーチンに従って次フレームでの位置を演算し、演算した位置に再配置する(ステップS13)。
【0126】
次いで、自キャラヒット判定部216が、自機10と各阻害オブジェクトとのヒット判定を行い(ステップS14)、自機10が何れかの阻害オブジェクトとヒットするならば(ステップS15:YES)、その時点でループAが終了し、ゲームは「失敗」となってゲーム処理が終了する。
【0127】
自機10が何れの阻害オブジェクトともヒットしないならば(ステップS15:NO)、続いて、ゲーム演算部210は、ゲーム終了か否かを判断する。即ち、自機10が所定のゴールに到達したかを判断し、到達したならばゲーム終了と判断する。ゲーム終了と判断したならば(ステップS16:YES)、ループAが終了し、ゲームは「成功」となってゲーム処理が終了する。一方、ゲーム終了でないならば(ステップS16:NO)、続いて、判定体配置処理が実行される(ステップS17)。
【0128】
図20は、判定体配置処理の流れを説明するためのフローチャートである。同図によれば、判定体配置処理では、判定体管理部218が、自キャラクタ情報430を参照して、自機10の次フレーム位置が現在位置に一致するか否かを判断し、一致するならば(ステップT11:YES)、カウント値を「1」加算した値に更新する(ステップT12)。尚、このカウント値は、初期設定処理(図19のステップS11)にて初期値「0」に初期設定されている。そして、カウント値が拡大開始フレーム数F以上であるならば(ステップT13:YES)、拡大フラグを「1」に設定し(ステップT14)、判定体管理情報450に格納されている各判定基準点Aの大きさを、拡大量ΔHだけ増加した値に更新する(ステップT15)。
【0129】
一方、自機10の次フレーム位置が現在位置に一致しないならば(ステップT11:NO)、判定体管理部218は、カウント値をクリアし(ステップT16)、拡大フラグを「0」に設定する(ステップT17)。そして、判定体管理情報450に格納されている各判定基準点Aに配置する判定体Bの大きさを、初期値H0に更新する(ステップT19)。
【0130】
次いで、判定体管理部218は、判定体管理情報450に格納されている各判定基準点Aの設定残時間を、「1」減算した値に更新する(ステップT20)。そして、減算後の設定残時間が「0」の判定基準点Aの情報を、判定体管理情報450から削除する(ステップT21)。
【0131】
続いて、判定体管理部218は、判定体管理情報450を参照し、各判定基準点Aに判定体Bを配置する。具体的には、判定体管理情報450に格納されている各判定基準点Aについて、対応する設定位置に、対応する大きさHの判定体Bを配置する(ステップT22)。
【0132】
更に、残像体配置部222が、判定体管理情報450及びポイント設定情報470を参照して、各判定基準点Aに残像体40を配置する。具体的には、判定体管理情報450に格納されている各判定基準点Aについて、対応する設定位置に、ポイント設定情報470において対応する設定残時間と対応付けられている残像体40を配置する(ステップT23)。
【0133】
その後、判定体管理部218が、自機10の次フレーム位置を判定基準点Aの位置とした新たな判定基準点Aの情報を判定体管理情報450に追加格納する。具体的には、該判定基準点Aに新たな識別番号を付し、大きさHを初期値H0とし、設定残時間を設定基準点数Mとしてこれらを対応付けて格納する。そして、該当する新たな判定体Bを配置する(ステップT24)。
以上の処理を行うと、判定体配置処理が終了する。
【0134】
判定体配置処理が終了すると、続いて、判定体ヒット判定処理が実行される(ステップS18)。
【0135】
図21は、判定体ヒット判定処理の流れを説明するためのフローチャートである。同図に示すように、判定体ヒット判定処理では、画面内の全阻害オブジェクトを順に対象としてループBの処理が実行される。ループBで対象とする阻害オブジェクトを、「対象阻害オブジェクト」と称する。
【0136】
ループBでは、先ず、判定体ヒット判定部224が、対象阻害オブジェクトと各判定体Bとのヒット判定を行う(ステップU11)。判定の結果、対象阻害オブジェクトが何れかの判定体Bとヒットするならば(ステップU12:YES)、次いで、判定体ヒット判定部224は、対象阻害オブジェクトの判定体ヒット情報480が既に生成されているかを判断する(ステップU13)。
【0137】
対象阻害オブジェクトの判定体ヒット情報480が生成されていないならば(ステップU13:NO)、判定体ヒット判定部224は、対象阻害オブジェクトの判定体ヒット情報480を新たに生成する(ステップU15)。そして、ヒットしたと判定した判定体B(ヒット判定体)の情報を判定体ヒット情報480に追加格納する。即ち、判定体管理情報450を参照してヒット判定体に該当する設定残時間を判断し、この判断した設定残時間ポイント設定情報470において対応付けられているポイントを、該ヒット判定体の判定基準点Aに付した識別番号と対応付けて判定体ヒット情報480に追加格納する(ステップU16)。
【0138】
対象阻害オブジェクトの判定体ヒット情報480が既に生成されているならば(ステップU13:YES)、判定体ヒット判定部224は、その判定体ヒット情報480に、ヒット判定体の判定基準点Aの情報が格納されているか否かを判断する。格納されていないならば(ステップU14:NO)、ヒット判定体の情報をその判定体ヒット情報480に追加格納する(ステップU16)。
【0139】
一方、対象阻害オブジェクトが何れの判定体Bともヒットしないならば(ステップU12:NO)、回避評価部226が、対象阻害オブジェクトの判定体ヒット情報480が存在するか否かを判断する。存在するならば(ステップU17:YES)、回避評価部226は、その判定体ヒット情報480に格納されている設定ポイントの内、最高ポイントをゲームスコアに加算してゲームスコア情報520を更新した後(ステップU18)、その判定体ヒット情報480を削除する(ステップU19)。
以上の処理を行うと、判定体ヒット処理は終了となる。
【0140】
判定体ヒット判定処理が終了すると、続いて、画面表示処理が実行される(ステップS19)
【0141】

図22は、画面表示処理の流れを説明するためのフローチャートである。
同図に示すように、画面表示処理では、先ず、スクロール制御部228が、所定のスクロール処理を行って次フレームでのゲーム画面の表示範囲を決定する(ステップV11)。
【0142】
次いで、画像生成部230が、決定された表示範囲内のゲームステージの画像(ゲーム画像)を生成する(ステップV12)。そして、ゲームスコア情報520を参照して現在のゲームスコア90の画像を生成し、これを、先に生成したゲーム画像の所定位置に合成し(ステップV13)、合成後の画像を画像表示部310に表示させる(ステップV14)。
以上の処理を行うと、画面表示処理は終了となる。
【0143】
画面表示処理が終了すると、1回分のループAが終了となる。以降は、1フレーム毎にループAの処理が繰り返し実行され、自機10が阻害オブジェクトに接触したり(ステップS15:YES)、或いは、自機10がゴールに到達等してゲーム終了と判定されると(ステップS16:YES)、ゲーム処理は終了となる。
【0144】
[ハードウェア構成]
図23は、本実施の形態における家庭用ゲーム装置1200のハードウェア構成の一例を示す図である。同図によれば、家庭用ゲーム装置1200は、CPU1002と、ROM1004と、RAM1006と、情報記憶媒体1008と、画像生成IC1010と、音生成IC1012と、I/Oポート1014,1016とを有し、システムバス1030により相互にデータの入出力が可能に接続されている。また、画像生成IC1010には表示装置1018が接続され、音生成IC1012にはスピーカ1020が接続され、I/Oポート1014にはコントロール装置1022が接続され、I/Oポート1016には通信装置1024が接続されている。
【0145】
CPU1002は、情報記憶媒体1008に格納されているプログラムやデータ、ROM1004に格納されているシステムプログラムやデータ、コントロール装置1022によって入力される操作入力信号等に従って、家庭用ゲーム装置1200全体の制御や各種データ処理を行う。このCPU1002は、図9の処理部200に該当する。
【0146】
ROM1004、RAM1006及び情報記憶媒体1008は、図9の記憶部400に該当する。ROM1004は、家庭用ゲーム装置1200のシステムプログラムや、図9の記憶部400に記憶されている情報の内、特に、予め設定されているプログラムやデータ等を記憶する。RAM1006は、CPU1002の作業領域として用いられる記憶手段であり、例えば、ROM1004や情報記憶媒体1008の所与の内容、1フレーム分の画像データ、CPU1002の演算結果等が格納される。また、情報記憶媒体1008は、ICメモリカードや本体装置に着脱自在なハードディスクユニット、MO等によって実現される。
【0147】
画像生成IC1010は、CPU1002からの画像情報に基づいて表示装置1018に表示するゲーム画面の画素情報を生成する集積回路である。表示装置1018は、画像生成IC1010で生成された画素情報に基づくゲーム画面を表示する。この画像生成IC1010は、図9の画像生成部32に該当し、表示装置1018は、図9の画像表示部310、図1のディスプレイ1230に該当する。
【0148】
音生成IC1012は、情報記憶媒体1008やROM1004に記憶される情報に基づいて効果音やBGM等のゲーム音を生成する集積回路であり、生成されたゲーム音はスピーカ1020によって出力される。この音生成IC1012は、図9の音生成部240に該当し、スピーカ1020は、図9の音出力部320、図1のスピーカ1232に該当する。
【0149】
尚、画像生成IC1010、音生成IC1012等で行われる処理は、CPU1002或いは汎用のDSP等によってソフトウェア的に実行されることとしても良い。
【0150】
コントロール装置1022は、プレーヤがゲームの進行に応じて種々のゲーム操作を入力するための装置である。このコントロール装置1022は、図9の操作入力部100、図1のゲームコントローラ1210に該当する。
【0151】
通信装置1024は、家庭用ゲーム装置1200内部で使用される各種情報を外部とやり取りするための装置であり、他のゲーム装置と接続されてゲームプログラムに応じた所与の情報を送受信したり、通信回線を介してゲームプログラム等の情報を送受信する等に利用される。この通信装置1204は、図1の本体装置1220に具備される通信装置1224に該当する。
【0152】
[作用・効果]
以上のように、本実施形態によれば、1フレーム毎に、自機10の現在位置に判定基準点Aが設定され、この判定基準点Aに判定体Bが配置される。この判定体Bは、一辺の長さHが所定の初期値H0である正方形状の板状オブジェクトであり、また、透明度が「1」の透明オブジェクトである。そして、この判定体Bと各阻害オブジェクトとのヒット判定によって、各阻害オブジェクトが判定体Bを通過したか否かが判断される。判定体Bを通過したと判断されると、自機10がその判定体Bを通過した阻害オブジェクトを「回避した」と判定され、該判定体Bの判定基準点Aに設定されているポイントがゲームスコアに加算される。
【0153】
判定基準点Aは自機10の位置に設定されるので、各判定体Bは自機10の移動軌道12に沿って配置されることになる。また、判定体Bは自機10よりも大きく形成されている。このため、自機10が阻害オブジェクトに接触することなくその近傍を通過した、つまり阻害オブジェクトを「回避した」ことを判断できる。また、各判定基準点Aにはそれぞれ異なるポイントが設定されており、より最近に設定されたものほど、高いポイントが設定されている。従って、自機10がより阻害オブジェクトに接近して回避するほど、高ポイントが得られることになる。
【0154】
従って、プレーヤキャラクタを単に阻害オブジェクトに接触しないように移動させるのみではなく、阻害オブジェクトをどのように回避するか(例えば、どれだけぎりぎりで回避できるか)を楽しむといった新たな面白さを持たせることができる。
【0155】
[変形例]
尚、本発明の適用は上述した実施形態に限定されることなく、本発明の趣旨を逸脱しない範囲で適宜変更可能である。
【0156】
(A)判定体Bの大きさ/形状を可変する
例えば、上述した実施形態では、自機10が移動中の場合には判定体Bの大きさは常に一定(一辺の長さHが初期値H0)としたが、これを、拡大/縮小して可変することとしても良い。この場合、時間経過とともに大きさを変更することとしても良いし、また、判定基準点Aの設定時の自機10の移動速度Vpの大きさ(速さ)に応じて判定体Bの大きさの初期値H0を決定することとしても良い。
【0157】
また、判定体Bの形状を正方形状としたが、これに限らず、例えば円形状や多角形状、或いは自機10の輪郭と同一形状としても良い。更に、各判定体Bの形状を時間経過とともに変更しても良いし、設定基準点A毎に異なる形状としても良い。
【0158】
また、判定体Bの大きさ/形状を可変するタイミングとして、自機10を所定時間以上停止(静止)させた場合を一例として説明したが、判定体管理部218が操作入力が無い状態が所定時間以上続いたか否かを判定し、その場合に判定体Bの大きさ/形状を可変するとしてもよい。その場合には、例えば、自機10が惰性で移動している状態などにおいても判定体Bの大きさ/形状を可変することができる。
【0159】
また、操作入力の履歴に基づいて判定体Bの大きさ/形状を可変することとしてもよい。具体的には、例えばボタンを強く押下する操作入力が為され、これを検知した場合には、通常の判定体Bより大きいサイズの判定体Bを配置したり、形状を変えた判定体Bを配置する。その場合には、強い操作入力が為された場合には、阻害オブジェクトに対してヒットし易い判定体Bが配置されるという状況を作り出すことができる。なお、ボタン押下の強さを検知する技術は公知の技術であるため、その詳細説明を省略する。
【0160】
(B)判定基準点Aの位置を可変する
また、上述した実施形態では、判定基準点Aは一度設定したらその位置は固定としたが、これを可変してもよい。具体的には、各判定基準点Aに、その設定時の自機10の移動ベクトルVpに比例した(例えば、方向が同一で大きさ(速度)が1/10)移動ベクトルVbを設定し、1フレーム毎に、この移動ベクトルVbに基づいて各判定基準点Aの位置を変化させる。
【0161】
このようにすることで、当初、自機10の移動軌跡12上に設定された判定基準点A(画面上では残像体)が慣性を持って移動するように表現できる。従って、自機10が高速に移動すると、判定体Bも早く移動することになり、阻害オブジェクトと判定体Bとの相対速度によって、阻害オブジェクトと判定体Bとがヒットし易い状況を作ることができる。また、固定位置に配置されている障害オブジェクトと判定体Bとがヒットし易くなるため、自機10が間一髪でその障害オブジェクトをよけて(回避して)移動した際に高ポイントが得られることになる。
【0162】
(C)判定基準点A及び判定体Bの配置位置の判断基準
判定基準点A及び判定体Bの配置位置は、操作入力に従った次フレームでの自機の位置、すなわち、自機の移動履歴に沿った位置として説明したが、次のようにしてもよい。即ち、操作入力そのものの履歴に基づいて位置を決定することとしてもよい。具体的には、各フレームにおける各キーの操作入力の有無、操作入力の強さ(ボタン押下の強さ)等を記憶していく。そして、それら操作入力の履歴から、判定基準点A、ひいては判定体Bの配置位置を決定する。操作入力は自機の制御のためのものであるため、結局、自機の移動履歴に影響することとなるが、操作入力そのものの履歴に基づいて判定基準点Aの配置位置を決定することで、ボタン押下が強かった位置に判定基準点Aを複数設定するといったことをも実現できるようになる。なお、ボタン押下の強さを検知する技術は公知の技術であるため、その詳細説明を省略する。
【0163】
(D)接触可能性を判断
また、接触可能性を判断し、その判断結果に応じて、「回避した」と判定した場合の評価を変更することとしても良い。具体的には、自機10の現在の移動状況から予測移動軌道(例えば、現在の移動速度Vpで移動した場合の軌道)を算出し、算出した予測移動軌道に基づいて各阻害オブジェクトとの接触可能性を判断する。そして、阻害オブジェクトを「回避した」と判断した場合の評価として、接触可能性有りと判断されている場合には、接触可能性無しと判断されている場合よりも高く評価し、より多くのポイントをゲームスコアに加算することとしても良い。
【0164】
(E)コンボ
また、回避毎の評価に加え、いわゆる「コンボ」の達成により、所定のボーナスポイントをゲームスコアに加算することとしても良い。例えば、(a)一定時間内に所定回数以上、阻害オブジェクトを回避した場合や、(b)一定時間以内に予め定められた阻害オブジェクトの種類及び順序で回避した場合に、その回数や組み合わせに応じたボーナスポイントをゲームスコアに加算する。
【0165】
(F)回避の評価
また、上述した実施形態では、障害オブジェクトが何れの判定体Bを通過したかによって「回避」の評価、即ちゲームスコアに加算するポイントを決定したが、(a)自機10の移動速度Vp、或いは、(b)自機10とその阻害オブジェクトとの相対速度Vpに応じて「回避」の評価の程度を変更しても良い。
【0166】
一般的に、自機10の移動速度Vpが速いほど、或いは、自機10と阻害オブジェクトとの相対速度Vsが速いほど、より高度な操作技術が要求される。このため、移動速度Vp或いは相対速度Vsが速いほど、より難易度が高い「回避」であったとみなして評価の程度を高くする。具体的には、阻害オブジェクトと判定体Bとがヒットすると判定された時点での自機10の移動速度Vpの大きさ、或いは、自機10とその阻害オブジェクトとの相対速度Vsの大きさを,ヒットした判定体Bと対応付けて記憶しておき、この移動速Vp或いは相対速度Vsの大きさに比例した係数を該当するポイントに乗じてゲームスコアに加算する。
【0167】
(G)判定基準点Aに設定するポイント
また、上述した実施形態では、各判定基準点Aに設定するポイントをその設定残時間に応じて決定することとしたが、自機10との距離Dに応じて決定することとしても良い。
即ち、例えば自機10がUターンするように移動した場合には、各判定基準点Aの新しさと、自機10との距離Dとが一致しない。しかし、各判定基準点Aのポイントを距離Dに応じて決定することで、自機10がより阻害オブジェクトに接近して通過するほど、高いポイントがゲームスコアに加算される、即ち難易度が高い「回避」であると評価することができる。
【0168】
(H)「回避」の他の評価方法
また、上述した実施形態では、自機10の阻害オブジェクトに対する「回避」の評価として、所定のポイントをゲームスコアに加算することとしたが、その他の方法としても良い。例えば、(a)特定の阻害オブジェクトを回避することで、次のステージに進める、或いは、所定のボーナスステージをプレイ可能となるといったゲーム進行の可変を行ったり、(b)回避を褒め称える所定の画像を表示したり、音声を出力するといった演出処理等がある。
【0169】
(I)3Dゲームの場合
また、上述した実施形態では、2Dシューティングゲームについて説明したが、3Dシューティングゲームにも同様に適用可能である。この場合には、図24に示すように、判定体を立方体形状の三次元オブジェクトとすれば良い。そして、各判定体C(C1〜C5)の中心Oを判定基準点A(A1〜A5)に一致させ、各辺を、三次元ゲーム空間のX軸、Y軸及びZ軸の各座標軸に平行に配置する。
【0170】
(J)適用するゲーム装置
また、上述した実施形態では、本発明を家庭用ゲーム装置に適用した場合について説明したが、図1に示した家庭用ゲーム装置1200のみではなく、業務用ゲーム装置や携帯型ゲーム装置、多数のプレーヤが参加する大型アトラクション装置等の種々の装置にも同様に適用できる。
【0171】
例えば、図25は、本発明を業務用ゲーム装置に適用した一例を示す外観図である。同図によれば、業務用ゲーム装置1300は、ゲーム画面を表示するディスプレイ1302と、ゲームの効果音やBGMを出力するスピーカ1304と、前後左右方向を入力するジョイスティック1306と、プッシュボタン1308と、演算処理によって業務用ゲーム装置1300を統合的に制御して所与のゲームを実行する制御ユニット1310とを備える。
【0172】
制御ユニット1310は、CPU等の演算処理装置と、業務用ゲーム装置1300の制御及びゲームの実行に必要なプログラムやデータが格納されたROMを搭載する。制御ユニット1310に搭載されるCPUは、ROMに記憶されたプログラムやデータを適宜読み出して演算処理することによって、ゲーム処理等の種々の処理を実行する。プレーヤは、ディスプレイ1302に表示されたゲーム画面を見て、スピーカ1304から出力されるゲーム音声を聞きながら、ジョイスティック1306やプッシュボタン1308を操作してゲームを楽しむ。
【0173】
(K)適用するゲーム
更に、上述した実施形態では、本発明をシューティングゲームに適用したが、本発明が適用可能なゲームはシューティングゲームに限られない。例えば、レースゲームにおいて、他キャラクタ(車やバイク等)をどれだけ近接して追い抜いたのか、どれだけ強気な(換言すれば、どれだけ危険な)運転をしたのか等を、判定体Bと他キャラクタとのヒット判定や、判定体Bと障害物とのヒット判定を行うことで評価することとしても良い。
【図面の簡単な説明】
【0174】
【図1】本発明を適用した家庭用ゲーム装置の外観例。
【図2】ゲーム画面例。
【図3】残像体が表示されたゲーム画面例。
【図4】回避判定の原理説明図。
【図5】判定体の構成図。
【図6】阻害オブジェクトの判定体の通過判断説明図。
【図7】自機を停止させた場合の判定体の配置説明図。
【図8】残像体の配置説明図。
【図9】本実施形態における機能構成図。
【図10】自キャラクタ情報のデータ構成例。
【図11】拡大開始フレーム数の設定方法。
【図12】拡大開始フレーム数情報のデータ構成例。
【図13】設定基準点数情報のデータ構成例。
【図14】敵オブジェクト情報のデータ構成例。
【図15】判定体管理情報のデータ構成例。
【図16】判定体設定情報のデータ構成例。
【図17】ポイント設定情報のデータ構成例。
【図18】判定体ヒット情報のデータ構成例。
【図19】本実施形態におけるゲーム処理の流れ図。
【図20】ゲーム処置中に実行される判定体設定処理の流れ図。
【図21】ゲーム処理中に実行される判定体ヒット判定処理の流れ図。
【図22】ゲーム処理中に実行される画面表示処理の流れ図。
【図23】家庭用ゲーム装置を実現できるハードウェア構成図。
【図24】3Dゲームの場合の判定体の配置説明図。
【図25】本発明を業務用ゲーム装置に適用した場合の外観例。
【符号の説明】
【0175】
1200 家庭用ゲーム装置
100 操作入力部
200 処理部
210 ゲーム演算部
212 自キャラクタ制御部
214 敵オブジェクト制御部
216 自キャラヒット判定部
218 判定体管理部
222 残像体配置部
224 判定体ヒット判定部
226 回避評価部
228 スクロール制御部
230 画像生成部
240 音生成部
310 画像表示部
320 音出力部
400 記憶部
410 ゲームプログラム
420 ステージ情報
430 自キャラクタ情報
440 敵オブジェクト情報
450 判定体管理情報
460 判定体設定情報
470 ポイント設定情報
480 判定体ヒット情報
490 拡大開始フレーム数情報
510 設定基準点数情報
520 ゲームスコア情報
GW ゲーム画面
10 自機(プレーヤキャラクタ)
12 移動軌道
22 敵キャラクタ(阻害オブジェクト)
24 弾(阻害オブジェクト)
32 岩石(阻害オブジェクト)
34 建造物(阻害オブジェクト)
40(40A,40B,40C) 残像体
A(A1〜A14) 判定基準点
B(B1〜B14) 判定体

【特許請求の範囲】
【請求項1】
コンピュータを、プレーヤの操作入力に従ってプレーヤキャラクタの移動を制御するプレーヤキャラクタ制御手段として機能させ、前記プレーヤキャラクタの移動を阻害する阻害オブジェクトに接触させずに前記プレーヤキャラクタを移動させて進行していくゲームを実行させるためのプログラムであって、
前記プレーヤキャラクタの移動軌跡に沿った移動後方に回避判定エリアを設定する判定エリア設定手段、
前記プレーヤキャラクタと前記阻害オブジェクトとが接触せずに前記阻害オブジェクトが前記設定された回避判定エリアを通過したか否かを判断することで、前記プレーヤキャラクタが前記阻害オブジェクトを回避したか否かを判断する回避判断手段、
前記回避判断手段による判断結果に基づいて所定の処理を実行する後処理手段、
として前記コンピュータを更に機能させるためのプログラム。
【請求項2】
コンピュータを、プレーヤの操作入力に従ってプレーヤキャラクタの移動を制御するプレーヤキャラクタ制御手段として機能させ、前記プレーヤキャラクタの移動を阻害する阻害オブジェクトに接触させずに前記プレーヤキャラクタを移動させて進行していくゲームを実行させるためのプログラムであって、
前記操作入力の履歴に基づいて前記プレーヤキャラクタの移動後方に回避判定エリアを設定する判定エリア設定手段、
前記プレーヤキャラクタと前記阻害オブジェクトとが接触せずに前記阻害オブジェクトが前記設定された回避判定エリアを通過したか否かを判断することで、前記プレーヤキャラクタが前記阻害オブジェクトを回避したか否かを判断する回避判断手段、
前記回避判断手段による判断結果に基づいて所定の処理を実行する後処理手段、
として前記コンピュータを更に機能させるためのプログラム。
【請求項3】
請求項1又は2に記載のプログラムであって、
前記阻害オブジェクトの動きを制御する阻害オブジェクト制御手段として前記コンピュータを更に機能させるためのプログラム。
【請求項4】
請求項1〜3の何れか一項に記載のプログラムであって、
前記判定エリア設定手段が、前記プレーヤキャラクタの周囲と、前記プレーヤキャラクタの移動後方の所定範囲とを前記回避判定エリアとして設定するように前記コンピュータを機能させるためのプログラム。
【請求項5】
請求項1〜4の何れか一項に記載のプログラムであって、
前記判定エリア設定手段が、前記回避判定エリアの大きさ及び/又は形状を可変する可変手段を有するように前記コンピュータを機能させるためのプログラム。
【請求項6】
請求項5に記載のプログラムであって、
前記可変手段が、前記プレーヤキャラクタの移動速度、継続移動時間及び継続移動距離の少なくとも1つに応じて、前記回避判定エリアの大きさ及び/又は形状を可変するように前記コンピュータを機能させるためのプログラム。
【請求項7】
請求項6に記載のプログラムであって、
前記可変手段が、少なくとも、前記プレーヤキャラクタの移動速度に応じて、前記回避判定エリアの前記プレーヤキャラクタの移動後方方向の長さを可変するように前記コンピュータを機能させるためのプログラム。
【請求項8】
請求項1〜7の何れか一項に記載のプログラムであって、
前記回避判定エリアの表示/非表示を制御する判定エリア表示制御手段として前記コンピュータを更に機能させるためのプログラム。
【請求項9】
請求項1〜8の何れか一項に記載のプログラムであって、
前記回避判断手段が、前記阻害オブジェクトが前記回避判定エリアを通過した際の、前記回避判定エリア内での前記プレーヤキャラクタと前記阻害オブジェクトとの接近距離に応じて、回避の程度を判断するように前記コンピュータを機能させるためのプログラム。
【請求項10】
請求項1〜9の何れか一項に記載のプログラムであって、
前記回避判断手段が、前記阻害オブジェクトが前記回避判定エリアを通過した際の、前記プレーヤキャラクタと前記阻害オブジェクトとの相対速度に応じて、回避の程度を判断するように前記コンピュータを機能させるためのプログラム。
【請求項11】
請求項1〜10の何れか一項に記載のプログラムであって、
現在の移動状況に基づいて前記プレーヤキャラクタの予測軌道を算出する予測手段、
前記予測手段により算出された予測軌道に基づき、前記プレーヤキャラクタと前記阻害オブジェクトとの接触可能性を判断する接触可能性判断手段、
として前記コンピュータを更に機能させ、
前記後処理手段が、前記接触可能性判断手段により接触可能性有りと判断された後に前記回避判断手段により回避したと判断されたか否かに基づいて、前記所定の処理を実行するように前記コンピュータを機能させる、
ためのプログラム。
【請求項12】
請求項1〜11の何れか一項に記載のプログラムであって、
前記プレーヤキャラクタの静止時間に応じて、前記プレーヤキャラクタの周囲に近接エリアを設定する近接エリア設定手段、
前記プレーヤキャラクタと前記阻害オブジェクトとが接触せずに前記阻害オブジェクトが前記設定された近接エリアを通過したか否かを判断することで、前記プレーヤキャラクタが前記阻害オブジェクトと接触しそうであったか否かを判断する接触危険判断手段、
前記接触危険判断手段による判断結果に基づいて所定の処理を実行する手段、
として前記コンピュータを更に機能させるためのプログラム。
【請求項13】
請求項1〜11の何れか一項に記載のプログラムであって、
プレーヤの操作入力が無い状態の経過時間に応じて、前記プレーヤキャラクタの周囲に近接エリアを設定する近接エリア設定手段、
前記プレーヤキャラクタと前記阻害オブジェクトとが接触せずに前記阻害オブジェクトが前記設定された近接エリアを通過したか否かを判断することで、前記プレーヤキャラクタが前記阻害オブジェクトと接触しそうであったか否かを判断する接触危険判断手段、
前記接触危険判断手段による判断結果に基づいて所定の処理を実行する手段、
として前記コンピュータを更に機能させるためのプログラム。
【請求項14】
請求項5に記載のプログラムであって、
前記判定エリア設定手段が、前記プレーヤキャラクタに対する操作入力の履歴に基づいて、前記回避判定エリアを設定する場所を決定するように前記コンピュータを機能させ
前記判定エリア設定手段が、前記回避判定エリアの大きさ及び/又は形状を前記プレーヤキャラクタに対する操作入力の履歴に基づいて可変するように前記コンピュータを機能させる、
ためのプログラム。
【請求項15】
請求項1〜14の何れか一項に記載のプログラムを記憶したコンピュータ読み取り可能な情報記憶媒体。
【請求項16】
プレーヤの操作入力に従ってプレーヤキャラクタの移動を制御するプレーヤキャラクタ制御手段を備え、前記プレーヤキャラクタの移動を阻害する阻害オブジェクトに接触させずに前記プレーヤキャラクタを移動させて進行していくゲームを実行するゲーム装置であって、
前記プレーヤキャラクタの移動後方に回避判定エリアを設定する判定エリア設定手段、
前記プレーヤキャラクタと前記阻害オブジェクトとが接触せずに前記阻害オブジェクトが前記設定された回避判定エリアを通過したか否かを判断することで、前記プレーヤキャラクタが前記阻害オブジェクトを回避したか否かを判断する回避判断手段、
前記回避判断手段による判断結果に基づいて所定の処理を実行する後処理手段、
を更に備えることを特徴とするゲーム装置。
【請求項17】
プレーヤの操作入力に従ってプレーヤキャラクタの移動を制御するプレーヤキャラクタ制御手段を備え、前記プレーヤキャラクタの移動を阻害する阻害オブジェクトに接触させずに前記プレーヤキャラクタを移動させて進行していくゲームを実行するゲーム装置であって、
前記操作入力の履歴に基づいて前記プレーヤキャラクタの移動後方に回避判定エリアを設定する判定エリア設定手段、
前記プレーヤキャラクタと前記阻害オブジェクトとが接触せずに前記阻害オブジェクトが前記設定された回避判定エリアを通過したか否かを判断することで、前記プレーヤキャラクタが前記阻害オブジェクトを回避したか否かを判断する回避判断手段、
前記回避判断手段による判断結果に基づいて所定の処理を実行する後処理手段、
を更に備えることを特徴とするゲーム装置。

【図1】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図9】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図2】
image rotate

【図3】
image rotate

【図8】
image rotate

【図10】
image rotate