説明

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

【課題】シューティングゲームの興趣性を高めること。
【解決手段】例えば一人称視点のガンシューティングゲームにおいて、プレーヤが射撃操作を行うと、プレーヤキャラクタの銃12から弾丸14が発射される。発射された弾丸14が敵キャラクタ20に命中すると、該敵キャラクタ20に所定のダメージが与えられるとともに、この弾丸14が跳ね返り(跳弾)、近傍の他のオブジェクト(木箱32)に命中し、このダメージによって破壊される。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、コンピュータに、複数のオブジェクトが配置された三次元仮想空間の画像を生成させるためのプログラム等に関する。
【背景技術】
【0002】
従来より、敵キャラクタを射撃によって攻撃するガンシューシューティングや、飛行機であるプレーヤ機を操縦し、ミサイルや機関砲を発射して敵キャラクタである敵機を攻撃するフライトシューティング等のゲームが知られている。こうしたゲームにおいて、発射した攻撃体である弾が攻撃対象である移動体にヒット(命中)した場合のヒット処理として、ヒットした弾のオブジェクトを跳ね返り専用(跳弾用)のオブジェクトに変更することで、ヒットした弾が跳ね返るいわゆる「跳弾」の演出を行う技術が知られている(例えば、特許文献1参照)。
【特許文献1】特開平09−81780号公報
【発明の開示】
【発明が解決しようとする課題】
【0003】
ところで、シューティングゲームには、現れてくる敵キャラクタを次々と射撃によって倒していく点に、他のゲームとは異なる興趣がある。しかしながら、従来のシューティングゲームでは、射撃の対象となるのは敵キャラクタであり、例えば一般人といった敵キャラクタ以外のキャラクタを撃たないように上手く敵キャラクタのみを狙って倒すことに主眼がおかれている。つまり、制限時間内にどれだけ多くの敵キャラクタを倒せたか、或いは、どれだけ短い時間で全ての敵キャラクタを倒せたかといった反射神経を競うゲームが普通になってしまっており、「射撃による爽快感」「射撃による派手な演出」といった面白さに欠ける面があった。本発明はこうした事情に鑑みてなされたものであり、その目的とするところは、射撃の興趣性を高めることである。
【課題を解決するための手段】
【0004】
上記課題を解決するための第1の発明は、
コンピュータに、複数のオブジェクトが配置された三次元仮想空間の画像を生成させるためのプログラムであって、
前記三次元仮想空間を飛翔する攻撃体が前記複数のオブジェクトの何れかと接触したことを検知する検知手段、
前記検知手段により接触したと検知されたオブジェクトと離隔した位置に存在し、相対位置関係が所定条件を満たす他のオブジェクトの中からダメージを付与するオブジェクトを選択する選択手段、
前記選択手段により選択されたオブジェクトにダメージを付与するダメージ付与手段、
として前記コンピュータを機能させるためのプログラムである。
【0005】
また、他の発明として、
複数のオブジェクトが配置された三次元仮想空間の画像を生成して所定のゲームを実行するゲーム装置であって、
前記三次元仮想空間を飛翔する攻撃体をプレーヤの操作入力に従って発射する発射手段と、
前記攻撃体が前記複数のオブジェクトの何れかと接触したことを検知する検知手段と、
前記検知手段により接触したと検知されたオブジェクトと離隔した位置に存在し、相対位置関係が所定条件を満たす他のオブジェクトの中からダメージを付与するオブジェクトを選択する選択手段と、
前記選択手段により選択されたオブジェクトにダメージを付与するダメージ付与手段と、
を備えたゲーム装置を構成しても良い。
【0006】
この第1の発明等によれば、飛翔する攻撃体が複数のオブジェクトの何れかと接触すると、接触したオブジェクトと離隔した位置に存在し、相対位置関係が所定条件を満たす他のオブジェクトが選択され、この選択された他のオブジェクトにもダメージが付与される。つまり、攻撃体が接触したオブジェクトと隔離した位置に存在する他のオブジェクトにも副次的にダメージが与えられる。例えばガンシューティングゲームの場合、飛翔する攻撃体を銃から発射される弾丸(ミサイル等)とすると、この弾丸に接触したオブジェクトのほか、離れた位置にある他のオブジェクトにもダメージを与えることができる。これにより、あたかもオブジェクトに命中(接触)した弾丸が跳ね返って近傍の他のオブジェクトに命中してダメージを与えたような、いわゆる「跳弾」の演出が実現される。
【0007】
第2の発明として、第1の発明のプログラムであって、
前記選択手段により選択されたオブジェクトが破壊可能物であった場合に、前記ダメージ付与手段が当該オブジェクトへのダメージ付与として当該オブジェクトを破壊するように前記コンピュータを機能させるためのプログラムを構成しても良い。
【0008】
この第2の発明によれば、ダメージを付与するとして選択された他のオブジェクトが破壊可能物であった場合、当該他のオブジェクトへのダメージ付与として当該他のオブジェクトが破壊される。これにより、例えばガンシューティングゲームといったシューティングゲームの場合、射撃の対象のオブジェクトのみならず、跳弾によって近傍の他のオブジェクトにもダメージが与えられて破壊されるといった派手な破壊の演出が実現される。これにより、ゲームの興趣を向上させることができる。
【0009】
第3の発明として、第2の発明のプログラムであって、
前記オブジェクトにはダメージ許容量が関連付けられており、
前記オブジェクトそれぞれのダメージ許容残量を、当該オブジェクトにダメージが付与される毎に減算して管理する管理手段として前記コンピュータを機能させ、
前記第ダメージ付与手段が、前記選択手段により選択されたオブジェクトのダメージ許容残量が所定のダメージ量以下の場合に当該オブジェクトを破壊するように前記コンピュータを機能させるためのプログラムを構成しても良い。
【0010】
この第3の発明によれば、ダメージを付与するとして選択された他のオブジェクトは、そのダメージ許容残量が所定のダメージ量以下の場合に破壊される。ダメージ許容残量は、ダメージが付与される毎に減算される。つまり、オブジェクトは1回のダメージ付与によって直ぐに破壊されるのではなく、例えば複数回のダメージ付与によって破壊されるといった演出が可能となる。
【0011】
第4の発明として、第3の発明のプログラムであって、
前記選択手段により選択されたオブジェクトに付与するダメージ量を決定するダメージ量決定手段として前記コンピュータを機能させ、
前記ダメージ付与手段が、前記選択手段により選択されたオブジェクトのダメージ許容残量が前記ダメージ量決定手段により決定されたダメージ量以下の場合に当該オブジェクトを破壊するように前記コンピュータを機能させるためのプログラムを構成しても良い。
【0012】
この第4の発明によれば、ダメージを付与するとして選択された他のオブジェクトに付与するダメージ量が決定され、該他のオブジェクトのダメージ許容残量が決定されたダメージ量以下の場合に、当該他のオブジェクトが破壊される。つまり、オブジェクトに付与するダメージ量を可変することが可能となる。
【0013】
第5の発明として、第4の発明のプログラムであって、
前記選択手段に対して、先に選択したオブジェクトと離隔した位置に存在し、当該先に選択したオブジェクトとの相対位置関係が所定条件を満たす当該先に選択したオブジェクト以外のオブジェクトを、次にダメージを付与するオブジェクトとして選択させる処理を連鎖的に実行させるとともに、連鎖的に選択される都度、前記ダメージ量決定手段及び前記ダメージ付与手段を機能させる連鎖実行制御手段として前記コンピュータを更に機能させるためのプログラムを構成しても良い。
【0014】
この第5の発明によれば、ダメージを付与するオブジェクトの選択、及び、この選択されたオブジェクトへのダメージの付与が連鎖的に行われる。つまり、攻撃体がオブジェクトに接触すると、複数のオブジェクトに対して副次的且つ連鎖的にダメージが付与される。これにより、オブジェクトに命中(接触)した弾丸が次々と跳ね返って近傍の他のオブジェクトに命中してダメージを与えたような、連鎖的な跳弾の演出が可能となる。
【0015】
第6の発明として、第5の発明のプログラムであって、
前記ダメージ量決定手段が、前記連鎖実行制御手段の制御によって連鎖的に選択されたオブジェクトに付与するダメージ量を、連鎖の順に徐々に低減させて決定するように前記コンピュータを更に機能させるためのプログラムを構成しても良い。
【0016】
この第6の発明によれば、ダメージを付与するとして選択されたオブジェクトに付与されるダメージ量が、連鎖の順に徐々に低減される。これにより、例えば跳弾の演出の場合、連鎖的な跳ね返りを繰り返す毎に徐々に跳弾の威力が弱まっていくような演出が可能となる、
【0017】
第7の発明として、第5又は第6の発明のプログラムであって、
前記連鎖実行制御手段が、選択したオブジェクトにダメージが付与された後のダメージ許容残量に基づいて連鎖的な選択を停止するように前記コンピュータを機能させるためのプログラムを構成しても良い。
【0018】
この第7の発明によれば、オブジェクトにダメージが付与された後のダメージ許容残量に基づいて、ダメージを付与するオブジェクトの連鎖的な選択が停止される。これにより、例えばダメージ許容残量が所定のダメージ量以下の場合に連鎖的な選択を停止することで、副次的にダメージを付与されたオブジェクトが破壊された時点で、副次的且つ連鎖的なダメージの付与が停止されることになる。
【0019】
第8の発明として、第2〜第7の何れかの発明のプログラムであって、
前記ダメージ付与手段が、前記検知手段により接触したと検知されたオブジェクトから、前記選択手段により選択されたオブジェクトに向かう方向を参照して、当該オブジェクトの破壊エフェクト処理を実行する手段を有するように前記コンピュータを機能させるためのプログラムを構成しても良い。
【0020】
この第8の発明によれば、攻撃体が接触したオブジェクトから選択された他のオブジェクトに向かう方向を参照して、当該他のオブジェクトの破壊エフェクト処理が実行される。これにより、他のオブジェクトが、例えば跳弾を受けた方向から破壊されるといった、より自然な破壊の演出が実現される。
【0021】
第9の発明として、第1〜第8の何れかの発明のプログラムであって、
前記選択手段が、前記検知手段により接触したと検知されたオブジェクトを基点とする所定形状の検索範囲を設定する検索範囲設定手段を有し、前記検索範囲内に位置する他のオブジェクトを選択するように前記コンピュータを機能させるためのプログラムを構成しても良い。
【0022】
この第9の発明によれば、攻撃体に接触したオブジェクトを基点とする所定形状の検索範囲が設定され、この検索範囲内に位置する他のオブジェクトが選択される。検索範囲は、攻撃体がオブジェクトに接触した際に副次的にダメージを付与し得る範囲に相当する。つまり、攻撃体が接触したオブジェクトからある程度近い位置に存在するオブジェクトに副次的にダメージが付与されることになり、遠いオブジェクトには副次的にダメージが付与されない。これにより、例えば跳弾の演出の場合、攻撃体である弾丸がオブジェクトに接触して跳ね返り、近傍の他のオブジェクトにダメージを与えるといった自然な演出が可能となる。
【0023】
第10の発明として、第9の発明のプログラムであって、
前記三次元仮想空間に仮想カメラを配置するカメラ配置手段、
前記仮想カメラから見た前記三次元仮想空間の画像を生成する画像生成手段、
として前記コンピュータを機能させ、
前記検索範囲設定手段が、前記検索範囲を前記基点を内在する筒状の形状とし、前記仮想カメラの視線方向に応じて向きを可変させて設定するように前記コンピュータを機能させるためのプログラムを構成しても良い。
【0024】
この第10の発明によれば、検索範囲が、攻撃体に接触したオブジェクトの基点を内在した筒状の形状とされ、仮想カメラの視線方向に応じた向きに設定される。仮想カメラの視線方向が攻撃体に接触したオブジェクトの方を向いているとした場合、この仮想カメラの視野内に存在するオブジェクト、すなわち仮想カメラをもとに生成される画像中のオブジェクトに対して、副次的にダメージが付与され得ることになる。従って、生成される画像は、攻撃体のオブジェクトへの接触にとって、他のオブジェクトにも副次的にダメージが付与されている様子が表示された画像となる。
【0025】
第11の発明として、第9の発明のプログラムであって、
前記検知手段が、前記攻撃体が接触したオブジェクトの部位を検知する接触部位検知手段を有し、
前記検索範囲設定手段が、前記接触部位検知手段により検知された部位に応じて前記検索範囲を可変に設定する、
ように前記コンピュータを機能させるためのプログラムを構成しても良い。
【0026】
この第11の発明によれば、攻撃体が接触したオブジェクトの部位に応じて検索範囲が可変に設定される。例えば攻撃体が接触したオブジェクトの部位の近傍に検索範囲を設定することで、接触した部位の近傍に存在する他のオブジェクトにダメージを付与することが可能となる。これにより、例えば跳弾の演出の場合、攻撃体である弾丸がオブジェクトに接触して跳ね返り、この接触した部位の近傍に存在する他のオブジェクトにダメージを与えるという自然な演出が可能となる。
【0027】
第12の発明として、第9の発明のプログラムであって、
前記検知手段が、前記攻撃体が接触した際の飛翔方向を検知する飛翔方向検知手段を有し、
前記検索範囲設定手段が、前記飛翔方向検知手段により検知された飛翔方向に応じて前記検索範囲を可変に設定する、
ように前記コンピュータを機能させるためのプログラムを構成しても良い。
【0028】
飛翔方向とは、攻撃体が飛翔して来た方向である。この第12の発明によれば、攻撃体が接触した際の飛翔方向に応じて検索範囲が可変に設定される。例えば飛翔方向を含む所定の角度範囲を検索範囲として設定することで、飛翔方向との成す角度が小さい角度方向に存在する他のオブジェクトにダメージを付与することが可能となる。これにより、例えば跳弾の演出の場合、オブジェクトに接触した攻撃体である弾丸がその飛翔方向と近い方向に跳ね返り、跳ね返った方向に存在する他のオブジェクトにダメージを付与するといった自然な演出が可能となる。
【0029】
第13の発明として、第9〜第12の何れかの発明のプログラムであって、
前記攻撃体として複数種類設定されており、
前記検索範囲設定手段が、前記検知手段により前記オブジェクトに接触したと検知された攻撃体の種類に応じて、前記検索範囲の大きさを可変に設定するように前記コンピュータを機能させるためのプログラムを構成しても良い。
【0030】
この第13の発明によれば、オブジェクトに接触した攻撃体の種類に応じて検索範囲の大きさが可変される。これにより、攻撃体の種類によって、その近傍のオブジェクトのみに副次的にダメージを付与したり、或いは、より遠くのオブジェクトにも副次的にダメージを付与するといったように、攻撃体の種類による威力の違いを表現することが可能となる。
【0031】
第14の発明として、第9〜第13の何れかの発明のプログラムであって、
前記攻撃体を発射可能なキャラクタを前記三次元仮想空間に配置する発射可能キャラクタ配置手段として前記コンピュータを機能させ、
前記検索範囲設定手段が、前記検知手段により前記オブジェクトに接触したと検知された攻撃体を発射したキャラクタに応じて、前記検索範囲の大きさを可変に設定するように前記コンピュータを機能させるためのプログラムを構成しても良い。
【0032】
この第14の発明によれば、オブジェクトに接触した攻撃体を発射したキャラクタに応じて検索範囲の大きさが可変される。これにより、キャラクタによる攻撃体の発射の威力の違いを表現するといったことが可能となる。
【0033】
第15の発明として、第9〜第14の何れかの発明のプログラムであって、
前記攻撃体を所定の発射位置から発射させる発射制御手段として前記コンピュータを機能させ、
前記検索範囲設定手段が、前記発射位置から前記検知手段により検知された接触位置までの距離に応じて、前記検索範囲の大きさを可変に設定するように前記コンピュータを機能させるためのプログラムを構成しても良い。
【0034】
この第15の発明によれば、攻撃体の発射位置からオブジェクトの接触位置までの距離に応じて、検索範囲の大きさが可変に設定される。これにより、例えば距離が短い場合には検索範囲を広くしてより遠くのオブジェクトに副次的にダメージを付与可能としたり、逆に、距離が長い場合には検索範囲を狭くして近傍のオブジェクトのみに副次的にダメージを付与するといったように、攻撃体の威力(副次的にダメージを与える距離範囲)が発射位置からの距離によって変化することを表現できる。
【0035】
第16の発明として、第9〜第15の何れかの発明のプログラムであって、
前記選択手段が、前記検索範囲内に位置し、前記接触したと検知されたオブジェクトからの距離が短い順に所定数のオブジェクトを検索するように前記コンピュータを機能させるためのプログラムを構成しても良い。
【0036】
この第16の発明によれば、検索範囲内に位置し、攻撃体に接触したオブジェクトからの距離が短い順に所定数のオブジェクトが検索される。つまり、攻撃体が接触したオブジェクトに近いオブジェクトから順に、副次的にダメージが付与される。これにより、例えば跳弾の演出を行う場合、オブジェクトに接触し跳ね返った攻撃体である弾丸は、より近いオブジェクトに優先してダメージを付与するといった、自然な演出が可能となる。
【0037】
第17の発明として、第16の発明のプログラムであって、
前記選択手段が、前記検知手段により前記オブジェクトに接触したと検知された攻撃体の種類に応じて、検索するオブジェクトの数を可変するように前記コンピュータを機能させるためのプログラムを構成しても良い。
【0038】
この第17の発明によれば、オブジェクトに接触した攻撃体の種類に応じて、検索される他のオブジェクトの数が可変される。つまり、オブジェクトに接触した攻撃体の種類に応じて、副次的にダメージが付与される他のオブジェクトの数が可変される。これにより、攻撃体の種類に応じて、1つのオブジェクトのみにダメージを付与したり、或いは、複数のオブジェクトにダメージを付与したりといった、攻撃体の種類に応じた威力の違いを表現することが可能となる。
【0039】
第18の発明として、第16又は第17の発明のプログラムであって、
前記攻撃体を発射可能なキャラクタを複数前記三次元仮想空間に配置する発射可能キャラクタ配置手段として前記コンピュータを機能させ、
前記選択手段が、前記検知手段により前記オブジェクトに接触したと検知された攻撃体を発射したキャラクタに応じて、選択するオブジェクトの数を可変するように前記コンピュータを機能させるためのプログラムを構成しても良い。
【0040】
この第18の発明によれば、オブジェクトに接触した攻撃体を発射したキャラクタに応じて、ダメージを付与するとして選択されるオブジェクトの数が可変される。これにより、キャラクタによる攻撃体の発射の威力の違いを表現するといったことが可能となる
【0041】
第19の発明は、第1〜第18の何れかの発明のプログラムを記憶するコンピュータ読み取り可能な情報記憶媒体である。ここでいう「情報記憶媒体」とは、例えば磁気ディスクや光学ディスク、ICメモリなどを含む。従って、この第19の発明によれば、第1〜第18の何れか一つの発明のプログラムをコンピュータに読み取らせて実行させることによって、第1〜18の何れかの発明と同様の効果を奏することができる。
【発明を実施するための最良の形態】
【0042】
以下、図面を参照して本発明の好適な実施形態を説明する。なお、以下では、アーケード用のゲーム装置であって、一人称視点のガンシューティングゲームをプレイ可能なゲーム装置に本発明を適用した場合を説明するが、本発明の適用可能な実施形態がこれに限定されるものではない。
【0043】
[ゲーム装置の構成]
図1は、本実施形態におけるゲーム装置1000の概観例を示す図である。このゲーム装置1000は、例えばゲームセンタやアミューズメント施設等に設置されるアーケード用(業務用)であり、プレーヤの身長よりもやや高い程度の高さの筐体の正面に、ゲーム画面を表示するディスプレイ1102と、ゲーム音声を出力するスピーカ1104と、ゲーム対価である硬貨(コイン)を投入する硬貨投入口1106と、硬貨投入口1106から投入された硬貨を検知する硬貨検知センサ1108と、ケーブル1112によって筐体に接続されてプレーヤがゲーム操作を入力するガン型コントローラ1110とを備えて構成される。また、筐体内部には制御ユニット1120が内蔵されている。
【0044】
ガン型コントローラ1110は、拳銃やライフルといった銃を模した形状を成しており、その銃口付近に内蔵するレンズやフォトセンサによってディスプレイ1102上の照準位置を光学的に検出し、検出した位置座標を制御ユニット1120に出力する。また、ガン型コントローラ1110は、トリガ(引き金)を有し、このトリガが引かれているか否かを検出して、これを示すトリガ信号を制御ユニット1120に出力する。なお、ガン型コントローラ1110は、銃口方向の位置であるディスプレイ1102上の照準位置が検出可能であり、トリガ信号を制御ユニット1120に出力可能であれば、他の公知の構成によることとしても良い。
【0045】
制御ユニット1120には、CPU(Central Processing Unit)やGPU(Graphics Processing Unit)、DSP(Digital Signal Processor)などの各種マイクロプロセッサ、ASIC(Application Specific Integrated Circuit)、VRAMやRAM、フラッシュメモリ1122等の各種ICメモリのほか、通信回線Nに接続するための通信装置1124、ディスプレイ1102のドライバ回路、スピーカ1104へ音声信号を出力するためのアンプ回路、ガン型コントローラ1110や硬貨検知センサ1108との信号入出力回路といった所謂I/F回路(インターフェース回路)が搭載されている。また、これら制御ユニット1120に搭載されている各要素は、それぞれバス回路を介して電気的に接続され、データの読み書きや信号の送受信が可能に接続されている。
【0046】
フラッシュメモリ1122には、ゲームプレイに係る各種演算処理を実行するために必要なプログラムや各種設定データが記憶されている。制御ユニット1120は、硬貨検知センサ1108で所定額の硬貨の投入を検知したら、フラッシュメモリ1122からプログラムやデータを読み出して、搭載するICメモリにこれらを一時記憶する。そして、読み出したプログラムを実行して、ゲーム画像を生成してディスプレイ1102に表示させるとともに、ゲーム音を生成してスピーカ1104から放音させる。
【0047】
プレーヤは、筐体正面にディスプレイ1102に対向して立ち、ディスプレイ1102を狙うようにしてガン型コントローラ1110を構える。ディスプレイ1102に表示されるゲーム画面内には、ガン型コントローラ1110で狙っている位置(照準位置)を示す照準2が表示されるので、ゲーム画面内の任意の標的に照準2を合わせるようにしてガン型コントローラ1110を構え、トリガを引いて射撃操作をする等してシューティングゲームを楽しむ。
【0048】
なお、本実施形態では、必要なプログラムや各種設定データをフラッシュメモリ1122から読み出す構成としているが、通信装置1124でインターネットやLAN(Local Area Network)、WAN(Wide Area Network)などの有線/無線の通信回線Nに接続して外部の装置からダウンロードする構成としても良い。
【0049】
[ゲーム概要]
本実施形態のゲーム装置1000では、プレーヤキャラクタの視点(一人称視点)でゲーム世界を見ているかのようなゲーム画面を見ながらプレーヤキャラクタを操作し、銃などの武器で敵キャラクタを攻撃しながらゲームを進める、いわゆる「一人称シューティングゲーム」が実行される。
【0050】
図2は、本実施形態におけるゲーム画面の一例を示す図である。本実施形態のゲームでは、三次元仮想空間に地表や床面、木箱32、建物34といったオブジェクトが配置されて戦場となるゲーム空間が形成され、このゲーム空間内に、プレーヤキャラクタ10やNPC(ノン・プレーヤキャラクタ)である敵キャラクタ20等のキャラクタオブジェクトが配置される。
【0051】
敵キャラクタ20は、その出現位置や動作の内容が定められており、所定のタイミングでプレーヤキャラクタ10に攻撃しつつ接近するように自動的に動作制御される。
【0052】
一方、プレーヤキャラクタ10は、ゲーム空間内を予め定められたコースを辿りつつ、予め決められている襲撃ポイント(位置)で敵キャラクタ20の方向に視線を向けるように、自動的に移動及び視線方向が制御される。また、プレーヤキャラクタ10は、図3に示すように、その視点に一致するように仮想カメラCMが設定されている。そして、この仮想カメラCMからゲーム空間を見たゲーム空間画像が三次元CG画像として生成され、このゲーム空間画像に、プレーヤキャラクタ10のヒットポイント(体力値)を示すヒットポイントゲージ4や、装備している銃12の残弾数を示す弾数ゲージ6、視線の方向を示す方位表示8、ガン型コントローラ1110で狙っている位置を示す照準2等の各種情報表示が合成されることでゲーム画面が生成され、ディスプレイ1102に表示される。つまり、いわゆる一人称視点のゲーム画面が生成・表示される。
【0053】
プレーヤは、ゲーム画面に表示された敵キャラクタ20に照準2を合わせるようにガン型コントローラ1110の銃口の向きを変えて射撃方向を調整し、トリガを引いて射撃操作を行うことで、プレーヤキャラクタ10が装備する銃12から弾丸が発射されて当該敵キャラクタ20を射撃して攻撃することができる。
【0054】
本実施形態では、公知のガンシューティングゲームと同様に、プレーヤキャラクタ10が敵キャラクタ20の攻撃を受けるとプレーヤキャラクタ10のヒットポイントが減算される。このヒットポイントが「0」になる前に、所定のゴール地点に到達できればゲームクリアとなり、到達できなければゲームオーバーとなる。
【0055】
[跳弾の原理]
プレーヤの射撃操作によってプレーヤキャラクタ10の銃12から発射された攻撃体である弾丸が敵キャラクタ20に命中(接触)すると、該敵キャラクタ20に所定のダメージが与えられ、与えたダメージが所定量に達すると該敵キャラクタ20を倒すことができる。すなわち、敵キャラクタ20のヒットポイントが与えられたダメージに応じて減算され、このヒットポイントが「0」になると、該敵キャラクタ20を倒したことになる。もとのヒットポイントからの減少量がダメージ量に相当し、ダメージ許容量がもとのヒットポイントに相当すると言える。
【0056】
更に、本実施形態では、弾丸が敵キャラクタ20に命中すると、この弾丸が跳ね返り近傍の他のオブジェクトにダメージを与える、いわゆる「跳弾」が発生する。図4は、跳弾が発生しているゲーム画面の一例を示す図である。同図(a)に示すように、敵キャラクタ20に照準2を合わせてガン型コントローラ1110のトリガを引いて射撃操作を行うと、プレーヤキャラクタ10の銃12から弾丸14が発射され、発射された弾丸14は敵キャラクタ20に向かって進む(飛翔する)。そして、この弾丸14が敵キャラクタ20に命中すると、該敵キャラクタ20にはこの弾丸14の命中による所定のダメージが与えられる。それとともに、同図(b)に示すように、敵キャラクタ20に命中した弾丸14が跳ね返り、同図(c)に示すように、この跳ね返った弾丸14が近傍の他のオブジェクトである木箱32に命中し、このダメージによって木箱32が破壊されている。なお、同図では弾丸14が飛ぶ様子が表示されているが、弾丸14の飛ぶスピードが速いので画面上では表示されないことにしても良い。更に、弾丸14が命中した際の演出(被弾演出)として、破壊された様子が表示されることに加えて、命中した他のオブジェクトの種類に応じた破壊音が出力されたり、ガン型コントローラ1110が振動することにしても良い。
【0057】
ここで、跳ね返った弾丸14によるダメージが与えられるオブジェクト(以下、「跳弾対象オブジェクト」という)は、予め破壊可能として定められたオブジェクトに限られ、ゲーム空間を構成する全てのオブジェクトが跳弾の対象となるわけではない。例えば、ゲーム空間を構成するオブジェクトのうち、キャラクタがその上を移動する地表や床面といった、破壊されるとゲームステージの構造そのものを変化させてしまうようなオブジェクトは破壊不可能オブジェクトとして跳弾の対象とならず、これらを除く木箱32や建物34といったオブジェクトが、破壊可能オブジェクトであって跳弾の対象となる。また、プレーヤキャラクタ10や他の敵キャラクタ20といったキャラクタも跳弾の対象とはならない。これは、本実施形態の「跳弾」は、射撃によってより多くのオブジェクトが次々と破壊されるといったガンシューティングゲームの醍醐味を楽しむための演出だからである。なお、破壊可能オブジェクトは、跳弾のみならず、発射された弾丸14が直接命中した場合にも、同様にダメージが与えられて破壊され得る。
【0058】
跳弾対象オブジェクトは、次のように決められる。先ず、図5に示すように、弾丸14が命中した敵キャラクタ20の位置を基準とした跳弾対象範囲40が設定される。同図(a)は、ゲーム空間を上方から見た図であり、同図(b)は、ゲーム空間を水平方向から見た図である。同図に示すように、弾丸14が命中した敵キャラクタ20の位置(代表点)を中心とする球形状の跳弾対象範囲40が設定される。この跳弾対象範囲40である球形状の半径Rは、プレーヤキャラクタ10の銃12の種類に応じて決まる。
【0059】
この跳弾対象範囲40内の破壊可能オブジェクトのうち、敵キャラクタ20に最も近いオブジェクトが跳弾対象オブジェクトとされる。同図では、跳弾対象範囲40内には、破壊可能オブジェクトとして3つの木箱32a〜32cが配置されている。そして、木箱32a〜32cそれぞれと敵キャラクタ20との間の距離r1〜r3の大小関係は、r2<r1<r3、である。従って、この場合、木箱32bが跳弾対象オブジェクトとされる。
【0060】
そして、この跳弾対象オブジェクトに跳弾によるダメージが与えられたことを表す被弾演出が行われる。被弾演出としては、例えば図4(c)に示したように、被弾対象オブジェクトである木箱32に、弾丸14が命中(被弾)したことを表す閃光や煙、飛び散る破片といったエフェクトが表示されるとともに、被弾対象オブジェクトが、その一部/全部が破壊された後のオブジェクトである差替モデルに置き換えられる。
【0061】
ところで、破壊可能オブジェクトは、当該オブジェクトを分割して成る1又は複数のパーツから構成される。そして、破壊可能オブジェクトへの被弾は該オブジェクトを構成するパーツを単位として判定され、判定されたパーツに該被弾によるダメージが与えられる。すなわち、破壊可能オブジェクトは、1回の被弾によって、該オブジェクトを構成するパーツのうちの1つのパーツにダメージが与えられることになる。
【0062】
例えば、木箱32といった比較的小さい破壊可能オブジェクトは1つのパーツで構成されるが、建物34といった比較的大きな破壊可能オブジェクトは、1回の被弾でその全体が破壊されることは不自然であるため、複数のパーツから構成される。パーツは、破壊可能オブジェクトを構成する部材それぞれを、1回の被弾で破壊されるのに適当な大きさ(例えば、50センチ四方)に分割したものとして形成される。
【0063】
図6は、建物34を構成するパーツの一例を示す図である。同図に示す建物34は、主に入口扉34aや窓34b、壁34cの3種類の部材によって構成される。これらの部材のうち、窓34bはそれぞれが1つのパーツとなり、入口扉34aは2枚の扉それぞれが1つのパーツとなっている。また、壁34cは、図中点線で示すように適当な大きさに分割されてそれぞれが1つのパーツとなっている、
【0064】
そして、跳弾の対象は、この破壊対象オブジェクトを構成するパーツ単位で決められる。つまり、ゲーム空間内の各破壊対象オブジェクトを構成する各パーツであって、跳弾対象範囲40内のパーツのうち、弾丸14が命中した(被弾した)敵キャラクタ20の位置から最も近いパーツが、被弾対象のパーツ(跳弾対象パーツ)となる。
【0065】
また、破壊対象オブジェクトを構成する各パーツに着目すると、1回の被弾で完全に破壊(全壊)されるものと、複数回の被弾によって段階的に破壊されるものとに分けられる。具体的には、各パーツには、全壊に要する被弾回数である被弾許容回数(ダメージ許容量)が定められており、被弾回数(ダメージ許容残量)が定められた被弾許容回数に達すると全壊となる。この被弾許容回数は、被弾による破壊され易さを表し、パーツの種別や素材に応じて定められる。なお、全壊したパーツは、以降はゲーム空間に存在しないものとして扱われる。
【0066】
つまり、被弾許容回数が1回のパーツは1回の被弾で完全に破壊される。この場合の被弾演出としては、該パーツの破片が飛び散るようなエフェクトが表示されるとともに、該パーツがゲーム空間から消去される。一方、被弾許容回数が複数回(2回以上)のパーツは、被弾回数が被弾許容回数に達した時点で完全に破壊される。この場合の被弾演出としては、被弾毎に、該パーツの破片が飛び散るようなエフェクトが表示されるとともに、該パーツが部分的に破壊された形状の差し替えモデルに置き換えられる。そして、被弾回数が被弾許容回数に達した場合には、ここまでの被弾と同様にエフェクトが表示されるとともに、配置されていた差し替えモデルがゲーム空間から消去される。
【0067】
例えば、図7に示す木箱32は被弾許容回数が「2」である。この場合、1回目の被弾では、被弾演出として、木箱32の破片が飛び散るエフェクト52が表示されるとともに、該木箱32がその縦半分が破壊された形状の差替モデル54に置き換えられ、木箱32の半分が破壊された演出がなされる。そして、2回目の被弾では、被弾演出として、1回目と同様に木箱32の破片が飛び散るエフェクト52が表示されるとともに、置き換えられた差替モデル54が消去されて、木箱32が完全に破壊された演出がなされる。
【0068】
また、被弾対象オブジェクトが被弾された側から破壊される様子を表現するため、差替モデル54は、その元のオブジェクトの形状に対して破壊された部分が跳弾方向に対向するように向きが調整されて配置される。跳弾方向は、弾丸が命中した敵キャラクタ20から跳弾対象パーツに向かう方向として定められる。
【0069】
例えば、図7に示した木箱32の場合、1回目の被弾の際には、差替モデル54として、元の木箱32の縦半分が破壊された形状のオブジェクトに置き換えられる。また、跳弾方向は、図中右から左に向かう方向(X軸負方向)である。従って、差替モデル54は、破壊部分を図中右方向(X軸正方向)に向けて配置され、これにより、右方向からの跳弾によって木箱32の右半分(X軸正方向側の縦半分)が破壊された様子が表現されている。
【0070】
[機能構成]
図8は、ゲーム装置1000の機能構成を示すブロック図である。同図によれば、ゲーム装置1000は、機能的には、操作入力部100と、処理部200と、画像表示部300と、音出力部400と、通信部500と、記憶部600とを備えて構成される。
【0071】
操作入力部100は、プレーヤによる操作入力を受け付け、操作に応じた操作信号を処理部200に出力する。この機能は、例えばボタンスイッチやジョイスティック、タッチパッド、トラックボール、2軸以上の検出軸を有する多軸型加速度センサ、検出軸を違えて組み合わされた単方向型傾斜センサユニット、基準位置からのずれを撮影するビデオカメラ等によって実現される。図1では、ガン型コントローラ1110がこれに該当する。
【0072】
処理部200は、記憶部600から読み出したプログラムやデータ、操作入力部100から入力された操作信号等に基づいて、ゲーム装置1000の全体制御やゲーム進行、画像生成等の各種演算処理を行う。この機能は、例えばCPUやGPU等のマイクロプロセッサ、ASIC(特定用途向け集積回路)、ICメモリ等によって実現される。図1では、制御ユニット1120がこれに該当する。また、処理部200は、ゲーム演算部210と、画像生成部230と、音生成部240とを有する。
【0073】
ゲーム演算部210は、ゲームの進行にかかる処理を実行する。例えば、三次元仮想空間に地表や床面、建物等のオブジェクト等を配置してゲーム空間を形成する処理や、このゲーム空間中にプレーヤキャラクタ10や敵キャラクタ20を配置する処理、キャラクタの移動や攻撃といった動作制御処理、攻撃等によるオブジェクト間(例えば、弾丸とキャラクタ間)のヒット判定処理、物理演算処理、ゲーム結果の算出処理といった各種の演算処理が含まれる。また、本実施形態では、ゲーム演算部210は、照準位置判定部211と、プレーヤキャラ制御部212と、敵キャラ制御部213と、射撃時制御部214とを有する。
【0074】
照準位置判定部211は、操作入力部100で指し示されているゲーム画面座標系における照準位置座標を決定する。つまり、ディスプレイ1102に向けられたガン型コントローラ1110の銃口が向けられた画面上の位置を求める。そして、画面上の位置から三次元仮想空間における照準位置を求め、プレーヤキャラクタ10が装備する銃12の銃口の向きとして決定する。この照準位置判定部211の機能は、公知のガンシューティングゲーム装置の技術で実現することができる。
【0075】
プレーヤキャラ制御部212は、プレーヤキャラクタ10の動作を制御する。具体的には、予め定められた所定のコースを所定のタイミングで移動するように移動制御するとともに、コースを移動中に所定のタイミングで敵キャラクタ20の襲撃方向を向くように視線方向を制御する。また、プレーヤによる射撃操作がなされた場合には、照準位置判定部211で求めた照準位置に向けて射撃をするように動作制御する。尚、本実施形態では、プレーヤキャラクタ10の移動は所定のコースを辿るように設定されているが、プレーヤが自在に移動可能な構成とする場合には、移動操作入力に応じてプレーヤキャラクタ10を移動させる制御も行うとすれば良い。
【0076】
敵キャラ制御部213は、敵キャラクタ20の出現・移動・攻撃・回避などの動作を自動制御する。なお、敵キャラ制御部213は、所定の思考ルーチンに従って自動的に動作を決定するいわゆる「AI制御」機能を含むとしても良い。
【0077】
射撃時制御部214は、プレーヤによる射撃操作がなされた場合に、該射撃操作に従った射撃結果としてのオブジェクトの被弾を制御する。具体的には、射撃操作がなされた時点での、照準位置判定部211によって求められた三次元仮想空間中の照準位置をもとに、プレーヤキャラクタ10の銃12から発射された弾丸14と、三次元仮想空間内の各オブジェクトとのヒット判定を行い、何れのオブジェクトに命中(接触)したかを判定する。
【0078】
ここで、プレーヤキャラクタ10及び敵キャラクタ20の現在位置のデータは、それぞれ、プレーヤキャラデータ621及び敵キャラデータ622に格納されている。このプレーヤキャラデータ621及び敵キャラデータ622は、該当するキャラクタの現在位置のほか、モデルデータやテクスチャデータ、モーションデータ、攻撃力等の能力値、思考ルーチン、ヒットポイント等のデータも含んでいる。
【0079】
また、ゲーム空間を構成する破壊対象オブジェクトの配置位置のデータは、破壊可能オブジェクトリスト624に格納されている。図9は、破壊可能オブジェクトリストのデータ構成の一例を示す図である。同図によれば、破壊可能オブジェクトリスト624は、ゲーム空間を形成する全ての破壊可能オブジェクトそれぞれについての破壊可能オブジェクトデータ625から構成される。各破壊可能オブジェクトデータ625は、該当する破壊可能オブジェクトのオブジェクトID625aと、種類625bと、構成するパーツについてのパーツデータ625cとを格納している。パーツデータ625cは、該破壊可能オブジェクトを構成するパーツ毎に、パーツID625dと、種別625eと、ゲーム空間における配置位置625fと、配置向き625gと、被弾回数625hと、全壊フラグ625iとを対応付けて格納している。被弾回数625hは、跳弾による被弾及び射撃による直接の被弾の両方を含めた回数である。この被弾回数625hが定められた被弾許容回数に達すると、対応するパーツは全壊されたとされる。全壊フラグ625iは、対応するパーツが全壊したか否かを示すフラグである。この全壊フラグ625iが全壊を表す「1」の場合、該パーツはゲーム空間に存在しないものとして扱われる。
【0080】
発射された弾丸が敵キャラクタ20に命中したと判定したならば、該敵キャラクタ20に所定のダメージを与える。例えば、該敵キャラクタのヒットポイントを、与えられたダメージに応じた量だけ減算する。具体的には、敵キャラクタ20に与えられるダメージ(すなわち、減算されるヒットポイント)は、命中した弾丸の種類(すなわち、武器12の種類)に応じて決まる。或いは、プレーヤキャラクタ10の種類及び武器12の種類の組み合わせて応じて決まることにしても良い、
【0081】
また、この射撃による「跳弾」を表現するための処理を行う。すなわち、先ず、跳弾数テーブル632に従って、跳弾させる弾丸14の数(跳弾数)Nを決定する。
【0082】
図10は、跳弾数テーブル632のデータ構成の一例を示す図である。同図によれば、跳弾数テーブル632は、プレーヤキャラクタ10が装備し得る銃の種類632aそれぞれについて、跳弾数632bと、発生確率632cとを対応付けて格納している。
跳弾数632bは、1回の射撃につき生じ得る跳弾の数である。マシンガンやライフルの場合には、1回の射撃につき1つの弾丸が発射されるため、跳弾数は「0」又は「1」となる。一方、散弾銃の場合には、1回の射撃につき多数の銃弾が飛び散るため、跳弾数は最大で複数(同図では、「0」〜「5」)となる。発生確率632cは、対応する跳弾数632bとなる確率である。銃の種類それぞれについての各跳弾数の発生確率の総和は「1.0」となる。
【0083】
つまり、プレーヤキャラクタ10が現在装備している銃の種類に対応する各跳弾数に対応付けられている発生確率に従って、跳弾数Nを決定する。そして、決定した跳弾数Nが「1」以上ならば跳弾が生じるとして跳弾演出を行い、跳弾数Nが「0」ならば跳弾が生じないとして跳弾演出を行わない。跳弾演出を行う場合には、先ず、跳弾対象範囲テーブル631に従って、弾丸14が命中した敵キャラクタ20の位置(代表点)に基づく跳弾対象範囲40を設定する。
【0084】
図11は、跳弾対象範囲テーブル631のデータ構成の一例を示す図である。同図によれば、跳弾対象範囲テーブル631は、銃の種類631aと、跳弾対象範囲40の大きさ631bとを対応付けて格納している。跳弾対象範囲の大きさ631bは、球形状の半径Rの値を格納しており、対応する銃の射撃の威力に応じて定められる。
【0085】
すなわち、弾丸14が命中した敵キャラクタ20の位置を中心とし、装備している銃12の種類に応じた半径Rの球形状の範囲を、跳弾対象範囲40として設定する。
【0086】
次いで、跳弾対象パーツを決定する。すなわち、三次元仮想空間内の各破壊可能オブジェクトを構成するパーツであって跳弾対象範囲40内のパーツのうちから、敵キャラクタ20から近い順に決定した跳弾数N個のパーツを選択し、跳弾対象パーツとする。すなわち、N個の跳弾対象パーツが選択されることになる。
【0087】
そして、被弾エフェクトデータ633に従って、決定した各跳弾対象パーツに対する被弾演出を行う。
【0088】
図12は、被弾エフェクトデータ633のデータ構成の一例を示す図である。同図によれば、被弾エフェクトデータ633は、破壊可能オブジェクトの種類毎に生成され、該当するオブジェクトの種類633aと、該オブジェクトを構成するパーツについてのパーツデータ633bとを格納している。パーツデータ633bは、該オブジェクトを構成する全てのパーツの種別633c毎に、被弾許容回数633dと、被弾回数633eと、エフェクトID633fと、差替モデルID633gとを対応付けて格納している。
【0089】
つまり、各跳弾対象パーツについて、該パーツが含まれる破壊可能オブジェクトの種類に対応する被弾エフェクトデータ633に従って、該パーツに対する被弾演出を行う。すなわち、被弾対象パーツの近傍に、該パーツの種別及び今回の被弾を含めた被弾回数に応じたエフェクト52を発生させるとともに、該パーツを対応する差替モデル54に置き換える。このとき、差替モデル54は、その破壊部分を跳弾方向に対向させるように配置する。跳弾方向は、射撃による弾丸が命中した敵キャラクタ20の位置から跳弾対象パーツの位置に向かう方向である。なお、被弾エフェクトデータ633において、被弾回数に対応する差替モデル54が定義されていない場合には、現在配置されているオブジェクト(跳弾対象パーツ、或いは、他の差替モデル54となる)を三次元仮想空間から消去する。
【0090】
ここで、被弾演出として、エフェクト52の発生及び差替モデル54への置き換えのほか、破壊音の出力や、例えば操作入力部に内蔵された振動部を振動させることとしても良い。具体的には、破壊音を出力する場合、被弾エフェクトデータ633において、パーツ種別及び被弾回数の組合せ毎に、パーツ種別や被弾回数(破壊の程度を表すことになる)に応じた破壊音の音声データを対応付けておく。例えば、種別が「木箱全体」のパーツについては、木板が割れる音の音声データであって、被弾回数に応じてその音の大きさや長さを異ならせた音声データを対応付ける。また、窓ガラスのパーツには、破壊音としてガラスが割れるような音声データを対応付ける。また、振動させる場合も同様に、被弾エフェクトデータ633において、パーツ種別及び被弾回数の組合せ毎に、パーツ種別や被弾回数に応じた振動パターンを対応付けておく。
【0091】
一方、発射された弾丸が破壊可能オブジェクトに命中したと判定したならば、当該破壊可能オブジェクトに対する被弾演出を、跳弾の場合と同様に行う。すなわち、命中した破壊可能オブジェクトを構成するパーツのうち、弾丸が命中したパーツを判定して被弾対象パーツとする。命中した破壊対象オブジェクトの種類に対応する被弾エフェクトデータ633に従って、被弾対象パーツに対する被弾演出を行う。被弾対象パーツの近傍に、該パーツの種別及び今回の被弾を含む被弾回数に対応するエフェクト52を表示させるとともに、該パーツを対応する差替モデル54に置き換える。
【0092】
図8に戻り、画像生成部230は、例えばGPU(Graphics Processing Unit)やデジタルシグナルプロセッサ(DSP)などのプロセッサ、ビデオ信号IC、ビデオコーデックなどのプログラム、フレームバッファ等の描画フレーム用ICメモリ等によって実現される。画像生成部230は、ゲーム演算部210による処理結果に基づいて1フレーム時間(1/60秒)で1枚のゲーム画像を生成し、生成したゲーム画像の画像信号を画像表示部300に出力する。
【0093】
画像表示部300は、画像生成部230からの画像信号に基づいて、例えば1/60秒毎に1フレームの画像を再描画しながらゲーム画面を表示する。この機能は、例えばCRTやLCD、ELD、PDP等の表示装置によって実現される。図1では、ディスプレイ1102がこれに該当する。
【0094】
音生成部240は、例えばデジタルシグナルプロセッサ(DSP)や音声合成ICなどのプロセッサ、音声ファイル再生可能なオーディオコーデックによって実現され、ゲーム演算部210による処理結果に基づいてゲームに係る効果音やBGM、各種操作音の音信号を生成し、音出力部400に出力する。
【0095】
音出力部400は、音生成部240から入力される音信号に基づいてBGMや効果音等のゲーム音声を出力する。この機能は、例えばスピーカ等の音声出力装置によって実現される。図1では、スピーカ1104がこれに該当する。
【0096】
通信部500は、通信回線Nと接続して通信を実現する。この機能は、例えば無線通信機、モデム、TA(ターミナルアダプタ)、有線用の通信ケーブルのジャックや制御回路等によって実現される。図1では、通信装置1124がこれに該当する。
【0097】
記憶部600は、処理部200にゲーム装置1000を統合的に制御させるための諸機能を実現するためのシステムプログラムや、ゲームを実行させるために必要なゲームプログラム、各種データ等を記憶する。また、処理部200の作業領域として用いられ、処理部200が各種プログラムに従って実行した演算結果や操作入力部100から入力される入力データ等を一時的に記憶する。この機能は、例えばRAMやROMなどのICメモリ、ハードディスク等の磁気ディスク、CD−ROMやDVDなどの光学ディスクなどによって実現される。図1では制御ユニット1120が搭載するフラッシュメモリ1122等がこれに該当する。本実施形態では、記憶部600には、プログラムとして、射撃時プログラム611を含むゲームプログラム610が記憶されるとともに、データとして、プレーヤキャラデータ621と、敵キャラデータ622と、破壊可能オブジェクトリスト624を含むステージデータ623と、跳弾対象範囲テーブル631と、跳弾数テーブル632と、被弾エフェクトデータ633とが記憶される。
【0098】
ステージデータ623は、仮想三次元空間にゲーム空間を形成するためのデータであり、ゲームステージ別に、プレーヤキャラクタ10や敵キャラクタ20が移動する地表や床面等のモデルデータや、地表や床面上に配置される各種オブジェクトのモデルデータやテクスチャデータ、位置や姿勢のデータ等を含んで構成されている。
【0099】
[処理の流れ]
図13は、射撃時処理の流れを説明するためのフローチャートである。この処理は、ゲームプログラム610に従ったガンシューティングゲームの実行中、プレーヤによる射撃操作がなされる毎に、ゲームプログラム610に含まれる射撃時プログラム611に従って実行される処理である。
【0100】
同図によれば、射撃時制御部214は、先ず、射撃によって発射された弾丸と三次元仮想空間内の各オブジェクトとのヒット判定を行い、弾丸が何れのオブジェクトに命中(接触)したかを判定する(ステップA1)。敵キャラクタ20に命中したと判定したならば(ステップA3:YES)、該敵キャラクタ20に対して、例えば命中した弾丸の種類(すなわち、武器12の種類)に応じた分のヒットポイントを減算させる等の所定のダメージ処理を行う(ステップA5)。また、跳弾数テーブル632に従って跳弾数Nを決定する(ステップA7)。
【0101】
決定した跳弾数Nが「1」以上ならば(ステップA9:YES)、射撃による跳弾を発生させるための跳弾処理を行う。すなわち、跳弾対象範囲テーブル631に従って、弾丸14が命中した敵キャラクタ20の位置を基準とした跳弾対象範囲40を設定する(ステップA11)。そして、破壊可能オブジェクトリスト624を参照し、破壊対象オブジェクトそれぞれを構成するパーツであってこの跳弾対象範囲40内のパーツのうちから、該敵キャラクタ20から近い順に、決定した跳弾数Nだけのパーツを選択して被弾対象パーツとする(ステップA13)。
【0102】
続いて、被弾対象パーツそれぞれを対象とした被弾処理を行う(ループA)。すなわち、被弾処理では、被弾対象パーツの被弾回数を「1」加算した値に更新する(ステップA15)。また、弾丸14が命中した敵キャラクタ20から跳弾対象パーツに向かう方向を、跳弾方向とする(ステップA17)。次いで、該被弾対象パーツを構成要素として含む破壊可能オブジェクトの種類に対応する被弾エフェクトデータ633に従って、該被弾対象パーツの近傍に、該パーツの種別及び更新後の被弾回数に応じたエフェクト52を表示させるとともに(ステップA19)、該被弾対象パーツを対応する差替モデル54に跳弾方向を考慮して置き替える(ステップA21)。更に、ここで、該パーツの種別及び被弾回数に応じた破壊音の出力や振動部の振動を行うことにしても良い。また、被弾回数が、該被弾対象パーツの種別に定められた被弾許容回数に達しているならば(ステップA23:YES)、該パーツは全壊したものとして全壊フラグを「1」に設定する(ステップA25)。ここまでが、被弾処理である。
【0103】
一方、発射された弾丸が破壊可能オブジェクトに命中したと判定したならば(ステップA3:NO〜A27:YES)、該破壊可能オブジェクトを構成するパーツのうち、何れのパーツに命中したかを特定して被弾対象パーツとする(ステップA29)。そして、この被弾対象パーツに対する被弾処理(ステップA15〜A25)を同様に行う(ステップA31)。以上の処理を行うと、本射撃時処理を終了する。
【0104】
[作用・効果]
このように、本実施形態によれば、一人称視点のガンシューティングゲームにおいて、プレーヤがガン型コントローラ1110を操作して射撃操作を行うと、プレーヤキャラクタ10の銃12から弾丸14が発射される。発射された弾丸14が敵キャラクタ20に命中すると、該敵キャラクタ20にはこの弾丸14の命中による所定のダメージが与えられるとともに、この弾丸14が跳ね返り(跳弾)、近傍の他のオブジェクト(木箱32等)に命中し、このダメージによって破壊される。これにより、射撃の対象のオブジェクト(敵キャラクタ20)のみならず、跳弾によって近傍の他のオブジェクト(木箱32等)にもダメージを与え破壊し得るといった派手な破壊の演出が実現され、よって、射撃によってオブジェクトを破壊するといったシューティングゲームの興趣を向上させることができる。
【0105】
[変形例]
なお、本発明の適用可能な実施形態は、上述の実施形態に限定されることなく、本発明の趣旨を逸脱しない範囲で適宜変更可能なのは勿論である。
【0106】
(A)跳弾数N
例えば、上述の実施形態では、跳弾数Nを確率演算によって決めることとしたが、この跳弾数Nを、銃12の種類や、プレーヤキャラクタ10の種類に応じた固定数としても良い。ここで、プレーヤキャラクタ10の種類としては、例えば、武装兵や民間兵、隊長や見習い兵といった複数種類のキャラクタを用意し、ゲーム開始時前にこれらのうちからプレーヤ自身で選択したキャラクタをプレーヤキャラクタ10として使用する。
【0107】
(B)跳弾対象範囲40
また、跳弾対象範囲40を次のように設定することにしても良い。
【0108】
(B−1)形状及び配置向き
跳弾対象範囲40の形状は、球形状に限らず、他の形状でもよい。例えば、円筒形状(円柱形状)とし、筒体の方向を仮想カメラの視線方向に向けるように配置設定することとしても良い。一例を図14に示す。同図(a)は、ゲーム空間を垂直上方向から見た図であり、同図(b)は、水平方向から見た図である。この場合、円筒形状である跳弾対象範囲41は、その中心軸41aが、弾丸が命中した敵キャラクタ20の位置(代表点)を通り、且つ水平に設定されている。また、垂直上方向から見て、中心軸41aが、プレーヤキャラクタ10の視点に一致して定められる仮想カメラCMの位置と敵キャラクタ20の位置とを結ぶ直線に一致するように設定されている。仮想カメラCMから見た画像がゲーム画面の画像とされるため、跳弾対象範囲41である筒体の方向を仮想カメラCMの視線方向に沿った方向に向けることで、ゲーム画面内で派手な跳弾処理がなされることになる。また、ゲーム画面外で跳弾処理がなされることがなく、合理的な演出を実現できる。
【0109】
そして、跳弾対象範囲41は、円筒形状の前面から敵キャラクタ20の位置までの距離r1の方が、敵キャラクタ20の位置から後面までの距離r2よりも長くなっている。仮想カメラCMから見て、敵キャラクタ20の後ろ側に跳弾が発生したとしても、ゲーム画面に表示される演出表示の大きさは小さい。そのため、敵キャラクタ20よりも仮想カメラCM側に跳弾対象範囲を広く取っている。
【0110】
勿論、跳弾対象範囲40の形状は円筒形状に限らない。四角柱形状等、他の筒状形状でもよいし、仮想カメラCM側に頂点を持つ円錐体又は角錐体の形状としてもよい。また、筒状や錐体形状のように方向性を持つ形状の場合、設定向きを、弾丸が命中した敵キャラクタ20の位置と仮想カメラCMとの相対的な位置関係に応じて決定することにすると効果的である。例えば、図14の例では、跳弾対象範囲41の筒形状の方向を、水平方向で且つ仮想カメラCMの視線方向に沿った方向としたが、水平方向に限定せず、仮想カメラCMの位置と敵キャラクタ20の位置とを結ぶ直線に沿った向きとしてもよい(図14(b)の例では、中心軸41aが斜めになるため、斜めに跳弾対象範囲40が設定されることとなる。)。
【0111】
(B−2)敵キャラクタ20の命中部位に応じて可変
また、跳弾対象範囲40は、弾丸14が命中した敵キャラクタ20の部位(部分)によって形状・大きさ・向きを可変に設定しても良い。具体的には、敵キャラクタ20を複数の部位に分け、各部位に跳弾対象範囲とする領域を対応付けておく。そして、弾丸が命中した部位(命中部位)に対応する範囲を跳弾対象範囲として設定する。
【0112】
例えば、図15では、敵キャラクタ20は右半身及び左半身の二つの部位に分けられ、各部位に、跳弾対象範囲として、敵キャラクタ20の位置(代表点)を中心とする球形状の領域を、該敵キャラクタ20の前後方向に沿った垂直面で分割して成る略半球形状の領域が対応付けられている。つまり、右半身には該右半身を含み右側方向を向いた略半球形状の領域42aが対応付けら、左半身には該左半身を含み左側方向を向いた略半球形状の領域42bが対応付けられている。そして、射撃による弾丸が、敵キャラクタ20の右半身に命中した場合には領域42aが跳弾対象範囲となり、左半身に命中した場合には領域42bが跳弾対象範囲となる。
【0113】
図15の例では、敵キャラクタ20の代表点を中心とする略半球形状としたが、右半身及び左半身それぞれの部位に代表点を定めておいてもよい。また、略半球形状ではなく、直方体形状としてもよい。
また、図15の例では、右半身及び左半身それぞれの部位に対応する跳弾対象範囲の大きさを同一としたが、敵キャラクタ20が右手に武器を装備している分だけ、跳弾対象範囲を大きく設定してもよい。
【0114】
(B−3)攻撃体の飛翔方向に応じて可変
また、跳弾対象範囲40を、攻撃体である弾丸の飛翔方向に応じて可変することにしても良い。具体的には、跳弾対象範囲40として、弾丸14が命中した敵キャラクタ20を含むとともに、該敵キャラクタ20に向かう弾丸14の飛翔方向を含む領域を設定する。
【0115】
例えば、図16では、跳弾対象範囲40として、平面視扇形状の柱形状の領域が設定されている。この跳弾対象範囲40は、扇形状の中心角付近に敵キャラクタ20の代表点を含み、該敵キャラクタ20の位置から弾丸の発射位置(すなわち、プレーヤキャラクタ10)の方向に向かって広がるとともに、扇形状の中心角が弾丸14の飛翔方向によって二分される向きに設定されている。
なお、跳弾対象範囲40の形状は図16のような平面視扇形状でなくともよいのは勿論である。筒形状であっても錐形状であってもよい。
【0116】
(B−4)プレーヤキャラクタ10と敵キャラクタ20との距離に応じて可変
また、跳弾対象範囲40を、プレーヤキャラクタ10の位置(或いは、弾丸の発射位置)から弾丸14が命中した敵キャラクタ20の位置(或いは、命中した敵キャラクタ20の表面の位置)までの距離Lに応じて可変しても良い。具体的には、跳弾対象範囲40を球形状とする場合、距離Lに応じて球形状の半径Rを可変する。例えば、距離Lが長いほど、跳弾の勢いが弱まると考えられるため、球形状の半径Rを短くして跳弾対象範囲40の大きさを小さくする。またこの場合、上述の実施形態における銃12の種類に応じた可変と組み合わせても良いし組み合わせなくとも良い。つまり、銃12の種類及び距離Lの組み合わせに応じて距離Rを決定することにしても良いし、或いは、銃12の種類は考慮せずに距離Lのみによって距離Rを決定することにしても良い。更に、距離Lに応じて、跳弾対象範囲40の形状を可変することにしても良い。
【0117】
(B−5)プレーヤキャラクタ10に応じて可変
また、跳弾対象範囲40を、プレーヤキャラクタ10の種類に応じて可変しても良い。具体的には、跳弾対象範囲40を球形状とする場合、プレーヤキャラクタ20の種類に応じて球形状の半径Rを可変する。例えば、熟練兵といった射撃が上手いキャラクタの場合、半径Rを長くして跳弾対象範囲40の大きさを大きくし、敵キャラクタ20に上手く弾丸14が命中している様子を表現したりする。
【0118】
またこの場合、上述の実施形態におけるプレーヤキャラクタ10が装備する銃12の種類に応じた半径Rの可変と組み合わせても良いし組み合わせなくとも良い。つまり、プレーヤキャラクタ10の種類及び銃12の種類の組合せに応じて半径Rを決定することにしても良いし、或いは、銃12の種類は考慮せずにプレーヤキャラクタ10の種類のみによって半径Rを決定することにしても良い。更に、跳弾対象範囲40を、プレーヤキャラクタ20の種類に応じた形状としても良い。
【0119】
また、複数(二人以上)のプレーヤが同時に同一のゲーム空間においてプレイする複数プレイの場合、これら複数のプレーヤのうち、射撃によって敵キャラクタに弾丸14を命中させたプレーヤキャラクタ10がいずれのプレーヤのプレーヤキャラクタなのかに応じて、跳弾対象範囲40を可変することにしても良い。
【0120】
(C)被弾演出
(C−1)跳弾と直接とで異なる
また、上述の実施形態では、破壊可能オブジェクトに対する被弾演出を、跳弾による被弾と射撃による直接の被弾とで同じとしたが、異なる被弾演出としても良い。具体的には、被弾エフェクトデータ633において、被弾の種類(跳弾或いは直接)それぞれについて、被弾回数毎にエフェクト52及び差替モデル54を定義しておく。そして、被弾演出の際には、今回の被弾の種類(跳弾或いは直接)に対応するエフェクト52及び差替モデル54を表示する。
【0121】
(C−2)ダメージ量
また、上述の実施形態では、破壊可能オブジェクトに対する被弾演出を、その破壊可能オブジェクトの今までの被弾回数に応じて行うことにしたが、被弾によって与えられたダメージ量に基づいて行うことにしても良い。
【0122】
具体的には、被弾エフェクトデータ633に替えて、図19に示す被弾エフェクトデータに従って被弾演出を行う。同図に示す被弾エフェクトデータは、オブジェクトの種類毎に生成され、該オブジェクトを構成するパーツの種別毎に、該パーツに定められた許容ダメージ量と、差替モデルデータと、エフェクトデータとを格納している。
【0123】
許容ダメージ量は、教養ダメージ残量の最大値であり、該パーツが完全な状態(ゲーム空間に配置された当初の状態)での値である。許容ダメージ残量は、キャラクタのヒットポイントに相当し、被弾によってダメージが与えられることで減少し、この許容ダメージ残量がゼロ以下となると、該パーツは完全に破壊(全壊)されたことになる。
【0124】
差替モデルデータは、該パーツが取り得る許容ダメージ残量毎に、差替モデルIDを対応付けて格納している。各許容ダメージ残量に対応する差替モデルは、元のパーツ全体のうち、許容ダメージ量に対する該許容ダメージ残量の割合の部分が残った形状のモデルとなっている。
【0125】
エフェクトモデルデータは、被弾直前での許容ダメージ量毎に、今回の被弾によって付与されるダメージ量と、エフェクトIDとを対応付けて格納している。対応するエフェクトとしては、付与されたダメージ量が多いほど、或いは、被弾直前の許容ダメージ量が多いほど(すなわち、残っている部分が多いほど)、大きなエフェクト(例えば、より多くの破片がより遠くまで飛び散るエフェクト)が対応付けられている。
【0126】
すなわち、この被弾エフェクトデータを用いた被弾演出としては、破壊対象パーツの許容ダメージ残量を、被弾によって付与されたダメージ量だけ減少させる。そして、破壊対象パーツを、減少後の許容ダメージ量に対応する差し替えモデルに置き換えるとともに、ダメージが付与される直前の許容ダメージ残量と、付与されたダメージ量との組合せに対応するエフェクトを表示させる。
【0127】
(D)跳弾対象オブジェクトの選定
また、上述の実施形態では、跳弾対象オブジェクトとして、跳弾対象範囲40内の破壊可能オブジェクトであって該敵キャラクタ20に最も近いオブジェクトが選定されることにしたが、これを、他の条件(例えば、壊れ易さ)によって選定することにしても良いし、或いは、ランダムに選定することにしても良い。この場合、選定したオブジェクトと敵キャラクタ20との間(詳細には、それぞれの位置を結ぶ直線を含む範囲であり、跳弾が進むと仮定される範囲)に他のオブジェクトが位置するときには、選定したオブジェクトではなく、この間に位置するオブジェクトを跳弾対象オブジェクトとしても良い。これにより、跳弾がオブジェクトをすり抜けてその後ろのオブジェクトに命中するといった不自然な演出が回避され得る。
【0128】
(E)連鎖的な跳弾
また、上述の実施形態では、敵キャラクタ20に命中した弾丸14が跳ね返り他のオブジェクトに命中する、すなわち「1回」の跳弾が発生することにしたが、これを、跳弾が複数回連鎖的に発生することにしても良い。すなわち、敵キャラクタ20に命中した弾丸14が跳ね返り、跳弾として他のオブジェクトに命中し(1回目の跳弾)、更にこの弾丸14が跳ね返り2回目の跳弾として他のオブジェクトに命中するといったように、1つの弾丸14が跳弾を繰り返して次々と複数のオブジェクトに命中する。このとき、跳弾の連鎖の終了条件としては、例えば、(a)予め定められた跳弾の回数(例えば、4回)に達した時点、(b)跳弾によってオブジェクトが完全に破壊(全壊)された(ダメージ許容量が一定値以下となった)時点等がある。そして、跳弾の連鎖の終了判定は、これらの条件の何れか1つのみを用いて行っても良いし、AND条件或いはOR条件として行っても良い。
【0129】
またこの場合、跳弾を繰り返す毎に、跳弾対象オブジェクトに与えるダメージを減少させてゆくことにしても良い。この場合、跳弾の連鎖の終了条件として、(c)跳弾対象オブジェクトに与え得るダメージ量が所定量以下となった時点、が追加される。更に、1回目の跳弾で跳弾対象オブジェクトに与え得るダメージ量を、例えば、銃12の種類やプレーヤキャラクタ10の種類、プレーヤキャラクタ10と敵キャラクタ20との間の距離L等に応じて決めることにしても良い。
【0130】
より具体的には、弾丸14が直接に命中した敵キャラクタ20に与えたダメージ量を「D」とすると、1回目の跳弾では、このダメージ量Dのn(<1.0)倍のダメージ量「D=D・n(<1.0)」を与え、2回目の跳弾では、1回目の跳弾のダメージ量「D」のn倍のダメージ量「D=D・n=D・n」<1.0)を与えるといったように、m回目の跳弾では、ダメージ量「D=D・n(<1.0)」を与える。この場合、上述した被弾エフェクトデータ(図19参照)を用いて、与えられたダメージや被弾後の許容ダメージ残量に応じた差替モデル及びエフェクトを表示することで被弾演出を行えば良い。
【0131】
(F)ゲーム装置
上述の実施形態では、業務用ゲーム装置においてガンシューティングゲームを実行する場合を説明したが、家庭用ゲーム装置や携帯型ゲーム装置といった他のゲーム装置に適用することも可能である。
【0132】
例えば、図17は、家庭用ゲーム装置1200の一例を示す概観図である。同図によれば、家庭用ゲーム装置1200は、ゲーム装置本体1210と、ビデオモニタ1220と、ゲームコントローラ1230とを備える。ゲーム装置本体1210は、例えばCPUや画像処理用LSI、ICメモリ等が実装された制御ユニット1212と、光学ディスク1202やメモリカード1204といった情報記憶媒体の読み取り装置1216,1218とを備える。そして、制御ユニット1212が、光学ディスク1202やメモリカード1204からゲームプログラム及び各種設定データを読み出し、ゲームコントローラ1230でなされる操作入力に基づいて各種のゲーム演算を実行する。
【0133】
制御ユニット1212は、CPU(Central Processing Unit)やGPU(Graphics Processing Unit)及びDSP(Digital Signal Processor)などの各種マイクロプロセッサ、ASIC(Application Specific Integrated Circuit)、ICメモリなどの電気電子機器を備え、家庭用ゲーム装置1200の各部を制御する。また、制御ユニット1212は、インターネットやLAN(Local Area Network)、WAN(Wide Area Network)と言った通信回線Nと接続して外部装置との間でデータ通信を実現する通信装置1214を備える。
【0134】
ゲームコントローラ1230は、選択の決定やキャンセル、タイミングの入力などに用いられるプッシュボタン1232と、上下左右の各方向を単独入力するための方向キー1234と、右アナログレバー1236Rと、左アナログレバー1236Lとを備える。ガンシューティングゲームを実行する場合では、プッシュボタン1232でプレーヤキャラクタによる射撃のトリガー操作、使用武器の切換などの操作を入力し、左アナログレバー1236Lの照準2の位置を上下左右に移動させることができる。
【0135】
制御ユニット1212は、ゲームコントローラ1230から受信した検出信号や操作入力信号に基づいてゲーム画像やゲーム音を生成する。そして、生成されたゲーム画像やゲーム音は、信号ケーブル1206で接続されたビデオモニタ1220(ディスプレイモニタ)に出力される。ビデオモニタ1220には、画像を表示するディスプレイ1222と音声を放音するスピーカ1224とが備えられており、プレーヤはディスプレイ1222に映し出されるゲーム画像を見ながら、スピーカ1224から放音されるゲーム音を聞きつつゲームをプレイすることができる。
【0136】
(G)ゲームの種類
また、上述の実施形態では、ガンシューティングゲームを実行する場合を説明したが、他のジャンルのゲームにも同様に適用できる。
【0137】
例えば、図18は、本発明をフライトシューティングゲームに適用した場合のゲーム画面の一例を示す図である。同図によれば、フライトシューティングゲームにおけるゲーム画面は、プレーヤ機のパイロット視点(一人称視点)から見た、いわゆるコックピット画面として表示される。プレーヤは、コントローラを操作して、自プレーヤ機を操縦して空中を飛行する。そして、敵飛行機に照準2を合わせてトリガを引くといった射撃操作を行うことで、該敵飛行機を射撃によって攻撃することができる。
【0138】
同図(a)に示すように、射撃に成功して敵機22aに命中させると、同図(b)に示すように、この敵機22aに命中によるダメージが与えられ、炎上して破壊される。すると、同図(c)に示すように、破壊された敵機22aから飛び散った破片が近傍の他の敵機22bに命中し、該敵機22bにダメージが与えられて煙が発生した演出がなされている。
【0139】
すなわち、上述の実施形態のガンシューティングゲームでは、弾丸が直接命中したオブジェクトの他に、その弾丸が跳ね返る“跳弾”によって他のオブジェクトに副次的にダメージを付与することとして説明したが、“跳弾”ではなく“飛散した破片”が副次的なダメージ付与の主体であるとしてもよい。
【0140】
従って、例えば図4において、敵キャラクタ20を頭部、右腕部、左腕部、胴部、左足部、右足部といった破壊可能な部位オブジェクトで構成し、図4(b)において、弾丸が当たった敵キャラクタ20の右腕部を破壊させ、図4(c)においては、“跳弾”ではなく“破壊されて飛散した右腕部の破片”によって木箱にダメージが与えられて破壊されるようにしてもよい。こうすることで、上述した実施形態の“跳弾”を“飛散した破片”に置き換える実施例を構成することができる。
【図面の簡単な説明】
【0141】
【図1】業務用ゲーム装置の概観例。
【図2】ゲーム画面の一例。
【図3】プレーヤキャラクタの一例。
【図4】ゲーム画面の一例。
【図5】跳弾対象範囲の説明図。
【図6】破壊可能オブジェクトを構成するパーツの一例。
【図7】被弾による段階的な破壊の説明図。
【図8】ゲーム装置の機能構成図。
【図9】破壊可能オブジェクトリストのデータ構成例。
【図10】跳弾数テーブルのデータ構成例。
【図11】跳弾対象範囲テーブルのデータ構成例。
【図12】被弾エフェクトデータのデータ構成例。
【図13】射撃時処理のフローチャート。
【図14】跳弾対象範囲の他の例。
【図15】跳弾対象範囲の他の例。
【図16】跳弾対象範囲の他の例。
【図17】家庭用ゲーム装置の概観例。
【図18】フライトシューティングゲームにおけるゲーム画面例。
【図19】被弾エフェクトデータの変形例。
【符号の説明】
【0142】
1000 業務用ゲーム装置
100 操作入力部
200 処理部
210 ゲーム演算部、
211 照準位置判定部、212 プレーヤキャラ制御部
213 敵キャラ制御部、214 射撃時制御部
230 画像生成部、240 音生成部
300 画像表示部、400 音出力部、500 通信部
600 記憶部
610 ゲームプログラム、611 射撃時プログラム
621 プレーヤキャラデータ、622 敵キャラデータ
623 ステージデータ、624 破壊可能オブジェクトリスト
631 跳弾対象範囲テーブル、632 跳弾数テーブル
633 被弾エフェクトデータ
2 照準
10 プレーヤキャラクタ
14 弾丸
20 敵キャラクタ
40 跳弾対象範囲

【特許請求の範囲】
【請求項1】
コンピュータに、複数のオブジェクトが配置された三次元仮想空間の画像を生成させるためのプログラムであって、
前記三次元仮想空間を飛翔する攻撃体が前記複数のオブジェクトの何れかと接触したことを検知する検知手段、
前記検知手段により接触したと検知されたオブジェクトと離隔した位置に存在し、相対位置関係が所定条件を満たす他のオブジェクトの中からダメージを付与するオブジェクトを選択する選択手段、
前記選択手段により選択されたオブジェクトにダメージを付与するダメージ付与手段、
として前記コンピュータを機能させるためのプログラム。
【請求項2】
前記選択手段により選択されたオブジェクトが破壊可能物であった場合に、前記ダメージ付与手段が当該オブジェクトへのダメージ付与として当該オブジェクトを破壊するように前記コンピュータを機能させるための請求項1に記載のプログラム。
【請求項3】
前記オブジェクトにはダメージ許容量が関連付けられており、
前記オブジェクトそれぞれのダメージ許容残量を、当該オブジェクトにダメージが付与される毎に減算して管理する管理手段として前記コンピュータを機能させ、
前記ダメージ付与手段が、前記選択手段により選択されたオブジェクトのダメージ許容残量が所定のダメージ量以下の場合に当該オブジェクトを破壊するように前記コンピュータを機能させるための請求項2に記載のプログラム。
【請求項4】
前記選択手段により選択されたオブジェクトに付与するダメージ量を決定するダメージ量決定手段として前記コンピュータを機能させ、
前記ダメージ付与手段が、前記選択手段により選択されたオブジェクトのダメージ許容残量が前記ダメージ量決定手段により決定されたダメージ量以下の場合に当該オブジェクトを破壊するように前記コンピュータを機能させるための請求項3に記載のプログラム。
【請求項5】
前記選択手段に対して、先に選択したオブジェクトと離隔した位置に存在し、当該先に選択したオブジェクトとの相対位置関係が所定条件を満たす当該先に選択したオブジェクト以外のオブジェクトを、次にダメージを付与するオブジェクトとして選択させる処理を連鎖的に実行させるとともに、連鎖的に選択される都度、前記ダメージ量決定手段及び前記ダメージ付与手段を機能させる連鎖実行制御手段として前記コンピュータを更に機能させるための請求項4に記載のプログラム。
【請求項6】
前記ダメージ量決定手段が、前記連鎖実行制御手段の制御によって連鎖的に選択されたオブジェクトに付与するダメージ量を、連鎖の順に徐々に低減させて決定するように前記コンピュータを更に機能させるための請求項5に記載のプログラム。
【請求項7】
前記連鎖実行制御手段が、選択したオブジェクトにダメージが付与された後のダメージ許容残量に基づいて連鎖的な選択を停止するように前記コンピュータを機能させるための請求項5又は6に記載のプログラム。
【請求項8】
前記ダメージ付与手段が、前記検知手段により接触したと検知されたオブジェクトから、前記選択手段により選択されたオブジェクトに向かう方向を参照して、当該オブジェクトの破壊エフェクト処理を実行する手段を有するように前記コンピュータを機能させるための請求項2〜7の何れか一項に記載のプログラム。
【請求項9】
前記選択手段が、前記検知手段により接触したと検知されたオブジェクトを基点とする所定形状の検索範囲を設定する検索範囲設定手段を有し、前記検索範囲内に位置する他のオブジェクトを選択するように前記コンピュータを機能させるための請求項1〜8の何れか一項に記載のプログラム。
【請求項10】
前記三次元仮想空間に仮想カメラを配置するカメラ配置手段、
前記仮想カメラから見た前記三次元仮想空間の画像を生成する画像生成手段、
として前記コンピュータを機能させ、
前記検索範囲設定手段が、前記検索範囲を前記基点を内在する筒状の形状とし、前記仮想カメラの視線方向に応じて向きを可変させて設定するように前記コンピュータを機能させるための請求項9に記載のプログラム。
【請求項11】
前記検知手段が、前記攻撃体が接触したオブジェクトの部位を検知する接触部位検知手段を有し、
前記検索範囲設定手段が、前記接触部位検知手段により検知された部位に応じて前記検索範囲を可変に設定する、
ように前記コンピュータを機能させるための請求項9に記載のプログラム。
【請求項12】
前記検知手段が、前記攻撃体が接触した際の飛翔方向を検知する飛翔方向検知手段を有し、
前記検索範囲設定手段が、前記飛翔方向検知手段により検知された飛翔方向に応じて前記検索範囲を可変に設定する、
ように前記コンピュータを機能させるための請求項9に記載のプログラム。
【請求項13】
前記攻撃体として複数種類設定されており、
前記検索範囲設定手段が、前記検知手段により前記オブジェクトに接触したと検知された攻撃体の種類に応じて、前記検索範囲の大きさを可変に設定するように前記コンピュータを機能させるための請求項9〜12の何れか一項に記載のプログラム。
【請求項14】
前記攻撃体を発射可能なキャラクタを前記三次元仮想空間に配置する発射可能キャラクタ配置手段として前記コンピュータを機能させ、
前記検索範囲設定手段が、前記検知手段により前記オブジェクトに接触したと検知された攻撃体を発射したキャラクタに応じて、前記検索範囲の大きさを可変に設定するように前記コンピュータを機能させるための請求項9〜13の何れか一項に記載のプログラム。
【請求項15】
前記攻撃体を所定の発射位置から発射させる発射制御手段として前記コンピュータを機能させ、
前記検索範囲設定手段が、前記発射位置から前記検知手段により検知された接触位置までの距離に応じて、前記検索範囲の大きさを可変に設定するように前記コンピュータを機能させるための請求項9〜14の何れか一項に記載のプログラム。
【請求項16】
前記選択手段が、前記検索範囲内に位置し、前記接触したと検知されたオブジェクトからの距離が短い順に所定数のオブジェクトを選択するように前記コンピュータを機能させるための請求項9〜15の何れか一項に記載のプログラム。
【請求項17】
前記選択手段が、前記検知手段により前記オブジェクトに接触したと検知された攻撃体の種類に応じて、選択するオブジェクトの数を可変するように前記コンピュータを機能させるための請求項16に記載のプログラム。
【請求項18】
前記攻撃体を発射可能なキャラクタを複数前記三次元仮想空間に配置する発射可能キャラクタ配置手段として前記コンピュータを機能させ、
前記選択手段が、前記検知手段により前記オブジェクトに接触したと検知された攻撃体を発射したキャラクタに応じて、選択するオブジェクトの数を可変するように前記コンピュータを機能させるための請求項16又は17に記載のプログラム。
【請求項19】
請求項1〜18の何れか一項に記載のプログラムを記憶するコンピュータ読み取り可能な情報記憶媒体。
【請求項20】
複数のオブジェクトが配置された三次元仮想空間の画像を生成して所定のゲームを実行するゲーム装置であって、
前記三次元仮想空間を飛翔する攻撃体をプレーヤの操作入力に従って発射する発射手段と、
前記攻撃体が前記複数のオブジェクトの何れかと接触したことを検知する検知手段と、
前記検知手段により接触したと検知されたオブジェクトと離隔した位置に存在し、相対位置関係が所定条件を満たす他のオブジェクトの中からダメージを付与するオブジェクトを選択する選択手段と、
前記選択手段により選択されたオブジェクトにダメージを付与するダメージ付与手段と、
を備えたゲーム装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate


【公開番号】特開2010−72768(P2010−72768A)
【公開日】平成22年4月2日(2010.4.2)
【国際特許分類】
【出願番号】特願2008−237239(P2008−237239)
【出願日】平成20年9月16日(2008.9.16)
【出願人】(000134855)株式会社バンダイナムコゲームス (1,157)
【Fターム(参考)】