説明

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

【課題】オブジェクトの一部の破壊に伴う該オブジェクトの連鎖的な破壊を適切に表現すること。
【解決手段】二つのパーツ30a,30bが一体となって構成された複合オブジェクト20Aにおいて、パーツ30bが破壊された場合、このパーツ30bの上方に隣接するパーツ30aが落下し、地表面GRに接触すると、複数の破片50が集合して成る全壊用オブジェクト60に置き換えられ、崩壊して全壊する(c)。即ち、パーツ30aの下面の中央位置に、球体の領域である崩壊用力場が設定される。そして、少なくともその一部が崩壊用力場90内に位置する破片50に該破壊用力場による移動力Fbが与えられ、与えられた移動力Fb等に基づいて移動されるともに、これらの移動された各破片50による衝突等に伴って他の各破片50が移動される。また、崩壊用力場は、時間経過に伴って、大きさが徐々に大きくなる(膨張する)とともに、全壊用オブジェクト60に作用する移動力Fbが徐々に小さくなる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、コンピュータに、ゲーム空間の画像を生成させてゲーム進行制御させるためのゲームプログラム等に関する。
【背景技術】
【0002】
現在、3Dゲームでは、プレーヤの仮想現実感の向上のため、よりリアルなゲーム画像の生成が要望されているが、この要望に応える技術として、例えば飛行機の一体成形モデルを複数のサブパーツの集まりによるサブパーツ構成モデルに差し替え、差し替えた各サブパーツを落下させることで、この飛行機が壊れていく様子を表現する技術が知られている。このとき、破壊の程度に応じて異なるサブパーツ構成モデルに差し替えることで、よりリアルな破壊表現が実現される。また、一体形成モデルのうち、破壊された部位のみをサブパーツ構成モデルに差し替えることで、少ない処理負荷で実現することが可能となる(例えば、特許文献1参照)。また、ブロック塊に似せた複数の表示要素によってビルディングを模擬したオブジェクトを構成し、これらの表示要素が分離して落下することにより、オブジェクトの崩壊の表現を実現する技術も知られている(例えば、特許文献2参照)。
【特許文献1】特許第3245142号公報
【特許文献2】特開2000−113225号公報
【発明の開示】
【発明が解決しようとする課題】
【0003】
しかしながら、上述の特許文献1の技術では、空中を飛行する飛行機等を対象としており、差し替えられたサブパーツが、例えば自重等によって落下することで破壊を表現している。また、上述の特許文献2の技術においても同様に、表示要素が分離して落下することで破壊を表現している。このため、例えば、地高層ビル等のオブジェクトの破壊に適用した場合、オブジェクトの一部の破壊に伴い、この破壊部分の上方部分が落下して連鎖的に破壊されるといった表現には不向きであった。
【0004】
本発明は、上記事情に鑑みて為されたものであり、オブジェクトの一部の破壊に伴う該オブジェクトの連鎖的な破壊を適切に表現することを目的としている。
【課題を解決するための手段】
【0005】
上記課題を解決するための第1の発明は、
コンピュータに、ゲーム空間の画像を生成させてゲームを進行制御させるためのプログラム(例えば、図17のゲームプログラム410)であって、
前記ゲーム空間に配置され、パーツオブジェクト間の上下位置関係が予め設定された複数のパーツオブジェクト(例えば、図5のパーツ30)で一体的に構成された全体オブジェクト(例えば、図5の複合オブジェクト20)のうち、破壊対象のパーツオブジェクトを選択する選択手段(例えば、図17の破壊制御部215;図41のステップB1)、
前記選択手段により選択されたパーツオブジェクトを破壊する破壊処理手段(例えば、図17の破壊制御部215;図41のステップB7,B27)、
前記破壊されたパーツオブジェクトの上方に位置する上方位置パーツオブジェクトを、前記上下位置関係から検索する上方位置パーツ検索手段(例えば、図17の破壊制御部215;図41のステップB3)、
前記検索された上方位置パーツオブジェクトを一体的に落下させる落下制御手段(例えば、図17の破壊制御部215;図41のステップB27)、
前記落下制御手段により落下された上方位置パーツオブジェクトのうち、前記破壊処理手段により破壊されたパーツオブジェクトの位置に落下したパーツオブジェクトを破壊する二次破壊処理手段(例えば、図17の破壊制御部215;図41のステップB37,B27)、
として機能させるためのプログラムである。
【0006】
また、第14の発明は、
ゲーム空間の地表面上に配置され、パーツオブジェクト間の上下位置関係が予め設定された複数のパーツオブジェクトで一体的に構成された全体オブジェクトのうち、破壊対象のパーツオブジェクトを選択する選択手段(例えば、図17の破壊制御部215)と、
前記選択手段により選択されたパーツオブジェクトを破壊する破壊処理手段と、
前記破壊されたパーツオブジェクトの上方に位置する上方位置パーツオブジェクトを、前記上下位置関係から検索する上方位置パーツ検索手段(例えば、図17の破壊制御部215)と、
前記検索された上方位置パーツオブジェクトを一体的に落下させる落下制御手段(例えば、図17の破壊制御部215)と、
前記落下制御手段により落下された上方位置パーツオブジェクトのうち、前記破壊処理手段により破壊されたパーツオブジェクトの位置に落下したパーツオブジェクトを破壊する二次破壊処理手段(例えば、図17の破壊制御部215)と、
を備えたゲーム装置(例えば、図1,図17のゲーム装置1000)である。
【0007】
この第1又は第14の発明によれば、複数のパーツオブジェクトで一体的に構成された全体オブジェクトのうち、選択された破壊対象のパーツオブジェクトが破壊され、破壊されたパーツオブジェクトの上方に位置する上方位置パーツが検索され、検索された上方位置パーツオブジェクトが一体的に落下され、落下された上方位置パーツのうち、破壊されたパーツオブジェクトの位置に落下したパーツオブジェクトが破壊される。即ち、全体オブジェクトを構成する何れかのパーツオブジェクトが破壊されると、その上方に位置するパーツオブジェクトが落下して破壊(二次破壊)されるといった、連鎖的な破壊が実現される。
【0008】
第2の発明は、第1の発明のプログラムであって、
前記二次破壊処理手段により破壊されたパーツオブジェクトの上方に位置する上方位置パーツオブジェクトの前記上方位置パーツ検索手段による検索と、前記検索された上方位置パーツオブジェクトの前記落下制御手段による一体的な落下と、前記破壊処理手段により破壊されたパーツオブジェクトの位置に落下したパーツオブジェクトの前記二次破壊処理手段による破壊との一連の処理を繰り返し実行させる繰り返し制御手段(例えば、図17の破壊制御部215;図41のステップB29:YES〜B43)として前記コンピュータを機能させるためのプログラムである。
【0009】
この第2の発明によれば、上方位置パーツオブジェクトの検索、検索された上方位置パーツオブジェクトの一体的な落下、そして落下したパーツオブジェクトの破壊という一連の処理が繰り返し実行される。つまり、破壊対象として選択されたパーツオブジェクトの破壊に伴って、その上方に位置する各パーツオブジェクトが次々に落下して破壊(二次破壊)されるといった、連鎖的な破壊の表現が実現される。
【0010】
第3の発明は、第2の発明のプログラムであって、
前記繰り返し制御手段が、繰り返し実行する一連の処理の実行速度を可変する処理速度可変手段(例えば、図17の破壊制御部215)を有するように前記コンピュータを機能させるためのプログラムである。
【0011】
この第3の発明によれば、上方位置パーツオブジェクトの検索、検索された上方位置パーツオブジェクトの落下、そして落下したパーツオブジェクトの破壊が繰り返し実行される一連の処理の実行速度が可変される。これにより、例えば実行速度を遅くすることでゆっくり破壊され、或いは実行速度を速くすることで一気に破壊されるといったように、全体オブジェクトの様々な破壊の表現が可能となる。
【0012】
第4の発明は、第3の発明のプログラムであって、
前記処理速度可変手段が、ゲームの進行状況に応じて前記一連の処理の実行速度を可変するように前記コンピュータを機能させるためのプログラムである。
【0013】
この第4の発明によれば、ゲームの進行状況に応じて、上方位置パーツオブジェクトの検索、検索された上方位置パーツオブジェクトの落下、そして落下したパーツオブジェクトの破壊が繰り返される一連の処理の実行速度が可変に決定される。これによりゲームの進行状況に応じた全体オブジェクトの様々な破壊の表現が可能となる。
【0014】
第5の発明は、第3又は第4の発明のプログラムであって、
所与の移動体を移動制御する移動体移動制御手段(例えば、図17の移動体制御部211;図40のステップA5)として前記コンピュータを機能させるとともに、
前記選択手段が、前記複数のパーツオブジェクトのうち、前記移動制御された移動体が衝突したパーツオブジェクトを選択し、
前記処理速度可変手段が、前記選択されたパーツオブジェクトに衝突した移動体の種類に応じて前記一連の処理の実行速度を可変に決定する、
ように前記コンピュータを機能させるためのプログラムである。
【0015】
この第5の発明によれば、全体オブジェクトを構成する複数のパーツオブジェクトのうち、移動制御された移動体が衝突したパーツオブジェクトが破壊対象として選択され、選択されたパーツオブジェクトに衝突した移動体の種類に応じて、上方位置パーツオブジェクトの検索、検索された上方位置パーツオブジェクトの落下、そして落下したパーツオブジェクトの破壊が繰り返される一連の処理の実行速度が可変に決定される。これにより、衝突した移動体の種類に応じた、全体オブジェクトの様々な破壊の表現が可能となる。
【0016】
第6の発明は、第3〜第5の何れかの発明のプログラムであって、
前記ゲーム空間に配置された全体オブジェクトには、複数種類の全体オブジェクトがあり、
前記処理速度可変手段が、前記選択手段により選択された破壊対象のパーツオブジェクトを含む全体オブジェクトの種類に応じて前記一連の処理の実行速度を可変に決定するように前記コンピュータを機能させるためのプログラムである。
【0017】
この第6の発明によれば、選択された破壊対象のパーツオブジェクトを含む全体オブジェクトの種類に応じて、上方位置パーツの検索、検索された上方位置パーツの落下、そして落下したパーツオブジェクトの破壊が繰り返される一連の処理の実行速度が可変に決定される。
【0018】
第7の発明は、第1〜第6の何れかの発明のプログラムであって、
前記破壊処理手段及び前記二次破壊処理手段によるパーツオブジェクトの破壊に応じて、所与の破片オブジェクトを、飛散距離を可変して飛散させる制御を行う飛散制御手段として前記コンピュータを機能させるためのプログラムである。
【0019】
この第7の発明によれば、パーツオブジェクトの破壊に応じて、破片オブジェクトの飛散距離が可変される。
【0020】
第8の発明は、第2〜第6の何れかの発明のプログラムであって、
前記破壊処理手段及び前記二次破壊処理手段によるパーツオブジェクトの破壊に応じて、所与の破片オブジェクトを飛散させる制御を行うとともに、前記繰り返し制御手段による繰り返し実行に応じて徐々に飛散距離が大きくなるように前記所与の破片オブジェクトの飛散の制御を行う飛散制御手段として前記コンピュータを機能させるためのプログラムである。
【0021】
この第8の発明によれば、上方位置パーツオブジェクトの検索、検索された上方位置パーツオブジェクトの一体的な落下、そして落下したパーツオブジェクトの破壊という一連の処理の繰り返し実行に応じて、徐々に飛散距離が大きくなるように破片オブジェクトが飛散される。これにより、連鎖的な破壊の進行に応じて、破壊の程度が徐々に大きくなるような表現が可能となる。
【0022】
第9の発明は、第1〜第8の何れかの発明のプログラムであって、
前記選択手段により選択されたパーツオブジェクトの下方に隣接するパーツオブジェクトを前記上下位置関係から検索する下方隣接パーツ検索手段(例えば、図17の破壊制御部215;図41のステップB3)、
前記下方隣接パーツ検索手段により検索されたパーツオブジェクトを、上部が半壊された所定のパーツオブジェクト(例えば、図6の上半壊用オブジェクト71)に置き換える上部半壊パーツ置き換え手段(例えば、図17の破壊制御部215;図41のステップB11)、
として前記コンピュータを機能させるためのプログラムである。
【0023】
この第9の発明によれば、選択された破壊対象のパーツオブジェクトの下方に隣接するパーツオブジェクトが検索され、検索されたパーツオブジェクトが、上部が半壊されたパーツオブジェクトに置き換えられる。これにより、パーツオブジェクトの破壊により、その下方に隣接するパーツオブジェクトが半壊するといった、より自然な破壊の表現が実現される。
【0024】
第10の発明は、第1〜第9の何れかの発明のプログラムであって、
前記全体オブジェクトには、更に、当該全体オブジェクトを構成する各パーツオブジェクト間の横位置関係が予め設定されており、
前記選択手段により選択されたパーツオブジェクトの横方向に隣接するパーツオブジェクトを前記横位置関係から検索する第1の横隣接パーツ検索手段(例えば、図17の破壊制御部215;図41のステップB3)、
前記第1の横隣接パーツ検索手段により検索されたパーツオブジェクトを、前記選択手段により選択されたパーツオブジェクトとの隣接部分が半壊された所定のパーツオブジェクト(例えば、図7の横半壊用オブジェクト72)に置き換える第1の横部半壊パーツ置き換え手段(例えば、図17の破壊制御部215;図41のステップB11)、
として前記コンピュータを機能させるためのプログラムである。
【0025】
この第10の発明によれば、選択された破壊対象のパーツオブジェクトの横方向に隣接するパーツオブジェクトが検索され、検索されたパーツオブジェクトが、選択されたパーツオブジェクトとの隣接部分が半壊されたパーツオブジェクトに置き換えられる。これにより、パーツオブジェクトの破壊により、その横方向に隣接するパーツオブジェクトが半壊するといった、より自然な破壊の表現が可能となる。
【0026】
第11の発明は、第1〜第10の何れかの発明のプログラムであって、
前記上方位置パーツ検索手段により検索された各上方位置パーツオブジェクトそれぞれの横方向に隣接するパーツオブジェクトを前記横位置関係から検索する第2の横隣接パーツ検索手段(例えば、図17の破壊制御部215;図41のステップB33)、
前記第2の横隣接パーツ検索手段により検索されたパーツオブジェクトを、上方位置パーツオブジェクトとの隣接部分が半壊された所定のパーツオブジェクト(例えば、図7の横破壊用オブジェクト72)に置き換える第2の横部半壊パーツ置き換え手段(例えば、図17の破壊制御部215;図41のステップB41)、
として前記コンピュータを機能させるためのプログラムである。
【0027】
この第11の発明によれば、各上方位置パーツオブジェクトそれぞれの横方向に隣接するパーツオブジェクトが検索され、検索されたパーツオブジェクトが、上方位置パーツオブジェクトとの隣接部分が半壊されたパーツオブジェクトに置き換えられる。これにより、更に、パーツオブジェクトの破壊に伴って落下・破壊される上方位置パーツの横方向に隣接するパーツが半壊するといった、より自然な破壊の表現が実現される。
【0028】
第12の発明は、
コンピュータに、ゲーム空間の画像を生成させてゲームを進行制御させるためのプログラム(例えば、図17のゲームプログラム410)であって、
前記ゲーム空間に配置され、パーツオブジェクト間の横方向の位置関係である横位置関係が予め設定された複数のパーツオブジェクト(例えば、図11のパーツ30)で一体的に構成された全体オブジェクト(例えば、図11の複合オブジェクト20C)のうち、破壊対象のパーツオブジェクトを選択する選択手段(例えば、図17の破壊制御部215;図41のステップB1)、
前記選択手段により選択されたパーツオブジェクトを破壊する破壊処理手段(例えば、図17の破壊制御部215;図41のステップB7,B27)、
前記破壊されたパーツオブジェクトの横方向に隣接するパーツオブジェクトを、前記横位置関係から検索する横隣接パーツ検索手段(例えば、図17の破壊制御部215;図41のステップ3)、
前記横隣接パーツ検索手段により検索されたパーツオブジェクトを、前記破壊処理手段により破壊されたパーツオブジェクトとの隣接部分が半壊された所定のパーツオブジェクト(例えば、図7の横半壊用オブジェクト27)に置き換える横部半壊パーツ置換手段(例えば、図17の破壊制御部215;図41のステップB11)、
として前記コンピュータを機能させるためのプログラムである。
【0029】
また、第15の発明は、
ゲーム空間に配置され、パーツオブジェクト間の横方向の位置関係である横位置関係が予め設定された複数のパーツオブジェクトで一体的に構成された全体オブジェクトのうち、破壊対象のパーツオブジェクトを選択する選択手段と、
前記選択手段により選択されたパーツオブジェクトを破壊する破壊処理手段と、
前記破壊されたパーツオブジェクトの横方向に隣接するパーツオブジェクトを、前記横位置関係から検索する横隣接パーツ検索手段と、
前記横隣接パーツ検索手段により検索されたパーツオブジェクトを、前記破壊処理手段により破壊されたパーツオブジェクトとの隣接部分が半壊された所定のパーツオブジェクトに置き換える横部半壊パーツ置換手段と、
を備えたゲーム装置(例えば、図1,図17のゲーム装置1000)である。
【0030】
この第12又は第15の発明によれば、複数のパーツオブジェクトで一体的に構成された全体オブジェクトのうち、選択された破壊対象のパーツオブジェクトが破壊され、破壊されたパーツオブジェクトの横方向に隣接するパーツオブジェクトが、破壊されたパーツオブジェクトとの隣接部分が半壊されたパーツオブジェクトに置き換えられる。これにより、パーツオブジェクトの破壊により、その横方向に隣接するパーツオブジェクトが半壊するといった、より自然な破壊の表現が可能となる。
【0031】
第13の発明は、第1〜第12の何れかの発明のプログラムを記憶したコンピュータ読み取り可能な情報記憶媒体(例えば、図17の記憶部400)である。
【0032】
ここで、情報記憶媒体とは、記憶されている情報をコンピュータが読み取り可能な、例えばハードディスクやMO、CD−ROM、DVD、メモリカード、ICメモリ、ゲームカセット等の記憶媒体である。従って、この第13の発明によれば、情報記憶媒体に記憶されている情報をコンピュータに読み取らせて演算処理を実行させることで、第1〜第12の何れかの発明と同様の効果を奏することができる。
【発明の効果】
【0033】
本発明によれば、複数のパーツオブジェクトで一体的に構成された全体オブジェクトのうち、選択された破壊対象のパーツオブジェクトが破壊され、破壊されたパーツオブジェクトの上方に位置する上方位置パーツが検索され、検索された上方位置パーツオブジェクトが一体的に落下され、落下された上方位置パーツのうち、破壊されたパーツオブジェクトの位置に落下したパーツオブジェクトが破壊される。即ち、全体オブジェクトを構成する何れかのパーツオブジェクトが破壊されると、その上方に位置するパーツオブジェクトが落下して破壊(二次破壊)されるといった、連鎖的な破壊が実現される。
【発明を実施するための最良の形態】
【0034】
以下、図面を参照して、本発明の好適な実施形態を説明する。尚、以下では、本発明を家庭用ゲーム装置における戦闘ゲームに適用した場合について説明するが、本発明の適用可能な実施形態がこれに限定されるものではない。
【0035】
[ゲーム装置の外観]
図1は、本実施形態のゲーム装置1000の外観の一例を示す図である。同図によれば、ゲーム装置1000は、本体装置1110と、プレーヤがゲーム操作を入力するための方向キー1121やボタンスイッチ1122を有するゲームコントローラ1120と、スピーカ1131を有するディスプレイ1130とを備える。ゲームコントローラ1120は本体装置1110に接続され、ディスプレイ1130は、画像信号及び音信号を伝送可能なケーブル1101によって本体装置1110に接続されている。
【0036】
本体装置1110がゲーム処理を行うために必要なプログラムやデータ等を含むゲーム情報等は、例えば本体装置1110に着脱自在な情報記憶媒体であるCD−ROM1112やメモリカード1113、ICカード1114等に格納されている。即ち、プレーヤは、このCD−ROM1112等を交換することで異なるゲームを楽しむことができる。尚、このゲーム情報等は、本体装置1110が具備する通信装置1115を介して通信回線Nに接続し、外部装置から取得することとしても良い。
【0037】
また、本体装置1110は、例えばCPU、ROMやRAM等のメモリを搭載した制御ユニット1111と、CD−ROM1112等の情報記憶媒体の読取装置とを具備する。本体装置1110は、CD−ROM1112等から読み出したゲーム情報と、ゲームコントローラ1120からの操作信号とに基づいて種々のゲーム処理を実行し、ゲーム画面の画像信号及びゲーム音の音信号を生成する。そして、生成した画像信号及び音信号をディスプレイ1130に出力して、ディスプレイ1130にゲーム画面を表示させるとともに、スピーカ1131からゲーム音を出力させる。プレーヤは、ディスプレイ1130に表示されたゲーム画面を見て、スピーカ1131から出力されるゲーム音を聞きながら、ゲームコントローラ1120を操作して戦闘ゲームを楽しむ。
【0038】
本実施形態の戦闘ゲームでは、ゲーム空間は、地面や山といった地形上に、建物や橋梁、鉄塔といった地上オブジェクトが配置されて構成される。プレーヤは、地形上の戦車や、或いは空中を飛行する戦闘機等を操作し、ミサイル(弾丸)を発射する等して、敵軍に所属する戦闘機や戦車、軍事施設等の地上オブジェクトを撃破する。地上オブジェクトは、ミサイル等の移動体が衝突することで破壊されるが、本実施形態は、この「破壊」に特徴がある。
【0039】
[破壊の原理]
図2は、本実施形態におけるオブジェクトの「破壊」の概要を示す図である。同図によれば、先ず、破壊処理の対象となるオブジェクトである破壊対象オブジェクト10が、破壊用オブジェクト40に置き換えられる。破壊用オブジェクト40は、図3に一例を示すように、複数の破片オブジェクト(以下、単に「破片」という)50から成る破片オブジェクト群であり、各破片50が集合した状態で形成されている。尚、説明の簡明化のため、図2,図3では、破壊用オブジェクト40は、複数の破片50が一体となって形成されるとともに、破壊対象オブジェクト10と同じ形状・大きさを有するように示されているが、破壊対象オブジェクト10と同じ形状・大きさの一体物でなくとも良い。例えば、複数の破片50が一定の近距離範囲内に一定の密度で集合した状態のオブジェクトであっても良いし、或いは破壊対象オブジェクト10と形状・大きさが異なっていても良い。
【0040】
次いで、破壊用力場80が設定される。破壊用力場80は、所定の処理時間間隔において当該力場内に位置していた各破片50に移動力Faを積算的に与える移動力付与領域であり、本実施形態では球体の領域である。そして、破壊用力場80は、この球体の中心位置Oが、破壊中心位置として定められた破壊対象オブジェクト10の中心位置に一致するように設定される。
【0041】
続いて、破壊用力場80による移動力Faが与えられる破片50が特定される。具体的には、破壊用オブジェクト40を構成する破片50のうち、少なくともその一部が破壊用力場80内に位置する破片50が、破壊用力場80による移動力Faが与えられると判定される。そして、特定された各破片50に、破壊用力場80による移動力Faが与えられる。具体的には、破壊用力場80の中心位置Oから破片50の代表点Qに向かう所定の大きさの移動力Faが、該破片50に与えられる。その後、破壊用オブジェクト40を構成する各破片50について、物理法則に則った移動制御が行われる。即ち、破壊用力場80が作用する各破片50を、破壊用力場80により与えられる移動力Faや該破片50の質量M、重力等に基づいて移動させる。また、これらの各破片50の移動による衝突等が生じた場合には、該衝突による破片50の移動演算を行う。
【0042】
ここで、破壊用力場80は、時間経過に伴って変化する。具体的には、図4に示すように、時間経過に伴って、大きさが徐々に大きくなる(膨張する)とともに、破壊用オブジェクト40に作用する移動力Faが徐々に小さくなる。即ち、同図(a)は、発生から時間t1が経過後の破壊用力場80である。この破壊用力場80の大きさは、球体の半径Rが「R1」であり、作用する移動力Faの大きさは「Fa1」である。また、同図(b)は、発生から時間t2(>t1)が経過後の破壊用力場80である。この破壊用力場80の大きさは、球体の半径Rが「R2(>R1)」であり、作用する移動力Fの大きさは「Fa2(<Fa1)」である。そして、破壊用力場80は、発生から所定時間が経過すると消滅する。従って、各破片50は、破壊中心位置Oから破壊用力場80の膨張方向に向かって、四方八方に飛散するように移動することになる。
【0043】
本実施形態の戦闘ゲームでは、地表面上に配置される地上オブジェクトは、複数のパーツオブジェクト(以下、単に「パーツ」という)が一体となって構成された複合オブジェクトである。そして、この複合オブジェクトが破壊される場合、該複合オブジェクトを構成するパーツ単位で破壊対象とするパーツ(以下、「破壊対象パーツ」という)が特定され、特定された破壊対象パーツが「破壊」される。
【0044】
更に、この破壊に伴って他のパーツが崩壊(二次破壊)する。このとき、破壊に伴って崩壊するパーツは、各パーツ間の位置関係に基づいて決まる。具体的には、破壊対象パーツの「上」、「下」及び「横」方向それぞれに隣接する他のパーツが崩壊する。また、この崩壊には、破壊と同様にパーツ全体が破片となって崩れる「全壊」と、パーツの一部のみが崩れる「半壊」との二種類がある。より詳細には、上方向に隣接するパーツが「全壊」し、下方向及び横方向それぞれに隣接するパーツが「半壊」する。尚ここで、各パーツ間の上下横方向の位置関係は、地表面に対する重量方向を鉛直下向きとしたゲーム空間において、これらのパーツが一体的に形成されている状態での位置関係である。
【0045】
図5は、上下方向の位置関係に基づく「崩壊」を説明するための図であり、複合オブジェクト20Aの例を示している。同図(a)によれば、複合オブジェクト20Aは、地表面GR上に配置され、二つのパーツ30a,30bで一体的に構成されている。具体的には、パーツ30bの上方向にパーツ30aが隣接して配置されている。そして、複合オブジェクト20Aを構成する何れかのパーツ30が破壊対象パーツとなって破壊されると、該破壊対象パーツの下方向に隣接するパーツ30が「半壊」するとともに、破壊対象パーツの上方向に隣接するパーツ30が「全壊」する。
【0046】
例えば、同図(b)に示すように、パーツ30aが破壊対象パーツとして「破壊」された場合、このパーツ30aの下方向に隣接するパーツ30bが「半壊」する。具体的には、パーツ30aが破壊用オブジェクト40に置き換えられるとともに、パーツ30bが半壊対象パーツとされて半壊用オブジェクト70に置き換えられる。
【0047】
半壊用オブジェクト70は、図6に一例を示すように、パーツ30の一部が半壊した形状のオブジェクトである。また、この半壊用オブジェクト70には、パーツ30の上部が半壊した形状の上半壊用オブジェクト71と、パーツ30の側部が半壊した形状の横半壊用オブジェクト72とがあり、半壊対象パーツは、破壊対象パーツとの隣接部分が半壊した形状の半壊用オブジェクト70に置き換えられる。即ち、図5(b)では、パーツ30bは、破壊対象パーツであるパーツ30aと上部で隣接しているため、上部が半壊した形状の上半壊用オブジェクト71に置き換えられる。
【0048】
次いで、置き換えた破壊用パーツ30に対する破壊処理が行われる。即ち、図2を参照して説明したように、破壊用力場80が設定され、設定された破壊用力場80に基づく移動力Faが破壊用オブジェクト40の各破片50に与えられる。そして、与えられた移動力Faを基に、破壊用オブジェクト40の各破片50が移動制御される。その結果、図5(b)の場合、半壊用オブジェクト70のみが残る。
【0049】
また、同図(c)に示すように、パーツ30bが破壊対象パーツとして「破壊」された場合、このパーツ30bの上方向に隣接するパーツ30aが「全壊」する。具体的には、先ず、パーツ30bが破壊用オブジェクト40に置き換えられ、この置き換えられた破壊用オブジェクト40に対する破壊処理が行われる。次いで、パーツ30aが落下してパーツ30bが位置していた位置、即ち地表面GRに到達(接触)すると、このパーツ30aが全壊対象パーツとされて全壊用オブジェクト60に置き換えられ、置き換えられた全壊用オブジェクト60に対する崩壊処理が行われる。全壊用オブジェクト60は、図7に一例を示すように、破壊用オブジェクト40と同様に、複数の破片50から成る破片オブジェクト群であり、各破片50が集合した状態(一体的であっても一体的でなくとも良い)で形成されている。
【0050】
図8は、「崩壊」の原理を説明するための図である。同図によれば、「崩壊」は、「破壊」と同様に行われる。即ち、全壊対象パーツ30が全壊用オブジェクト60に置き換えられ、次いで、崩壊用力場90が設定される。崩壊用力場90は、破壊用力場80と同様に、全壊用オブジェクト60の各破片50に移動力Fbを与える球形の移動力付与領域である。そして、この崩壊用力場90は、落下による崩壊を表現するため、その中心位置Oが、例えば崩壊中心位置として定められた全壊対象パーツ30の下面の中央位置の位置に設定される。続いて、全壊用オブジェクト60を構成する各破片50のうち、崩壊用力場90内に位置する破片50が移動力Fbが与えられる破片50として特定され、特定された各破片50に、崩壊用力場90による移動力Fbが与えられる。そして、与えられた移動力Fbや質量M、重力等を基に、物理法則に則って各破片50や他のパーツ30の移動が制御される。
【0051】
また、この崩壊用力場90は、破壊用力場80と同様に、時間経過に従って、その大きさ(球形の半径R)が徐々に大きくなるとともに作用する移動力Fbが徐々に小さくなり、発生から所定時間が経過すると消滅する。尚、崩壊用力場90は、図9に示すように、全壊対象パーツ30が落下して地表面GRと接触した位置に崩壊中心位置を定め、その中心位置Oをこの崩壊中心位置に一致させて設定することにしても良い。
【0052】
また、複合オブジェクトを構成するパーツのうち、破壊対象パーツの上方向に複数のパーツが位置する場合、該破壊対象パーツの破壊に伴って、その上方向に位置する複数のパーツそれぞれが連鎖的に「崩壊」して「全壊」する。
【0053】
図10は、「破壊」に伴う複数のパーツの連鎖的な「崩壊」を説明するための図である。同図(a)によれば、複合オブジェクト20Bは、3つのパーツ30a〜30cから構成される。即ち、パーツ30cの上方向にパーツ30bが隣接して配置され、更にパーツ30bの上方向に隣接してパーツ30aが配置されている。
【0054】
そして、同図(b)に示すように、パーツ30aが破壊対象パーツとして破壊された場合、このパーツ30aの下方向に隣接するパーツ30bが「半壊」する。即ち、パーツ30aが破壊用オブジェクト40に置き換えられるとともに、パーツ30bが半壊対象パーツとされて半壊用オブジェクト70に置き換えられ、置き換えられた破壊用オブジェクト40に対する破壊処理が行われる。その結果、パーツ30cと、パーツ30bに置き換わって配置された半壊用オブジェクト70とが残る。
【0055】
また、同図(c)に示すように、パーツ30bが破壊対象パーツとして破壊された場合、このパーツ30bの上方向に隣接するパーツ30aが「全壊」するともに、下方向に隣接するパーツCが「半壊」する。即ち、パーツ30bが破壊用オブジェクト40に置き換えられるともに、パーツ30cが半壊対象パーツとされて半壊用オブジェクト70に置き換えられ、置き換えられた破壊用オブジェクト40に対する破壊処理が行われる。次いで、パーツ30aが落下して半壊用オブジェクト70の上面に接触すると、このパーツ30aが、全壊対象パーツとされて全壊用オブジェクト60に置き換えられる。そして、この置き換えられた全壊用オブジェクト60に対する崩壊処理が行われる。その結果、パーツ30cに置き換わって配置された半壊用オブジェクト70のみが残る。
【0056】
また、同図(d)に示すように、パーツ30cが破壊対象パーツとして破壊された場合、このパーツ30cの上方向のパーツ30a,30bがともに「全壊」する。即ち、パーツ30cが破壊用オブジェクト40に置き換えられ、この置き換えられた破壊用オブジェクト40に対する破壊処理が行われる。次いで、パーツ30a,30bが一体となって落下し、下方のパーツ30bが地表面GRに接触すると、このパーツ30bが全壊用パーツとされて全壊用オブジェクト60に置き換えられ、置き換えられた全壊用オブジェクト60に対する崩壊処理が行われる。続いて、パーツ30aが落下して地表面GRに達すると、このパーツ30aが全壊対象パーツとされて全壊用オブジェクト60に置き換えられ、置き換えられた全壊用オブジェクト60に対する崩壊処理が行われる。その結果、パーツ30a〜30cの何れも残らない。
【0057】
更に、全体オブジェクトを構成する何れかのパーツが破壊された場合、該パーツの横方向に隣接して位置する他のパーツ30が「崩壊」して「半壊」する。図11は、「横」の位置関係に基づく「崩壊」を説明するための図であり、複合オブジェクト20Cの例を示している。同図(a)によれば、複合オブジェクト20Cは、3つのパーツ30a〜30cが一体となって構成されている。即ち、パーツ30a〜30cが、横一列に隣接して配置されている。そして、複合オブジェクト20Cを構成する何れかのパーツ30が破壊対象パーツとして「破壊」されると、該破壊対象パーツの横方向に隣接する他のパーツ30が「半壊」する。
【0058】
具体的には、同図(b)に示すように、パーツ30aが破壊対象パーツとして「破壊」された場合、このパーツ30aの横方向に隣接するパーツ30bが「半壊」する。即ち、パーツ30aが破壊用オブジェクト40に置き換えられるとともに、パーツ30bが半壊対象パーツとされて半壊用オブジェクト70に置き換えられ、置き換えられた破壊用オブジェクト40に対する破壊処理が行われる。このとき、パーツ30bは、破壊対象パーツであるパーツ30aと横方向で隣接しているため、パーツ30の側部が半壊した形状の横半壊用オブジェクト72に、その半壊部分がパーツ30aに隣接する向きで置き換えられる。その結果、パーツ30bに置き換わって配置された半壊用オブジェクト70と、パーツ30cとが残る。
【0059】
また、同図(c)に示すように、パーツ30bが破壊対象パーツとして「破壊」された場合、このパーツ30bの横方向に隣接して位置するパーツ30a,30cそれぞれが「半壊」する。即ち、パーツ30bが破壊用オブジェクト40に置き換えられるとともに、パーツ30a,30cそれぞれが半壊対象パーツとされて半壊用オブジェクト70に置き換えられ、置き換えられた破壊用オブジェクト40に対する破壊処理が行われる。このとき、パーツ30a,30cは、何れも、破壊対象パーツであるパーツ30bと横方向で隣接しているため、パーツ30の側部が半壊された形状の横半壊用オブジェクト72に、その半壊部分がパーツ30bに隣接する向きで置き換えられる。その結果、パーツ30に置き換わって配置された半壊用オブジェクト70と、パーツ30cに置き換わって配置された半壊用オブジェクト70とが残る。
【0060】
また、同図(d)に示すように、パーツ30cが破壊対象パーツとして「破壊」された場合、このパーツ30cの横方向に隣接して位置するパーツ30bが「半壊」する。即ち、パーツ30cが破壊用オブジェクト40に置き換えられるとともに、パーツ30bが半壊対象パーツとされて半壊用オブジェクト70に置き換えられ、置き換えられた破壊用オブジェクト40に対する破壊処理が行われる。このとき、パーツ30bは、破壊対象パーツであるパーツ30cと横方向で隣接しているため、パーツ30の側部が半壊した形状の半壊用オブジェクト70に、その半壊部分がパーツ30cに隣接する向きで置き換えられる。その結果、パーツ30aと、パーツ30bに置き換わって配置された半壊用オブジェクト70とが残る。
【0061】
更に、複合オブジェクトを構成する全壊対象パーツが「全壊」した場合、該全壊対象パーツの横方向に隣接して位置する他のパーツが、連鎖的に「崩壊」して「半壊」する。図12は、「全壊」に伴う連鎖的な「半壊」を説明するための図である。同図(a)によれば、複合オブジェクト20Dは、12個のパーツ30a〜30lが一体となって構成されている。即ち、パーツ30j,30k,30lが横一列に隣接しているとともに、パーツ30jの上方向にパーツ30g,30d,30aが配置され、パーツ30kの上方向にパーツ30h,30e,30bが配置され、パーツ30lの上方向にパーツ30i,30f,30cが配置されている。
【0062】
そして、同図(b)に示すように、パーツ30dが破壊対象パーツとして「破壊」された場合、このパーツ30dの上方向のパーツ30aが「崩壊」して「全壊」するとともに、下方向に隣接するパーツ30g及び横方向に隣接するパーツ30eそれぞれと、「全壊」したパーツ30aの横方向に隣接するパーツ30bが「半壊」する。
【0063】
即ち、パーツ30dが破壊用オブジェクト40に置き換えられるとともに、パーツ30e,30gそれぞれが半壊対象パーツとされて半壊用オブジェクト70に置き換えられ、置き換えられた破壊用オブジェクト40に対する破壊処理が行われる。このとき、パーツ30eは、破壊対象パーツであるパーツ30dと横方向で隣接しているため、パーツ30の側部が半壊した形状の横半壊用オブジェクト72と置き換えられ、パーツ30gは、パーツ30dと上部で隣接しているため、パーツ30の上部が半壊した形状の上半壊用オブジェクト71と置き換えられる。
【0064】
次いで、パーツ30aが落下して半壊用オブジェクト70の上面に接触すると、このパーツ30aが全壊対象パーツとされて全壊用オブジェクト60に置き換えられるとともに、パーツ30aの横方向に隣接して位置していたパーツ30bが半壊対象パーツとされて半壊用オブジェクト70に置き換えられ、置き換えられた全壊用オブジェクト60に対する崩壊処理が行われる。このとき、パーツ30bは、パーツ30と横方向で隣接しているため、横半壊用オブジェクト72と置き換えられる。その結果、パーツ30c,30f,30h〜30lと、パーツ30b,30eそれぞれに置き換わって配置された横半壊用オブジェクト72と、パーツ30gに置き換わって配置された上半壊用オブジェクト71とが残る。
【0065】
更に、本実施形態では、地上オブジェクトの破壊の際、破壊を強調する所定のエフェクト処理(以下、単に「エフェクト」という)が行われる。具体的には、複合オブジェクトを構成する各パーツの「破壊」或いは「崩壊」毎に、それぞれに応じたエフェクトが行われる。即ち、パーツの「破壊」の際には「破壊時エフェクト」が行われ、「崩壊」の際には「崩壊時エフェクト」が行われる。
【0066】
図13は、破壊時エフェクトの一例を示す図である。また、図14は、破壊時エフェクトを構成する各エフェクトパターンの出現タイミングの一例を示す図である。図13,図14によれば、破壊時には、破壊時エフェクトとして、「閃光エフェクト」、「煙エフェクト」及び「パーティクルエフェクト」の三種類が出現する。
【0067】
具体的には、先ず、閃光エフェクトが出現する。この閃光エフェクトは、移動体の衝突によって生じる爆発の閃光を表現したエフェクトであり、閃光オブジェクトLOが、例えば破壊対象パーツの移動体の衝突位置近傍に、短時間(例えば、1秒間)の間出現する。
【0068】
次いで、煙エフェクトが出現する。この煙エフェクトは、パーツの破壊による瓦礫や粉塵等の煙を表現したエフェクトであり、不透明オブジェクトでなる多数の煙オブジェクトSOが、破壊対象パーツや半壊対象パーツを覆い隠すように出現する。各煙オブジェクトSOは、風に流れる煙を表現するようにゆっくりと移動する。また、煙エフェクトの出現とともに(或いは、少し遅れて)、パーティクルエフェクトが出現する。このパーティクルエフェクトは、破壊によって飛び散る瓦礫等を表す粒子や発生した火花を表現したオブジェクトであり、多数のパーティクルオブジェクトPOが、煙エフェクトから飛び散るように出現する。そして、各煙オブジェクトSO及びパーティクルオブジェクトPOは、時間経過とともに徐々に透明になることで徐々に消滅し、出現から所定時間が経過すると、完全に消滅する。尚、これらのオブジェクトは、パーツや破片等の移動には影響を与えない。
【0069】
また、崩壊時エフェクトは、破壊時エフェクトとほぼ同様に行われる。即ち、崩壊時エフェクトとして、「煙エフェクト」及び「パーティクルエフェクト」の二種類が出現する点のみが破壊時エフェクトと異なり、それ以外の制御は破壊時エフェクトと同様である。
【0070】
図15は、崩壊時エフェクトを構成する各エフェクトパターンの出現タイミングの一例を示す図である。同図によれば、崩壊時には、先ず、煙エフェクトが出現する。この煙エフェクトは、不透明オブジェクトである多数の煙オブジェクトSOが、崩壊対象パーツや半壊対象パーツを覆い隠すように出現する。また、煙エフェクトの出現とともに(或いは、少し遅れて)、パーティクルエフェクトが出現する。このパーティクルエフェクトは、多数のパーティクルオブジェクトPOそれぞれが、煙エフェクトから飛び散るように出現する。そして、各煙オブジェクトSO及びパーティクルオブジェクトPOは、時間経過とともに徐々に透明になることで徐々に消滅し、出現から所定時間が経過すると、完全に消滅する。尚、これらのオブジェクトは、破壊制御部215によるパーツや破片等の移動には影響を与えない。
【0071】
[機能構成]
図16は、ゲーム装置1000の機能構成を示すブロック図である。同図によれば、ゲーム装置1000は、機能的には、操作入力部110と、処理部200と、画像表示部330と、音出力部350と、通信部370と、記憶部400とを備えて構成される。
【0072】
操作入力部110は、プレーヤによる操作入力を受け付け、操作に応じた操作信号を処理部200に出力する。この機能は、例えばボタンスイッチやレバー、ダイヤル、マウス、キーボード、タッチパネル、各種センサ等によって実現される。図1では、ゲームコントローラ1120がこれに該当する。
【0073】
処理部200は、ゲーム装置1000の全体制御やゲームの進行、画像生成等の各種演算処理を行う。この機能は、例えばCPU(CISC型、RISC型)やDSP等のプロセッサ、ASIC(ゲートアレイ等)等の演算装置やその制御プログラムにより実現される。図1では、制御ユニット1111に実装されたCPUがこれに該当する。また、処理部200は、主にゲームの実行に係る演算処理を行うゲーム演算部210と、ゲーム演算部210の処理によって求められた各種のデータに基づくゲーム画像を生成する画像生成部230と、効果音やBGM等のゲーム音を生成する音生成部250とを含んでいる。
【0074】
ゲーム演算部210は、操作入力部110から入力された操作信号や、記憶部400から読み出したプログラムやデータ等に基づいて種々のゲーム処理を実行する。本実施形態では、ゲーム演算部210は、移動体制御部211と、衝突判定部213と、破壊制御部215とを含み、ゲームプログラム410に従った戦闘ゲームを実行する。
【0075】
移動体制御部211は、戦闘機や戦車等から発射されるミサイル等の移動体を制御する。衝突判定部213は、移動体制御部211により制御される移動体と地上オブジェクトとの衝突を判定するとともに、移動体が衝突した地上オブジェクトの衝突位置を判定する。
【0076】
破壊制御部215は、衝突判定部213により移動体が衝突したと判定された地上オブジェクトを破壊させる処理を行う。具体的には、先ず、破壊対象パーツを特定する。即ち、移動体が衝突したと判定された地上オブジェクトの地上オブジェクトデータ421を参照して、衝突判定部213により判定された移動体の衝突位置から、該地上オブジェクトを構成する各パーツのうち移動体が衝突したパーツを特定し、特定したパーツを破壊対象パーツとする。
【0077】
図17は、地上オブジェクトデータ421のデータ構成の一例を示す図である。同図によれば、地上オブジェクトデータ421は、ゲーム空間に配置されている地上オブジェクト毎に生成され、該地上オブジェクトのオブジェクトID421aと、モデルデータ421bと、パーツ構成データ421cと、パーツデータ422とを格納している。
【0078】
パーツデータ422は、該地上オブジェクトを構成するパーツ毎に生成され、該パーツのパーツID422aと、質量422bと、位置姿勢422cと、移動速度422dと、置換フラグ422eと、置換オブジェクトID422fと、隣接位置関係データ422gと、置換用オブジェクトデータ422kとを格納している。置換フラグ422eは、該パーツが置換用オブジェクトに置き換えられたか否かを示すフラグである。置換用オブジェクトは、各パーツに置き換えられるオブジェクト、即ち破壊用オブジェクト40や全壊用オブジェクト60、半壊用オブジェクト70である。置換オブジェクトID422fは、該パーツが置換オブジェクトに置き換えられた際に、該置き換えられたオブジェクトのIDを格納する。
【0079】
隣接位置関係データ422gは、該パーツに隣接する他のパーツのデータであり、上方向に隣接する上パーツ422hと、下方向に隣接する下パーツ422iと、横方向に隣接する横パーツ422jとのそれぞれのパーツIDを格納している。置換用オブジェクトデータ422kは、該パーツに置き換えられる置換用オブジェクトを定めるデータであり、置換用オブジェクトの種別422l毎に、オブジェクトID422mを対応付けて格納している。該パーツは、この置換用オブジェクトデータ422kで定められる何れかのオブジェクトに置き換えられ、置き換えられたオブジェクトのオブジェクトIDが置換オブジェクトID422fに格納される。
【0080】
ここで、置換用オブジェクトデータ422kを、該地上オブジェクトの材質に応じて定めることにしても良い。具体的には、地上オブジェクトを形成する主な材質として、例えばレンガやコンクリート、鉄材といった材質を定めておく。そして、置換用オブジェクトとして、該地上オブジェクトと同一の材質の破片50から成るオブジェクトを、置換用オブジェクトとして置換用オブジェクトデータ422kに設定する。これにより、破壊或いは崩壊されたパーツ30と、この破壊或いは崩壊により飛び散る破片との材質とが一致した、より自然な破壊が実現される。
【0081】
或いは、置換用オブジェクトデータ422kを、該地上オブジェクトの壊れ易さに応じて定めることにしても良い。具体的には、地上オブジェクトの形成状態(例えば、材質や組み方等)を基に壊れ易さを定めておき、この壊れ易さに応じた大きさの破片50から成るオブジェクトを、置換用オブジェクトとして置換用オブジェクトデータ422kに設定する。
【0082】
また、置換用オブジェクトのうち、破壊用オブジェクト40のデータは破壊用オブジェクトデータ423に格納される。また、半壊用オブジェクト70のデータは半壊用オブジェクトデータ424に格納され、全壊用オブジェクト60のデータは全壊用オブジェクトデータ425に格納されている。
【0083】
図18は、破壊用オブジェクトデータ423のデータ構成の一例を示す図である。同図によれば、破壊用オブジェクトデータ423は、地上オブジェクトの各パーツ30に置き換えられるとして定められた破壊用オブジェクト40毎に生成され、該破壊用オブジェクト40のオブジェクトID423aと、モデルデータ423bと、構成破片データ423cとを格納している。構成破片データ423cは、該破壊用オブジェクト40を構成する各破片50について、破片ID423dと、質量423eと、相対位置姿勢423fとを対応付けて格納している。
【0084】
図19は、半壊用オブジェクトデータ424のデータ構成の一例を示す図である。同図によれば、半壊用オブジェクトデータ424は、上半壊用オブジェクト71の上半壊用オブジェクトデータ424−1と、横半壊用オブジェクト72の横半壊用オブジェクトデータ424−2とを含んでいる。上半壊用オブジェクトデータ424−1は、地上オブジェクトの各パーツ30に置き換えられるとして定められた上半壊用オブジェクト71毎に生成され、該上半壊用オブジェクト71のオブジェクトID424aと、モデルデータ424bと、質量424cとを格納している。また、横半壊用オブジェクトデータ424−2は、横半壊用オブジェクト72毎に生成され、不図示であるが、上半壊用オブジェクトデータ424−1と同様の構成である。
【0085】
図20は、全壊用オブジェクトデータ425のデータ構成の一例を示す図である。同図によれば、全壊用オブジェクトデータ425は、地上オブジェクトの各パーツに置き換えられるとして定められた全壊用オブジェクト60毎に生成され、該全壊用オブジェクト60のオブジェクトID425aと、モデルデータ425bと、構成破片データ425cとを格納している。構成破片データ425cは、該全壊用オブジェクト60を構成する各破片50について、破片ID425dと、質量425eと、相対位置姿勢425fとを対応付けて格納している。
【0086】
破壊対象パーツを特定すると、破壊制御部215は、該破壊対象パーツを「破壊」させる処理を行う。即ち、該破壊対象パーツと他の各パーツ30との間の隣接位置関係を基に、全壊対象パーツ及び半壊対象パーツを特定する。即ち、該破壊対象パーツのパーツデータ422を参照して、隣接位置関係データ422gで定められている上パーツを全壊対象パーツとするとともに、下パーツ及び横パーツのそれぞれを半壊対象パーツとする。
【0087】
特定した各パーツのデータは、置換対象パーツデータ426に格納される。図21は、置換対象パーツデータ426のデータ構成の一例を示す図である。同図によれば、置換対象パーツデータ426は、破壊対象パーツ426aと、全壊対象パーツ426bと、半壊対象パーツ426cとのそれぞれのパーツIDを格納している。
【0088】
続いて、破壊制御部215は、特定した破壊対象パーツを破壊用オブジェクト40に置き換えるとともに、半壊対象パーツを半壊用オブジェクト70に置き換える。即ち、破壊対象パーツについては、該破壊対象パーツのパーツデータ422を参照して、置換用オブジェクトデータ422kで定められる破壊用オブジェクト40に置き換え、半壊対象パーツについては、該半壊対象パーツのパーツデータ422を参照して、置換用オブジェクトデータ422kで定められる半壊用オブジェクト70に置き換える。このとき、半壊対象パーツは、破壊対象パーツとの隣接部分が半壊した形状の半壊用オブジェクト70に置き換える。即ち、半壊対象パーツが破壊対象パーツの横パーツならば横半壊用オブジェクト72に置き換え、下パーツならば上半壊用オブジェクト71に置き換える。
【0089】
破壊対象パーツに置き換えられてゲーム空間に配置された破壊用オブジェクト40のデータは、破壊用置換データ427に格納され、半壊対象パーツに置き換えられてゲーム空間に配置された半壊用オブジェクト70のデータは、半壊用置換データ428に格納される。
【0090】
図22は、破壊用置換データ427のデータ構成の一例を示す図である。同図によれば、破壊用置換データ427は、破壊対象パーツのパーツID427aと、該破壊対象パーツと置き換えた破壊用オブジェクト40のオブジェクトID427bと、作用力場ID427cとを格納しているとともに、該破壊用オブジェクト40を構成する各破片50について、破片ID427dと、位置姿勢427eと、移動速度427fと、移動力427gとを対応付けて格納している。作用力場ID427cは、該破壊用オブジェクト40に作用する破壊用力場80の力場IDを格納する。移動力427gは、破壊用力場80により各破片50に与えられる移動力Faを格納する。
【0091】
破壊用力場80のデータは、破壊用力場データ433に格納されている。図23は、破壊用力場データ433のデータ構成の一例を示す図である。同図によれば、破壊用力場データ433は、設定されている破壊用力場80の力場ID433aと、適用力場パターンID433bと、位置433cと、大きさ433dと、移動力433eと、経過時間433fとを格納している。適用力場パターンID433bは、該破壊用力場80に適用される力場パターンのパターンIDを格納する。位置433cは、該破壊用力場80の中心位置Oを格納する。大きさ433dは、該破壊用力場80の半径Rを格納する。経過時間433fは、該破壊用力場80の発生からの経過時間を格納する。
【0092】
力場パターンは、力場(即ち、破壊用力場80及び崩壊用力場90)の変化を制御するためのデータであり、力場の種類に応じた特性を定義したデータである。この力場パターンのデータは、力場パターンデータ435に格納されている。図24は、力場パターンデータ435のデータ構成の一例である。同図によれば、力場パターンデータ435は、力場パターン毎に生成され、該力場パターンのパターンID435aと、寿命435bと、大きさ設定データ435cと、移動力設定データ435dとを格納している。寿命435bは、力場の生成から消滅までの時間である。大きさ設定データ435cは、力場の発生からの経過時間tに対する大きさ(半径R)を定義したデータである。移動力設定データ435dは、力場の発生からの経過時間tに対する移動力Fを定義したデータである。
【0093】
また、図25は、半壊用置換データ428のデータ構成の一例を示す図である。同図によれば、半壊用置換データ428は、半壊対象パーツの半壊用オブジェクト70への置き換え毎に生成され、該半壊対象パーツのパーツID428aと、該半壊用オブジェクト70のオブジェクトID428bと、位置姿勢428cと、移動速度428dとを格納している。
【0094】
続いて、破壊制御部215は、破壊用力場80を設定する。即ち、破壊用力場選択テーブル431を参照して発生させる破壊用力場80に適用する力場パターンを選択し、選択した力場パターンを適用した破壊用力場80を発生させる。そして、破壊対象パーツの中心位置を破壊中心位置とし、発生させた破壊用力場80の中心位置Oをこの破壊中心位置に一致させて設定する。
【0095】
図26は、破壊用力場選択テーブル431のデータ構成の一例を示す図である。同図によれば、破壊用力場選択テーブル431は、ゲーム空間に配置された地上オブジェクトの種別431aと、地上オブジェクトに衝突する可能性のある移動体の種別431bと、力場パターンID431cとを対応付けて格納している。
【0096】
破壊制御部215は、破壊させる地上オブジェクトの種別と、該地上オブジェクトに衝突した移動体の種別との組み合わせに対応する力場パターンIDの力場パターンを、発生させる破壊用力場80に適用する。
【0097】
その後、破壊制御部215は、所定の処理単位時間間隔毎に、破壊用オブジェクト40を構成する各破片50のうち、破壊用力場80内に位置する破片50を、当該破壊用力場80により移動力Faが与えられる破片50として特定し、特定した各破片50に破壊用力場80に基づく移動力Faを積算的に付加・設定する。そして、設定した移動力Faや質量M、重力等に基づいて移動方向や移動速度V等を更新し、破壊用オブジェクト40を構成する各破片50や他のパーツ30等を移動させる。破壊用力場80により付与される移動力Faは、破片50の現在の運動に対して更に付加的・積算的に加えられる。従って、破壊用力場80内に位置する時間が長いほど、破片50の速度が加速度的に高まり、その方向は、破壊用力場80の中心から放射状に飛散する方向となる。
【0098】
また、破壊制御部215は、発生させた破壊用力場80を、適用させた力場パターンに従って制御する。即ち、該力場パターンの力場パターンデータ435を参照して、該破壊用力場80の発生からの経過時間tに応じた大きさ(半径R)及び移動力Faに再設定する処理を所定の単位時間間隔で繰り返し実行する。そして、発生からの経過時間が寿命に達すると、該破壊用力場80を消滅させる。従って、破壊用力場80が消滅した後は、破片50に新たな移動力が付与されることがないため、全ての破片50は、破壊用力場80の消滅時の運動量を保存し、力学的エネルギー保存の法則に従った物理シミュレーション演算により、自由落下運動をとるように制御される。
【0099】
また、破壊制御部215は、全壊対象パーツが在る場合、該全壊対象パーツを「崩壊」させる処理を行う。即ち、該全壊対象パーツが落下し、その下方に位置するオブジェクトの上面に接触すると、エフェクト制御部217による破壊時エフェクトが開始された後、破壊制御部215は、該全壊対象パーツのパーツデータ422を参照して、該全壊対象パーツを、置換用オブジェクトデータ422kで定められている全壊用オブジェクトに置き換える。尚、この全壊対象パーツの置き換えは、破壊時エフェクトの開始後に限らず、破壊時エフェクトの開始前、或いは同時に行っても良い。
【0100】
また、該全壊対象パーツと他の各パーツ30との間の隣接位置関係を基に、全壊対象パーツ及び半壊対象パーツを特定する。即ち、該全壊対象パーツのパーツデータ422を参照し、隣接位置関係データ422gで定められている上パーツを次の全壊対象パーツとするとともに、横パーツを半壊対象パーツとする。そして、特定した半壊対象パーツを半壊用オブジェクト70に置き換える。即ち、該半壊対象パーツのパーツデータ422を参照して、置換用オブジェクトデータ422kで定められる半壊用オブジェクト70に置き換える。このとき、半壊対象パーツは全壊対象パーツの横パーツであるので、横半壊用オブジェクト72の半壊部分を、該半壊対象パーツと隣接する方向に向けて配置する。
【0101】
ここで、全壊対象パーツと置き換えられた全壊用オブジェクト60のデータは全壊用置換データ429に格納され、半壊対象パーツと置き換えられた半壊用オブジェクト70のデータは半壊用置換データ428に格納される。
【0102】
図27は、全壊用置換データ429のデータ構成の一例を示す図である。同図によれば、全壊用置換データ429は、全壊対象パーツの全壊用オブジェクト60への置き換え毎に生成され、該全壊対象パーツのパーツID429aと、該全壊用オブジェクト60のオブジェクトID429bと、作用力場ID429cとを格納しているとともに、該全壊用オブジェクト60を構成する各破片50について、破片ID429dと、位置姿勢429eと、移動速度429fと、移動力429gとを対応付けて格納している。作用力場ID429cは、該全壊用オブジェクト60に作用する崩壊用力場90の力場IDを格納する。移動力429gは、崩壊用力場90により該破片50に与えられる移動力Fbを格納する。
【0103】
崩壊用力場90のデータは、崩壊用力場データ434に格納されている。図28は、崩壊用力場データ434のデータ構成の一例を示す図である。同図によれば、崩壊用力場データ434は、設定されている崩壊用力場90毎に生成され、該崩壊用力場90の力場ID434aと、適用力場パターンID434bと、位置434cと、大きさ434dと、移動力434eと、経過時間434fとを格納している。適用力場パターンID434bは、該崩壊用力場90に適用される力場パターンのパターンIDを格納する。この力場パターンのデータは、力場パターンデータ435に格納されている。位置434cは、該崩壊用力場90の中心位置Oを格納する。大きさ434dは、該崩壊用力場90の半径Rを格納する。経過時間434fは、該崩壊用力場90の発生からの経過時間を格納する。
【0104】
続いて、破壊制御部215は、崩壊用力場90を設定する。即ち、崩壊用力場選択テーブル432を参照して発生させる崩壊用力場90に適用する力場パターンを選択し、選択した力場パターンを適用した崩壊用力場90を発生させる。そして、該全壊対象パーツの接触面の中央位置を崩壊中心位置とし、発生させた崩壊用力場90の中心位置Oをこの崩壊中心位置に一致させて設定する。
【0105】
図29は、崩壊用力場選択テーブル432のデータ構成の一例を示す図である。同図によれば、崩壊用力場選択テーブル432は、ゲーム空間に配置された地上オブジェクトの種別432aと、地上オブジェクトに衝突する可能性のある移動体の種別432bと、力場パターンID432cとを対応付けて格納している。
【0106】
破壊制御部215は、破壊させる地上オブジェクトの種別及び該地上オブジェクトに衝突した移動体の種別の組み合わせに対応する力場パターンIDの力場パターンを、発生させる破壊用力場80に適用する。
【0107】
その後、破壊制御部215は、所定の処理単位時間間隔毎に、全壊用オブジェクト60を構成する破片50のうち、崩壊用力場90内に位置する破片50を、当該崩壊用力場90により移動力Fbが与えられる破片50として特定し、特定した各破片50に崩壊用力場90により与えられる移動力Fbを積算的に付加・設定する。そして、設定された移動力Fbや質量M、重力等に基づいて移動方向や移動速度Vを更新し、全壊用オブジェクトを構成する各破片50や他のパーツ30等を移動させる。更に、次の全壊対象パーツが在る場合には、同様に、該全壊対象パーツを「崩壊」させる処理を行う。
【0108】
エフェクト制御部217は、破壊制御部215による地上オブジェクトの破壊時に出現させるエフェクトを制御する。具体的には、破壊制御部215による破壊対象パーツの「破壊」が行われる際に、破壊時エフェクトを出現させる処理を行う。即ち、破壊時エフェクト選択テーブル441を参照し、出現させる破壊時エフェクトを選択する。
【0109】
図30は、破壊時エフェクト選択テーブル441のデータ構成の一例を示す図である、同図によれば、破壊時エフェクト選択テーブル441は、ゲーム空間に配置された地上オブジェクトの種別441aと、地上オブジェクトに衝突する可能性のある移動体の種別441bと、破壊時エフェクトID441cとを対応付けて格納している。
【0110】
エフェクト制御部217は、破壊制御部215により破壊される地上オブジェクトの種別と、該地上オブジェクトに衝突した移動体の種別との組み合わせに対応する破壊時エフェクトIDのエフェクトを、出現させるエフェクトとして選択する。そして、選択した破壊時エフェクトの破壊時エフェクトデータ443に従って、エフェクトを出現させる。このとき、例えば破壊対象パーツの中心位置をエフェクトの出現位置として設定し、この出現位置を基準として各エフェクトを出現させる。また、破壊制御部215により破壊対象パーツが破壊用オブジェクト40に置き換えられる前に、この破壊時エフェクトの出現を開始する。
【0111】
破壊時エフェクトのデータは、破壊時エフェクトデータ443に格納されている。図31は、破壊時エフェクトデータ443のデータ構成の一例を示す図である。同図によれば、破壊時エフェクトデータ443は、破壊時エフェクト毎に生成され、該破壊エフェクトのエフェクトID443aを格納しているとともに、エフェクト種別443b毎に、適用パターンID443cと、開始フレームID443dとを対応付けて格納している。開始フレームID443dは、対応する種別のエフェクトが開始されるフレームであり、該破壊時エフェクトの開始フレームを基準とした値を格納している。
【0112】
各エフェクトの種別毎のパターンのうち、閃光エフェクトのパターンデータは閃光パターンデータ445に格納され、煙エフェクトのパターンデータは煙パターンデータ447に格納され、パーティクルエフェクトのパターンデータはパーティクルパターンデータ451に格納されている。
【0113】
図32は、閃光パターンデータ445のデータ構成の一例を示す図である。同図によれば、閃光パターンデータ445は、閃光の種類に応じて当該閃光の特性が時間経過に従って定義されたデータであり、閃光パターンのパターンID445aと、出現させる閃光オブジェクトLOの閃光ID445bとを格納しているとともに、出現時点から消滅時点までの各フレーム445c毎に、該閃光オブジェクトLOのスケール445dと、透明度445eとを対応付けて格納している。スケール445dは、フレームの進行に伴って徐々に小さくなるように設定されている。透明度445eは、フレームの進行に伴って徐々に透明になるように設定されている。また、出現から消滅までのフレーム数(即ち、閃光オブジェクトLOの出現期間)は、閃光パターン毎に異なるように設定されている。従って、異なる閃光パターンを適用することで、閃光エフェクトの種類が可変されるとともに、閃光エフェクトの表示制御方法(大きさ)が可変される。
【0114】
閃光オブジェクトLOのモデルデータは、閃光モデルデータ445に格納されている。図33は、閃光モデルデータ445のデータ構成の一例を示す図である。同図によれば、閃光モデルデータ445は、閃光オブジェクトLO毎に、閃光ID446aと、モデルデータ446bとを対応付けて格納している。
【0115】
また、図34は、煙パターンデータ447のデータ構成の一例を示す図である。同図によれば、煙パターンデータ447は、煙の種類に応じて当該煙の特性が時間経過に従って定義されたデータであり、該煙パターンのパターンID447aを格納しているとともに、出現時点から消滅時点までの各フレーム447b毎に、出現させる各煙オブジェクトSOの相対位置447cと、色447dと、透明度447eとを対応付けて格納している。相対位置447c及び色447dは、煙パターン毎に変化が異なるように設定されている。透明度447eは、フレームの進行に伴って徐々に透明になるように設定されている。また、煙パターン毎に、出現から消滅までのフレーム数(即ち、煙オブジェクトSOの出現期間)が異なるように設定されているとともに、出現させる煙オブジェクトSOの数が異なるように設定されている。従って、異なる煙パターンを適用することで、煙エフェクトの表示制御方法(数、色)が可変される。
【0116】
煙オブジェクトSOのモデルデータは、煙モデルデータ448に格納されている。図35は、煙モデルデータ448のデータ構成の一例を示す図である。同図によれば、煙モデルデータ448は、煙オブジェクトSOのモデルデータを格納している。
【0117】
また、図36は、パーティクルパターンデータ451のデータ構成の一例を示す図である。同図によれば、パーティクルパターンデータ451は、パーティクルの種類に応じて当該パーティクルの特性が時間経過に従って定義されたデータであり、該パーティクルパターンのパターンID451aを格納しているとともに、出現時点から消滅時点までの各フレーム451b毎に、出現させる各パーティクルオブジェクトPOのパーティクルID451cと、相対位置451dと、色451eと、透明度451fとを対応付けて格納している。相対位置451dは、パーティクルパターン毎に変化が異なるように設定されている。透明度452fは、フレームの進行に伴って徐々に透明になるように設定されている。また、パーティクルパターン毎に、出現から消滅までのフレーム数(即ち、パーティクルオブジェクトPOの出現期間)が異なるように設定されているとともに、出現させるパーティクルオブジェクトPOの数や種類が異なるように設定されている。従って、異なるパーティクルパターンを適用することで、パーティクルエフェクトの種類が可変されるとともに、パーティクルエフェクトの表示制御方法(数)が可変される。
【0118】
パーティクルオブジェクトPOのモデルデータは、パーティクルモデルデータ452に格納されている。図37は、パーティクルモデルデータ452のデータ構成の一例を示す図である。同図によれば、パーティクルモデルデータ452は、パーティクルオブジェクトPO毎に、パーティクルID452aと、モデルデータ452bとを対応付けて格納している。
【0119】
また、エフェクト制御部217は、破壊制御部215による全壊対象パーツの「崩壊」が行われる毎に、崩壊時エフェクトを出現させる処理を行う。即ち、崩壊時エフェクト選択テーブル442を参照し、出現させる崩壊時エフェクトを選択する。
【0120】
図38は、崩壊時エフェクト選択テーブル442のデータ構成の一例を示す図である。同図によれば、崩壊時エフェクト選択テーブル442は、地上オブジェクトの種別442aと、地上オブジェクトに衝突する可能性がある移動体の種別442bと、崩壊時エフェクトID442cとを対応付けて格納している。
【0121】
エフェクト制御部217は、破壊制御部215により破壊される地上オブジェクトの種別と、該地上オブジェクトに衝突した移動体の種別との組み合わせに対応する崩壊時エフェクトIDのエフェクトを、出現させるエフェクトとして選択する。そして、選択した崩壊時エフェクトの崩壊時エフェクトデータ444に従って、エフェクトを出現させる。このとき、例えば崩壊対象パーツの下面の中央位置をエフェクトの出現位置として設定し、この出現位置を基準として各エフェクトを出現させる。また、破壊制御部215により全壊対象パーツが全壊用オブジェクト60に置き換えられる前に、この崩壊時エフェクトの出現を開始する。
【0122】
崩壊時エフェクトのデータは、崩壊時エフェクトデータ444に格納されている。図39は、崩壊時エフェクトデータ444のデータ構成の一例を示す図である。同図によれば、崩壊時エフェクトデータ444は、崩壊時エフェクト毎に生成され、該崩壊エフェクトのエフェクトID444aを格納しているとともに、エフェクト種別444b毎に、適用パターンID444cと、開始フレーム444dとを対応付けて格納している。開始フレーム444dは、対応する種別のエフェクトが開始されるフレームであり、該崩壊時エフェクトの開始フレームを基準とした値を格納している。
【0123】
各エフェクトの種別毎のパターンのうち、煙エフェクトのパターンデータは煙パターンデータ447に格納され、パーティクルエフェクトのパターンデータはパーティクルパターンデータ451に格納されている。
【0124】
図16において、画像生成部230は、ゲーム演算部210による演算結果に基づき、ゲーム画面を表示するためのゲーム画像を生成し、生成した画像の画像信号を画像表示部330に出力する。画像表示部330は、画像生成部230からの画像信号に基づいて、所定の単位時間間隔、例えば1/60秒毎に1フレームの画面を再描画しながらゲーム画面を表示する。この機能は、例えばCRT、LCD、ELD、PDP、HMD等のハードウェアによって実現される。図1では、ディスプレイ1130がこれに該当する。
【0125】
音生成部250は、ゲーム中に使用される効果音やBGM等のゲーム音を生成し、生成したゲーム音の音信号を音出力部350に出力する。音出力部350は、音生成部250からの音信号に基づいてBGMや効果音等のゲーム音声を出力する。この機能は、例えばスピーカ等によって実現される。図1では、スピーカ1131がこれに該当する。
【0126】
通信部370は、処理部200からの制御信号に従って通信回線Nに接続し、外部装置とのデータ通信を行う。この機能は、無線通信モジュール、有線用の通信ケーブルのジャックや制御回路などによって実現される。図1では、通信装置1115がこれに該当する。
【0127】
記憶部400は、処理部200にゲーム装置1000を統合的に制御させるための諸機能を実現するためのシステムプログラムや、ゲームを実行させるために必要なプログラムやデータ等を記憶するとともに、処理部200の作業領域として用いられ、処理部200が各種プログラムに従って実行した演算結果や操作入力部110から入力される入力データ等を一時的に記憶する。この機能は、例えば各種ICメモリやハードディスク、CD−ROM、DVD、MO、RAM、VRAM等によって実現される。図1では、システム基板上のメモリがこれに該当する。
【0128】
本実施形態では、記憶部400は、プログラムとしてゲーム演算部210を破壊制御部215として機能させるための破壊プログラム415と、エフェクト制御部217として機能させるためのエフェクトプログラム417とを含むゲームプログラム410を記憶しているとともに、データとして、地上オブジェクトデータ421と、破壊用オブジェクトデータ423と、半壊用オブジェクトデータ424と、全壊用オブジェクトデータ425と、置換対象パーツデータ426と、破壊用置換データ427と、半壊用置換データ428と、全壊用置換データ429と、破壊用力場選択テーブル431と、崩壊用力場選択テーブル432と、破壊用力場データ433と、崩壊用力場データ434と、力場パターンデータ435と、破壊時エフェクト選択テーブル441と、崩壊時エフェクト選択テーブル442と、破壊時エフェクトデータ443と、崩壊時エフェクトデータ444と、閃光パターンデータ445と、閃光モデルデータ446と、煙パターンデータ447と、煙モデルデータ448と、パーティクルパターンデータ451と、パーティクルモデルデータ452とを記憶している。
【0129】
[処理の流れ]
図40は、本実施形態におけるゲーム処理の流れを説明するためのフローチャートである。この処理は、ゲーム演算部210がゲームプログラム410を実行することで実現される。同図によれば、ゲーム演算部210は、操作入力部110からの操作データに従って、プレーヤキャラクタを制御するとともに(ステップA1)、他のキャラクタの制御やゲーム時間の経過といったゲーム進行制御を行う(ステップA3)。また、移動体制御部211が、移動体を制御する(ステップA5)。次いで、衝突判定部213が、移動体とゲーム空間に配置されている各地上オブジェクトとの衝突を判定する(ステップA7)。その結果、衝突したと判定されたならば(ステップA9:YES)、該衝突したと判定された地上オブジェクトに対する破壊処理を開始する(ステップA11)。その後、ゲーム演算部210は、ゲームを終了するか否かを判断し、終了しないならば(ステップA13:NO)、ステップA1に戻り、ゲーム終了するならば(ステップA13:YES)、本ゲーム処理を終了する。このステップA1〜A3までの処理を所定の単位時間間隔毎(例えば、フレーム時間毎)に繰り返し実行する。
【0130】
図41は、破壊処理の流れを説明するためのフローチャートである。同図によれば、破壊制御部215は、衝突が判定された地上オブジェクトの地上オブジェクトデータ421を参照して、該地上オブジェクトを構成する各パーツ30のうち、破壊対象パーツを特定する(ステップB1)。次いで、特定した破壊対象パーツのパーツデータ422を参照して、全壊対象パーツ及び半壊対象パーツを特定する(ステップB3)。
【0131】
そして、エフェクト制御部217が、破壊時エフェクトを開始する(ステップB5)。即ち、破壊時エフェクト選択テーブル441を参照して、出現させる破壊時エフェクトを選択し、選択した破壊時エフェクトの破壊時エフェクトデータ443に従って、閃光エフェクト、煙エフェクト及びパーティクルエフェクトのそれぞれを出現させる。
【0132】
その後、破壊制御部215は、特定した破壊対象パーツを、該破壊対象パーツのパーツデータ422を参照して、置換用オブジェクトデータ422kで定められる破壊用オブジェクト40に置き換える(ステップB7)。また、半壊対象パーツが在るならば(ステップB9:YES)、該半壊対象パーツそれぞれを、該半壊対象パーツのパーツデータ422を参照して、置換用オブジェクトデータ422kで定められる半壊用オブジェクト70に置き換える(ステップB11)。次いで、破壊用力場選択テーブル431を参照して選択した力場パターンを適用した破壊用力場80を発生させ、発生させた破壊用力場80の中心位置Oを、破壊中心位置として定めた、例えば該破壊対象パーツの中心位置と一致させて設定する(ステップB13)。
【0133】
続いて、破壊制御部215は、所定の単位時間間隔毎(例えば、フレーム時間毎)にループAの処理を行う。ループAでは、破壊用力場80が在るか否かを判断し、在るならば(ステップB15:YES)、破壊用オブジェクト40を構成する各破片50のうち、現在の大きさの破壊用力場80内に位置する破片50を、当該破壊用力場80により移動力Faが与えられる破片50として特定する(ステップB17)。そして、特定した各破片50に、破壊用力場80の現在の移動力Fbによる移動力Faを更に与える(ステップB19)。
【0134】
また、崩壊用力場90が在るか否かを判断し、在るならば(ステップB21:YES)、崩壊用力場90毎にループBの処理を行う。ループBでは、該崩壊用力場90が作用する全壊用オブジェクト60を構成する各破片50のうち、現在の大きさの該崩壊用力場90内に位置する破片50を、当該崩壊用力場90により移動力Fbが与えられる破片50として特定する(ステップB23)。そして、特定した各破片50に、該崩壊用力場90の現在の移動力Fbを更に与える(ステップB25)。
【0135】
ループBはこのように行われる。崩壊用力場90それぞれついてのループBの処理を行うと、次いで、破壊制御部215は、該地上オブジェクトを構成する各パーツ30や各破片50それぞれについて、新たに与えられた移動力Fa,Fbや質量M等に基づいて、新たな移動方向や移動速度V等を算出して移動させる(ステップB27)。
【0136】
続いて、破壊制御部215は、全壊対象パーツが在るか否かを判断し、在るならば(ステップB29:YES)、該全壊対象パーツが落下したか否かを判断する。その結果、落下したと判断したならば(ステップB31:YES)、該全壊対象パーツのパーツデータ422を参照して、全壊対象パーツ及び半壊対象パーツを特定する(ステップB33)。次いで、エフェクト制御部217が、崩壊時エフェクトを開始する(ステップB35)。即ち、崩壊時エフェクト選択テーブル442を参照して、出現させる崩壊時エフェクトを選択し、選択した崩壊時エフェクトの崩壊時エフェクトデータ444に従って、煙エフェクト及びパーティクルエフェクトのそれぞれを出現させる。
【0137】
その後、破壊制御部215が、全壊対象パーツを、該全壊対象パーツのパーツデータ422を参照して、置換用オブジェクトデータ422kで定められる全壊用オブジェクト60に置き換える(ステップB37)。また、半壊対象パーツが在るならば(ステップB39:YES)、該半壊対象パーツそれぞれを、該半壊対象パーツのパーツデータ422を参照して、置換用オブジェクトデータ422kで定められる半壊用オブジェクト70に置き換える(ステップB41)。次いで、崩壊用力場選択テーブル432を参照して選択した力場パターンを適用した崩壊用力場90を発生させ、発生させた崩壊用力場90の中心位置Oを、崩壊中心位置として定めた、例えば該全壊対象パーツの下面の位置に一致させて設定する(ステップB43)。
【0138】
続いて、破壊制御部215は、該地上オブジェクトを構成する全てのパーツ30及び破片50が静止したか否かを判断し、静止していないならば(ステップB45:NO)、破壊用力場80及び崩壊用力場90それぞれの再設定を行う(ステップB47)。即ち、破壊用力場80については、破壊用力場データ433を参照して、発生からの経過時間が寿命に達したか否かを判断し、達したならば、該破壊用力場80を消滅させ、達していないならば、該破壊用力場80に適用されている力場パターンの力場パターンデータ435を参照して、経過時間に応じた大きさ(半径R)及び移動力Faに更新する。また、崩壊用力場90それぞれについても同様に、該崩壊用力場90の崩壊用力場データ434を参照して、発生からの経過時間が寿命に達したか否かを判断し、達したならば、該崩壊用力場90を消滅させ、達していないならば、経過時間に応じた大きさ(半径R)及び移動力Fbに更新する。一方、全てのパーツ30及び破片50が静止したならば(ステップB45:YES)、ループAの処理を終了する。ループAはこのように行われる。以上の処理を行うと、本破壊処理を終了する。
【0139】
[作用・効果]
このように、本実施形態によれば、移動体が地上オブジェクトに衝突すると、該地上オブジェクトを構成する各パーツ30のうち、該移動体が衝突したパーツ30が破壊対象パーツとして特定され、特定された破壊対象パーツが、複数の破片50が集合して構成される破壊用オブジェクト40に置換えられる。また、破壊用力場80が設定され、破壊用オブジェクト40の各破片50が、この破壊用力場80によって与えられた移動力Faを基に移動制御される。破壊用力場80は、時間経過に従って徐々に大きくなるとともに移動力Faが小さくなるように制御され、発生から所定時間が経過すると消滅する。即ち、破壊対象パーツを破壊用オブジェクト40に置き換えるとともに、破壊用力場80を発生させて徐々に膨張させ、この破壊用力場80により与えられる移動力Faに基づく移動力Faを与えることで、各破片50を移動させて飛散させるといった、新たな破壊の表現が実現される。
【0140】
また、特定された破壊対象パーツの下方向及び横方向のそれぞれに隣接する他のパーツが半壊対象パーツとされて半壊用オブジェクト70に置き換えられるとともに、上方向に隣接する他のパーツ30が全壊対象パーツとされる。そして、この全壊対象パーツが落下すると、該全壊対象パーツが複数の破片50が集合して構成される全壊用オブジェクト60に置き換えられるとともに、該全壊対象パーツの上方向に隣接する他のパーツ30が次の全壊用対象パーツとされ、横方向に隣接する他のパーツ30が半壊対象パーツとされて半壊用オブジェクト70に置き換えられる。そして、崩壊用力場90が設定され、全壊対象パーツの各破片50が、この崩壊用力場90によって与えられた移動力Fbを基に移動制御される。破壊用力場80は、破壊用力場80と同様に、時間経過に従って徐々に大きくなるとともに移動力Fbが小さくなるように制御され、発生から所定時間が経過すると消滅する。即ち、破壊対象パーツが破壊されると、該破壊対象パーツの上方に位置する他のパーツ30が落下し、連鎖的に崩壊して全壊するといった、リアル且つ派手な破壊の演出が実現される。
【0141】
また、破壊時には破壊時エフェクトが出現し、崩壊時には崩壊時エフェクトが出現する。具体的には、破壊時には、破壊対象パーツの破壊用オブジェクト40への置き換えに先立ち、破壊時エフェクトが出現し、崩壊時には、全壊対象パーツの全壊用オブジェクト60への置き換えに先立ち、崩壊時エフェクトが出現する。これにより、破壊或いは崩壊を強調するような演出を実現するとともに、各パーツのオブジェクトへの置き換えの際に画像の不自然さが生じ得る部分を視覚的に隠すといったことが可能となる。
【0142】
[変形例]
尚、本発明を適用可能な実施形態は、上述の実施形態に限定されること無く、本発明の趣旨を逸脱しない範囲で適宜変更可能なのは勿論である。
【0143】
(A)破壊用力場80及び崩壊用力場90
例えば、上述の実施形態では、破壊用力場80及び崩壊用力場90は、何れも球体の領域とし、半径Rが徐々に大きくなるように膨張することにしたが、形状はこれに限らず、また、全方向に均一に膨張するのではなく、不均一に膨張することにしても良い。例えば、直方体の領域とし、横方向(ゲーム空間における水平方向)にのみ膨張することとすれば、破片が横方向に飛散する様子を表現することができる。ミサイルや爆弾等の移動体の種類に応じて、このような力場を用いても良い。
【0144】
また、上述の実施形態では、地上オブジェクトの種別及び該地上オブジェクトに衝突した移動体の種別の組み合わせに応じて、破壊用力場80及び崩壊用力場90それぞれを設定することにしたが、これを、該地上オブジェクトの周囲の環境に応じて設定することにしても良い。具体的には、例えば晴天や暴風雨、雪といった天候に応じて、設定する力場に適用する力パターンを可変する。また、地上オブジェクトが、地上に配置された通常の状態か水没した特別な状態かといった状況に応じて可変することにしても良い。
【0145】
また、上述の実施形態では、破壊用力場80及び崩壊用力場90は、発生から所定時間が経過する(即ち、定められた寿命に達する)と消滅することにしたが、これを、大きさが所定の大きさに達する(具体的には、半径Rが所定の半径Reに達する)と消滅することにしても良い。
【0146】
また、破壊用力場80及び崩壊用力場90は、寿命に達すると消滅するとしたが、徐々に縮小する(即ち、半径Rが徐々に短くなる)ことで消滅するようにしても良い。
【0147】
上述の実施形態では、破壊対象パーツの中心位置を破壊中心位置として定め、この破壊中心位置に破壊用力場80の中心位置Oを一致させて設定させることにしたが、破壊用力場80を、これ以外の位置に設定しても良い。具体的には、例えば、破壊対象パーツの移動体が衝突した位置を破壊中心位置とし、この破壊中心位置に破壊用力80の中心位置Oを一致させて設定する。
【0148】
また、繰り返し行われる全壊対象パーツの「崩壊」毎に、設定する崩壊用力場90を可変することにしても良い。具体的には、例えば、崩壊毎に設定する崩壊用力場90の寿命を長くする。これにより、崩壊の繰り返し毎に、各破片50に積算的に与えられる移動力が大きくなり、その結果、該破片50の飛散距離が長くなる。従って、連鎖的な破壊を繰り返す毎に、破壊の規模が徐々に大きくなるような表現が実現される。或いは、崩壊の繰り返し毎に、設定する崩壊用力場90が作用する移動力Fbを大きくすることにしても良い。この場合も同様に、崩壊の繰り返し毎に各破片50に与えられる移動力Fbが大きくなってその飛散距離が長くなる。
【0149】
(B)移動力付与オブジェクト
また、上述の実施形態では、破壊用力場80及び崩壊用力場90それぞれを領域とし、この領域内に位置する破片50に移動力Fa,Fbを与えることにしたが、これを、破壊用力場80或いは崩壊用力場90を表すオブジェクト(移動力付与オブジェクト)を配置し、このオブジェクトに接触した破片50に移動力を与えることにしても良い。具体的には、図42に示すように、破壊用オブジェクト40の中心位置に、破壊用力場80に相当する球体の力場オブジェクト82を、先ずは半径0(ゼロ)で出現させる。そして、この力場オブジェクト82を、例えば半径Rを徐々に大きくすることで膨張させ、この力場オブジェクト82の表面に接触した破片50に移動力Faを与える。
【0150】
この力場オブジェクト82は、ポリゴンにより形成されたモデルである。そして、従来と同様のヒットチェック演算により、力場オブジェクト82と各破片50との接触が判定される。尚、力場オブジェクト82の形状は、球体に限らず、他の形状であっても勿論良い。また、崩壊用力場90についても同様である。
【0151】
また、力場オブジェクト82は、透明ポリゴンにより形成された不可視オブジェクトとしても良いし、可視オブジェクトとしても良い。可視オブジェクトとする場合、例えば、爆弾や火の玉等を模した球体のオブジェクトを移動力付与オブジェクトとして出現させることで、更なる破壊の演出が可能となる。更に、移動体付与オブジェクトとして可視オブジェクトを出現させた後、透明度を徐々に上げ、最終的には不可視とすることにしても良い。
【0152】
(C)移動力
また、上述の実施形態では、破壊用力場80及び崩壊用力場90それぞれにより与えられる移動力Fa,Fbは該力場内で均一であるとしたが、不均一としても良い。具体的には、例えば、力場の中心位置Oが最も大きく、この中心位置Oから離れるに従って、徐々に移動力Fが小さくなるように設定する。
【0153】
また、破壊用力場80及び崩壊用力場90それぞれが各破片50に与える移動力Fa,Fbは、時間経過に従って徐々に小さくなることにしたが、徐々に大きくなることにしても良いし、或いは一定であるとしても良い。また、上述の実施形態では、破壊用力場80及び崩壊用力場90は、それぞれ、各破片50に移動力Fa,Fbを与えることにしたが、これを、加速度α或いは移動速度Vを与えることにしても良い。
【0154】
また、破壊用力場80及び崩壊用力場90それぞれが各破片50に与える移動力Fa,Fbの方向は、該力場の中心位置Oから該破片の代表点Qに向かう方向としたが、例えば風向きや風力に応じた方向とする、或いはランダムな方向にするといった、これ以外の方向としても良い。
【0155】
(D)エフェクト
また、エフェクトとして、ゲーム空間に光源を設定することにしても良い。具体的には、例えば破壊時エフェクトにおいて、破壊対象パーツの中心位置に、短時間(例えば、1秒間)の間、点光源を出現させる。このとき、破壊対象パーツを含む地上オブジェクトの種別や衝突した移動体の種別に応じて、出現させる光源の色彩や発光時間、強さ等を可変することにしても良い。また、この光源の出現は、破壊対象パーツの中心位置に限らず、他の位置、例えば移動体が衝突した位置としても良い。更に、光源の種類は、点光源以外でも勿論良い。
【0156】
また、エフェクトとして光源のみを設定することにしても良い。この場合、破壊対象パーツの破壊用オブジェクト40への置き換え部分を視覚的に遮るように、光源を、少し長めの時間(例えば、5秒間)の間出現させるとともに、その強さを、光が当たることにより破壊対象パーツの色や輪郭を視覚的に認識できない程度の強さに設定することが望ましい。
【0157】
(E)破壊速度を可変
また、破壊対象パーツの破壊に伴い他のパーツ30が崩壊する一連の処理の速度(以下、「破壊速度」という)を可変することにしても良い。具体的には、例えば、破壊用オブジェクト40及び全壊用オブジェクト60の各破片50や各パーツ30の移動速度を可変することで実現する。即ち、破片50及びパーツ30の移動制御の際、破壊用力場80或いは崩壊用力場90により与えられた移動力Fa,Fbや現在の移動速度V等を基に算出された移動速度を、所定係数を乗じることで少し速くする或いは遅くするように可変することで、破壊速度を可変する。或いは、全壊対象パーツの全壊用オブジェクト60への置き換えのタイミングを可変することで実現する。即ち、上述の実施形態では、全壊対象パーツの落下(接触)が判定されたタイミングで、該全壊対象パーツを全壊用オブジェクト60に置き換えたが、これを、落下が判定されてから所定時間(例えば、数フレーム時間程度)が経過した後、或いは、全壊対象パーツとその下方に位置するオブジェクトの上面との間の距離が所定距離に達した時点で全壊対象パーツを全壊用オブジェクト60に置き換えることで、破壊速度を可変する。また、この破壊速度の可変は、地上オブジェクトに衝突した移動体の種類(例えば、ミサイルや爆弾)、或いは、移動体が衝突した地上オブジェクトの種類(例えば、ビルや塔)に応じて決定するとしても良い。
【0158】
(F)破壊対象オブジェクト
また、上述の実施形態では、破壊対象オブジェクトを地上に配置されている地上オブジェクトとしたが、これ以外にも、例えば水中を移動する潜水艦や、空中を飛行する戦闘機、地上を移動する戦車といった他のオブジェクトとしても良い。
【0159】
(G)適用するゲーム装置
また、上述の実施形態では、家庭用ゲーム装置に適用した場合を説明したが、業務用ゲーム装置や携帯型ゲーム装置といった、他のゲーム装置にも同様に適用可能である。
【0160】
(H)適用するゲーム
また、戦闘ゲームに適用した場合を説明したが、飛行機ゲームにおいて被弾した飛行機が破壊されるといった、移動体が衝突することでオブジェクトが破壊される表現が含まれるゲームであれば、同様に適用可能なのは勿論である。
【図面の簡単な説明】
【0161】
【図1】ゲーム装置の外観例。
【図2】破壊の原理の説明図。
【図3】破壊用オブジェクトの説明図。
【図4】破壊用力場の説明図。
【図5】上下の位置関係に基づく崩壊の説明図。
【図6】半壊用オブジェクトの説明図。
【図7】全壊用オブジェクトの説明図。
【図8】崩壊の原理の説明図。
【図9】破壊用力場の他の設定例。
【図10】破壊に伴う連鎖的な崩壊の説明図。
【図11】横の位置関係に基づく崩壊の説明図。
【図12】崩壊に伴う連鎖的な崩壊の説明図。
【図13】破壊時エフェクトの説明図。
【図14】破壊時エフェクトの各エフェクトの出現タイミングの説明図。
【図15】崩壊時エフェクトの各エフェクトの出現タイミングの説明図。
【図16】ゲーム装置の機能構成例。
【図17】地上オブジェクトデータのデータ構成例。
【図18】破壊用オブジェクトデータのデータ構成例。
【図19】半壊用オブジェクトデータのデータ構成例。
【図20】全壊用オブジェクトデータのデータ構成例。
【図21】置換対象パーツデータのデータ構成例。
【図22】破壊用置換データのデータ構成例。
【図23】破壊用力場データのデータ構成例。
【図24】力場パターンデータのデータ構成例。
【図25】半壊用置換データのデータ構成例。
【図26】破壊用力場選択テーブルのデータ構成例。
【図27】全壊用置換データのデータ構成例。
【図28】崩壊用力場データのデータ構成例。
【図29】崩壊用力場選択テーブルのデータ構成例。
【図30】破壊時エフェクト選択テーブルのデータ構成例。
【図31】破壊時エフェクトデータのデータ構成例。
【図32】閃光パターンデータのデータ構成例。
【図33】閃光モデルデータのデータ構成例。
【図34】煙パターンデータのデータ構成例。
【図35】煙モデルデータのデータ構成例。
【図36】パーティクルパターンデータのデータ構成例。
【図37】パーティクルモデルデータのデータ構成例。
【図38】崩壊時エフェクト選択テーブルのデータ構成例。
【図39】崩壊時エフェクトデータのデータ構成例。
【図40】ゲーム処理の流れ図。
【図41】ゲーム処理中に実行される破壊処理の流れ図。
【図42】破壊用力場及び崩壊用力場の変形例。
【符号の説明】
【0162】
1000 ゲーム装置
200 処理部
210 ゲーム演算部
211 移動体制御部
213 衝突判定部
215 破壊制御部
217 エフェクト制御部
400 記憶部
410 ゲームプログラム
421 地上オブジェクトデータ
423 破壊用オブジェクトデータ
424 半壊用オブジェクトデータ
425 全壊用オブジェクトデータ
426 置換対象パーツデータ
427 破壊用置換データ
428 半壊用置換データ
429 全壊用置換データ
431 破壊用力場選択テーブル
432 崩壊用力場選択テーブル
433 破壊用力場データ
434 崩壊用力場データ
435 力場パターンデータ
441 破壊時エフェクト選択テーブル
442 崩壊時エフェクト選択テーブル
443 破壊時エフェクトデータ
444 崩壊時エフェクトデータ
445 閃光パターンデータ
446 閃光モデルデータ
447 煙パターンデータ
448 煙モデルデータ
451 パーティクルパターンデータ
452 パーティクルモデルデータ
10 破壊対象オブジェクト
20 複合オブジェクト
30 パーツ
40 破壊用オブジェクト
50 破片オブジェクト(破片)
60 全壊用オブジェクト
70 半壊用オブジェクト
71 上半壊用オブジェクト
72 横半壊用オブジェクト
80 破壊用力場
90 崩壊用力場

【特許請求の範囲】
【請求項1】
コンピュータに、ゲーム空間の画像を生成させてゲームを進行制御させるためのプログラムであって、
前記ゲーム空間に配置され、パーツオブジェクト間の上下位置関係が予め設定された複数のパーツオブジェクトで一体的に構成された全体オブジェクトのうち、破壊対象のパーツオブジェクトを選択する選択手段、
前記選択手段により選択されたパーツオブジェクトを破壊する破壊処理手段、
前記破壊されたパーツオブジェクトの上方に位置する上方位置パーツオブジェクトを、前記上下位置関係から検索する上方位置パーツ検索手段、
前記検索された上方位置パーツオブジェクトを一体的に落下させる落下制御手段、
前記落下制御手段により落下された上方位置パーツオブジェクトのうち、前記破壊処理手段により破壊されたパーツオブジェクトの位置に落下したパーツオブジェクトを破壊する二次破壊処理手段、
として機能させるためのプログラム。
【請求項2】
前記二次破壊処理手段により破壊されたパーツオブジェクトの上方に位置する上方位置パーツオブジェクトの前記上方位置パーツ検索手段による検索と、前記検索された上方位置パーツオブジェクトの前記落下制御手段による一体的な落下と、前記破壊処理手段により破壊されたパーツオブジェクトの位置に落下したパーツオブジェクトの前記二次破壊処理手段による破壊との一連の処理を繰り返し実行させる繰り返し制御手段として前記コンピュータを機能させるための請求項1に記載のプログラム。
【請求項3】
前記繰り返し制御手段が、繰り返し実行する一連の処理の実行速度を可変する処理速度可変手段を有するように前記コンピュータを機能させるための請求項2に記載のプログラム。
【請求項4】
前記処理速度可変手段が、ゲームの進行状況に応じて前記一連の処理の実行速度を可変するように前記コンピュータを機能させるための請求項3に記載のプログラム。
【請求項5】
所与の移動体を移動制御する移動体移動制御手段として前記コンピュータを機能させるとともに、
前記選択手段が、前記複数のパーツオブジェクトのうち、前記移動制御された移動体が衝突したパーツオブジェクトを選択し、
前記処理速度可変手段が、前記選択されたパーツオブジェクトに衝突した移動体の種類に応じて前記一連の処理の実行速度を可変に決定する、
ように前記コンピュータを機能させるための請求項3又は4に記載のプログラム。
【請求項6】
前記ゲーム空間に配置された全体オブジェクトには、複数種類の全体オブジェクトがあり、
前記処理速度可変手段が、前記選択手段により選択された破壊対象のパーツオブジェクトを含む全体オブジェクトの種類に応じて前記一連の処理の実行速度を可変に決定するように前記コンピュータを機能させるための請求項3〜5の何れか一項に記載のプログラム。
【請求項7】
前記破壊処理手段及び前記二次破壊処理手段によるパーツオブジェクトの破壊に応じて、所与の破片オブジェクトを、飛散距離を可変して飛散させる制御を行う飛散制御手段として前記コンピュータを機能させるための請求項1〜6の何れか一項に記載のプログラム。
【請求項8】
前記破壊処理手段及び前記二次破壊処理手段によるパーツオブジェクトの破壊に応じて、所与の破片オブジェクトを飛散させる制御を行うとともに、前記繰り返し制御手段による繰り返し実行に応じて徐々に飛散距離が大きくなるように前記所与の破片オブジェクトの飛散の制御を行う飛散制御手段として前記コンピュータを機能させるための請求項2〜6の何れか一項に記載のプログラム。
【請求項9】
前記選択手段により選択されたパーツオブジェクトの下方に隣接するパーツオブジェクトを前記上下位置関係から検索する下方隣接パーツ検索手段、
前記下方隣接パーツ検索手段により検索されたパーツオブジェクトを、上部が半壊された所定のパーツオブジェクトに置き換える上部半壊パーツ置き換え手段、
として前記コンピュータを機能させるための請求項1〜8の何れか一項に記載のプログラム。
【請求項10】
前記全体オブジェクトには、更に、当該全体オブジェクトを構成する各パーツオブジェクト間の横位置関係が予め設定されており、
前記選択手段により選択されたパーツオブジェクトの横方向に隣接するパーツオブジェクトを前記横位置関係から検索する第1の横隣接パーツ検索手段、
前記第1の横隣接パーツ検索手段により検索されたパーツオブジェクトを、前記選択手段により選択されたパーツオブジェクトとの隣接部分が半壊された所定のパーツオブジェクトに置き換える第1の横部半壊パーツ置き換え手段、
として前記コンピュータを機能させるための請求項1〜9の何れか一項に記載のプログラム。
【請求項11】
前記上方位置パーツ検索手段により検索された各上方位置パーツオブジェクトそれぞれの横方向に隣接するパーツオブジェクトを前記横位置関係から検索する第2の横隣接パーツ検索手段、
前記第2の横隣接パーツ検索手段により検索されたパーツオブジェクトを、上方位置パーツオブジェクトとの隣接部分が半壊された所定のパーツオブジェクトに置き換える第2の横部半壊パーツ置き換え手段、
として前記コンピュータを機能させるための請求項1〜10の何れか一項に記載のプログラム。
【請求項12】
コンピュータに、ゲーム空間の画像を生成させてゲームを進行制御させるためのプログラムであって、
前記ゲーム空間に配置され、パーツオブジェクト間の横方向の位置関係である横位置関係が予め設定された複数のパーツオブジェクトで一体的に構成された全体オブジェクトのうち、破壊対象のパーツオブジェクトを選択する選択手段、
前記選択手段により選択されたパーツオブジェクトを破壊する破壊処理手段、
前記破壊されたパーツオブジェクトの横方向に隣接するパーツオブジェクトを、前記横位置関係から検索する横隣接パーツ検索手段、
前記横隣接パーツ検索手段により検索されたパーツオブジェクトを、前記破壊処理手段により破壊されたパーツオブジェクトとの隣接部分が半壊された所定のパーツオブジェクトに置き換える横部半壊パーツ置換手段、
として前記コンピュータを機能させるためのプログラム。
【請求項13】
請求項1〜12の何れか一項に記載のプログラムを記憶したコンピュータ読み取り可能な情報記憶媒体。
【請求項14】
ゲーム空間の地表面上に配置され、パーツオブジェクト間の上下位置関係が予め設定された複数のパーツオブジェクトで一体的に構成された全体オブジェクトのうち、破壊対象のパーツオブジェクトを選択する選択手段と、
前記選択手段により選択されたパーツオブジェクトを破壊する破壊処理手段と、
前記破壊されたパーツオブジェクトの上方に位置する上方位置パーツオブジェクトを、前記上下位置関係から検索する上方位置パーツ検索手段と、
前記検索された上方位置パーツオブジェクトを一体的に落下させる落下制御手段と、
前記落下制御手段により落下された上方位置パーツオブジェクトのうち、前記破壊処理手段により破壊されたパーツオブジェクトの位置に落下したパーツオブジェクトを破壊する二次破壊処理手段と、
を備えたゲーム装置。
【請求項15】
ゲーム空間に配置され、パーツオブジェクト間の横方向の位置関係である横位置関係が予め設定された複数のパーツオブジェクトで一体的に構成された全体オブジェクトのうち、破壊対象のパーツオブジェクトを選択する選択手段と、
前記選択手段により選択されたパーツオブジェクトを破壊する破壊処理手段と、
前記破壊されたパーツオブジェクトの横方向に隣接するパーツオブジェクトを、前記横位置関係から検索する横隣接パーツ検索手段と、
前記横隣接パーツ検索手段により検索されたパーツオブジェクトを、前記破壊処理手段により破壊されたパーツオブジェクトとの隣接部分が半壊された所定のパーツオブジェクトに置き換える横部半壊パーツ置換手段と、
を備えたゲーム装置。

【図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

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29】
image rotate

【図30】
image rotate

【図31】
image rotate

【図32】
image rotate

【図33】
image rotate

【図34】
image rotate

【図35】
image rotate

【図36】
image rotate

【図37】
image rotate

【図38】
image rotate

【図39】
image rotate

【図40】
image rotate

【図41】
image rotate

【図42】
image rotate


【公開番号】特開2008−119223(P2008−119223A)
【公開日】平成20年5月29日(2008.5.29)
【国際特許分類】
【出願番号】特願2006−306045(P2006−306045)
【出願日】平成18年11月10日(2006.11.10)
【出願人】(000134855)株式会社バンダイナムコゲームス (1,157)
【Fターム(参考)】