(57)【要約】【課題】マルチテクスチャマッピングを利用せずに、部分的な表現に適したより処理負荷の少ないエフェクト処理を実現する。【解決手段】ビル６に砲弾４が着弾した場合、砲弾４の衝突位置Ｈを中心に判定領域８に頂点が含まれるビル６のプリミティブ面を選択して複製し、これを衝突痕表示用オブジェクト５として新たに設定する。該オブジェクトを、複製したビル６のプリミティブ面と合わせるように配置し、衝突位置Ｈを含むプリミティブ面の単位法線ベクトルと平行に衝突痕テクスチャを平行投影テクスチャマッピングする。そして、ビル６の色情報とアルファブレンディング処理して、ゲーム画面を描画する。【選択図】図３
2005122479.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに、３次元仮想空間内に配置された第１オブジェクトが複数のプリミティブ面によって構成された第２オブジェクトに衝突する前記３次元仮想空間の画像を生成させるためのプログラムであって、
前記第２オブジェクトを構成するプリミティブ面のうち、前記第１オブジェクトが衝突する衝突位置から所定範囲内に含まれるプリミティブ面を選択する選択手段、
前記選択手段により選択されたプリミティブ面を基に前記第２オブジェクトの部分オブジェクトを生成して、生成した部分オブジェクトに所定のテクスチャをマッピングする部分オブジェクト生成手段、
前記生成された部分オブジェクトを生成もとの前記第２オブジェクトの対応する位置に配置し、前記部分オブジェクトの色情報と前記第２オブジェクトの色情報とを合成することにより前記第２オブジェクトの画像を生成するオブジェクト画像生成手段、
として前記コンピュータを機能させるためのプログラム。
【請求項２】
前記部分オブジェクト生成手段が、前記部分オブジェクトの透明度情報を設定する透明度情報設定手段を有し、
前記オブジェクト画像生成手段が、前記設定された透明度情報に基づいて前記部分オブジェクトの色情報と前記第２オブジェクトの色情報とを合成する、
ように前記コンピュータを機能させることを特徴とする請求項１に記載のプログラム。
【請求項３】
前記透明度情報設定手段が、前記選択されたプリミティブ面の頂点それぞれについて、前記衝突位置から当該頂点までのベクトルと前記衝突位置を含むプリミティブ面の法線ベクトルとの内積値に基づいて当該プリミティブ面の透明度情報を設定するように前記コンピュータを機能させる、
ことを特徴とする請求項２に記載のプログラム。
【請求項４】
前記部分オブジェクト生成手段は、平面投影マッピングにより前記テクスチャのマッピングを行う手段である、
ことを特徴とする請求項１〜３の何れか一項に記載のプログラム。
【請求項５】
前記選択手段が、前記衝突位置を中心とする所与の３次元範囲を前記所定範囲とするように前記コンピュータを機能させる、
ことを特徴とする請求項１〜４の何れか一項に記載のプログラム。
【請求項６】
前記選択手段が、プリミティブ面の中心部が前記衝突位置から所定範囲内に位置するプリミティブ面を前記所定範囲内に含まれるプリミティブ面として選択するように前記コンピュータを機能させる、
ことを特徴とする請求項１〜５の何れか一項に記載のプログラム。
【請求項７】
前記第２オブジェクトは、連接するプリミティブ面群を表す複数の集合データで外形が定義されており、
前記選択手段が、前記衝突位置から所定範囲内に含まれるプリミティブ面が１つでも含まれる集合データを選択し、選択した集合データに属するプリミティブ面を前記所定範囲内に含まれるプリミティブ面として選択するように前記コンピュータを機能させる、
ことを特徴とする請求項１〜６の何れか一項に記載のプログラム。
【請求項８】
前記選択手段は、前記第１オブジェクトの移動方向と、前記衝突位置を含むプリミティブ面又は前記衝突位置付近のプリミティブ面の法線方向とに基づいて、前記所定範囲を決定する範囲決定手段を有し、この範囲決定手段によって決定された所定範囲内に含まれるプリミティブ面を選択する手段である、
ことを特徴とする請求項１〜７の何れか一項に記載のプログラム。
【請求項９】
前記部分オブジェクト生成手段は、前記第１オブジェクトの種類、又は前記第１オブジェクトの移動方向と、前記衝突位置を含むプリミティブ面又は前記衝突位置付近のプリミティブ面の法線方向とに基づいて、前記テクスチャの種類を決定するテクスチャ種類決定手段を有し、このテクスチャ種類決定手段によって決定されたテクスチャをマッピングする手段である、
ことを特徴とする請求項１〜８の何れか一項に記載のプログラム。
【請求項１０】
コンピュータを、
３次元仮想空間内の特定の座標を求める特定手段、
前記３次元仮想空間内に配置されたオブジェクトを構成するプリミティブ面のうち、前記特定手段によって特定された座標から所定範囲内に含まれるプリミティブ面を選択する選択手段、
前記選択手段により選択されたプリミティブ面を基に前記オブジェクトの部分オブジェクトを生成して、生成した部分オブジェクトに所定のテクスチャをマッピングする部分オブジェクト生成手段、
前記生成された部分オブジェクトを生成もとの前記オブジェクトの対応する位置に配置し、前記部分オブジェクトの色情報と前記オブジェクトの色情報とを合成することにより前記オブジェクトの画像を生成するオブジェクト画像生成手段、
として機能させるためのプログラム。
【請求項１１】
前記部分オブジェクト生成手段は、前記オブジェクトの形状を変更する形状変更手段を有し、この形状変更手段で形状を変更した後のオブジェクトについて部分オブジェクトを生成する手段である、
ことを特徴とする請求項１０に記載のプログラム。
【請求項１２】
請求項１〜１１の何れか一項に記載のプログラムを記憶した前記コンピュータによる読取可能な情報記憶媒体。
【請求項１３】
３次元仮想空間内に配置された第１オブジェクトが複数のプリミティブ面によって構成された第２オブジェクトに衝突する前記３次元仮想空間の画像を生成する画像生成装置であって、
前記第２オブジェクトを構成するプリミティブ面のうち、前記第１オブジェクトが衝突した衝突位置から所定範囲内に含まれるプリミティブ面を選択する選択手段と、
前記選択手段により選択されたプリミティブ面を基に前記第２オブジェクトの部分オブジェクトを生成して、生成した部分オブジェクトに所定のテクスチャをマッピングする部分オブジェクト生成手段と、
前記生成された部分オブジェクトを生成もとの前記第２オブジェクトの対応する位置に配置し、前記部分オブジェクトの色情報と前記第２オブジェクトの色情報とを合成することにより前記第２オブジェクトの画像を生成するオブジェクト画像生成手段と、
を備えることを特徴とする画像生成装置。
【請求項１４】
３次元仮想空間内の特定の座標を求める特定手段と、
前記３次元仮想空間内に配置されたオブジェクトを構成するプリミティブ面のうち、前記特定手段によって特定された座標から所定範囲内に含まれるプリミティブ面を選択する選択手段と、
前記選択手段により選択されたプリミティブ面を基に前記オブジェクトの部分オブジェクトを生成して、生成した部分オブジェクトに所定のテクスチャをマッピングする部分オブジェクト生成手段と、
前記生成された部分オブジェクトを生成もとの前記オブジェクトの対応する位置に配置し、前記部分オブジェクトの色情報と前記オブジェクトの色情報とを合成することにより前記オブジェクトの画像を生成するオブジェクト画像生成手段と、
を備えることを特徴とする画像生成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータに、３次元仮想空間内に配置された第１オブジェクトが複数のプリミティブ面によって構成された第２オブジェクトに衝突する前記３次元仮想空間の画像を生成させるためのプログラム等に関する。
【背景技術】
【０００２】
従来、シューティングゲームやアクションゲームなど、戦闘や破壊をモチーフとするジャンルのゲームが知られている。これらのジャンルのゲームにおいては、戦闘によって建物が壊れる様子や攻撃の痕を如何により本物らしく見せるかが、ゲームのリアリティや迫力を演出する上で重要な技術課題となっている。
【０００３】
表面のディテール表現を高める手法としては、所謂「テクスチャマッピング」が知られている。近年では、一つのオブジェクトに複数のテクスチャを重ねてマッピングする「マルチテクスチャマッピング」によって、より多様でリアルなディテール表現が可能となっている。
【０００４】
マルチテクスチャマッピングの機能がサポートされていない画像処理装置等でも同様の効果を得られるように、ジオメトリ処理後のオブジェクトデータをメインメモリに保存しておいて、この保存されているデータを再利用する方法も知られている（例えば、特許文献１参照）。同手法で、例えば２種類のテクスチャを重ねてマッピングする場合、ジオメトリ処理後のオブジェクトデータで第１のテクスチャをマッピングしたオブジェクトをフレームバッファに書き込み、次いで、同データを再度使用して第２のテクスチャをマッピングしたオブジェクトをフレームバッファにアルファブレンディングによって重ねて描画することによって、マルチテクスチャマッピングと同様の表現を実現している。
【０００５】
また、オブジェクトそのものの外形を変形させる表現手法としては、例えば、攻撃を受けた部位を切断して切断面に新たなプリミティブ面（代表例として、ポリゴンが有る。）を生成するとともに、攻撃を受けた部位を分離することによって、破壊の様子を表現するものが知られている（例えば、特許文献２参照）。
【特許文献１】特許第３２９２７１３号公報
【特許文献２】特許第３３４０９７０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ところが、上述のような従来の手法は、例えば、弾痕や血痕、攻撃によって生じた煤痕などといった部分的なエフェクト表現を多用する場合には、処理負荷が大きくなってしまうために適当とは言えなかった。
【０００７】
例えば、ジオメトリ処理後のオブジェクトデータをメインメモリに保存して再利用する前者の方法では、種類の異なるテクスチャを適用するたびに、対象とするオブジェクトの全プリミティブ面について計算する必要がある。そのため、攻撃の痕が適用されない部分の計算に係る処理が不要な処理負荷となってしまっていた。
【０００８】
また、攻撃を受けたオブジェクトの部分を切断して分離する後者の場合、攻撃の痕が短時間で多数に及ぶ場合には、切断面の決定と切断面への新たなプリミティブ面の生成等に係る処理負荷が大きくなってしまう。
【０００９】
本発明はこうした課題を鑑みてなされたものであり、マルチテクスチャマッピングを利用せずに、部分的な表現に適したより処理負荷の少ないエフェクト処理を実現することを目的とする。
【課題を解決するための手段】
【００１０】
上記課題を解決するために、第１の発明は、コンピュータ（例えば，図１の家庭用ゲーム装置１２００）に３次元仮想空間内に配置された第１オブジェクト（例えば、図２の砲弾４）が複数のプリミティブ面によって構成された第２オブジェクト（例えば、図２のビル６）に衝突する前記３次元仮想空間の画像を生成させるためのプログラムであって、
前記第２オブジェクトを構成するプリミティブ面のうち、前記第１オブジェクトが衝突する衝突位置から所定範囲（例えば、図３の判定領域８）内に含まれるプリミティブ面を選択する選択手段（例えば、図６のゲーム演算部２２、プリミティブ面選択部２２１、図８のステップＳ２０〜Ｓ３２）、前記選択手段により選択されたプリミティブ面を基に前記第２オブジェクトの部分オブジェクトを生成して、生成した部分オブジェクトに所定のテクスチャをマッピングする部分オブジェクト生成手段（例えば、図６のゲーム演算部２２、衝突痕表示用オブジェクト設定部２２２、図８のステップＳ３４〜Ｓ４６）、前記生成された部分オブジェクトを生成もとの前記第２オブジェクトの対応する位置に配置し、前記部分オブジェクトの色情報と前記第２オブジェクトの色情報とを合成することにより前記第２オブジェクトの画像を生成するオブジェクト画像生成手段（例えば、図６のゲーム演算部２２、衝突痕表示用オブジェクト設定部２２２、画像生成部２４、図７のステップＳ１４〜Ｓ１６）、として前記コンピュータを機能させることを特徴とする。
【００１１】
第１３の発明の画像生成装置は、３次元仮想空間内に配置された第１オブジェクトが複数のプリミティブ面によって構成された第２オブジェクトに衝突する前記３次元仮想空間の画像を生成する画像生成装置（例えば，図１の家庭用ゲーム装置１２００）であって、
前記第２オブジェクトを構成するプリミティブ面のうち、前記第１オブジェクトが衝突する衝突位置から所定範囲内に含まれるプリミティブ面を選択する選択手段（例えば、図６のゲーム演算部２２、プリミティブ面選択部２２１、図８のステップＳ２０〜Ｓ３２）と、前記選択手段により選択されたプリミティブ面を基に前記第２オブジェクトの部分オブジェクトを生成して、生成した部分オブジェクトに所定のテクスチャをマッピングする部分オブジェクト生成手段（例えば、図６のゲーム演算部２２、衝突痕表示用オブジェクト設定部２２２、図８のステップＳ３４〜Ｓ４６）と、前記生成された部分オブジェクトを生成もとの前記第２オブジェクトの対応する位置に配置し、前記部分オブジェクトの色情報と前記第２オブジェクトの色情報とを合成することにより前記第２オブジェクトの画像を生成するオブジェクト画像生成手段例えば、図６のゲーム演算部２２、衝突痕表示用オブジェクト設定部２２２、画像生成部２４、図７のステップＳ１４〜Ｓ１６）と、を備えることを特徴とする。
【００１２】
ここで言う「所定のテクスチャ」とは、例えば、弾痕や着弾時の爆発によって生じた煤痕、血痕、キズ、凹みを表す衝突痕のテクスチャである。
第１又は１３の発明によれば、第１オブジェクトの衝突を受けた第２オブジェクトのプリミティブ面の中から、衝突位置から所定範囲内に含まれるプリミティブ面を複製して、他のオブジェクトが衝突したことを示す所定のテクスチャをマッピングする部分オブジェクトを生成することができる。そして、部分オブジェクトのプリミティブ面と、複製元である第２オブジェクトにおける元のプリミティブ面とを対応させて配置し、部分オブジェクトの色情報と前記第２オブジェクトの色情報とを合成することにより画像を生成することができる。すなわち、衝突位置に合わせた形状で衝突痕が表示される部分オブジェクトを生成し、第２オブジェクトと色情報を合成するようにして貼りつけることができる。
【００１３】
また、部分オブジェクトは、複製元の第２オブジェクトの一部を複製するだけなので、オブジェクトの生成に要する処理負荷は小さくて済む。そして、マッピング処理の対象となるプリミティブ面も少なく、第２オブジェクト全体のプリミティブ面を処理対象とする場合に比べて大幅な処理負荷の削減を実現できる。
【００１４】
第２の発明は、第１の発明のプログラムであって、前記部分オブジェクト生成手段が、前記部分オブジェクトの透明度情報を設定する透明度情報設定手段（例えば、図６のゲーム演算部２２、衝突痕表示用オブジェクト設定部２２２、図８のステップＳ３８〜Ｓ４６）を有し、前記オブジェクト画像生成手段が、前記設定された透明度情報に基づいて前記部分オブジェクトの色情報と前記第２オブジェクトの色情報とを合成する、ように前記コンピュータを機能させることを特徴とする。
【００１５】
第２の発明によれば、第１の発明と同様の効果を奏するとともに、部分オブジェクトに透明度情報を設定し、この透明度情報に基づいて色合成することができる。したがって、衝突痕を半透明として第２オブジェクトの部分に表現することができる。
【００１６】
より好適には、第３の発明のように、第２の発明のプログラムであって、前記透明度情報設定手段が、前記選択されたプリミティブ面の頂点それぞれについて、前記衝突位置から当該頂点までのベクトルと当該プリミティブ面の法線ベクトル（例えば、図３の単位法線ベクトルＮｆ）と前記衝突位置を含むプリミティブ面の法線ベクトル（例えば、図３の単位法線ベクトルＮｈ）との内積値に基づいて当該プリミティブ面の透明度情報を設定するように前記コンピュータを機能させるとしても良い。
【００１７】
第３の発明によれば、第２の発明と同様の効果を奏するとともに、衝突位置の含まれるプリミティブ面と各プリミティブ面との成す角度やプリミティブ面間の距離に応じて透明度を設定することができる。
【００１８】
また、第４の発明は、第１〜３の発明のうち何れか一つの発明のプログラムであって、前記部分オブジェクト生成手段は、平面投影マッピングにより前記テクスチャのマッピングを行う手段であることを特徴とする。
【００１９】
ここで言う「平面投影マッピング」とは、一方の方向に向かってテクスチャを投影させるマッピング方法であって、平行投影マッピングと同義である。
第４の発明によれば、第１〜３の発明のうち何れか一つの発明と同様の効果を奏するとともに、一方の方向に向かってテクスチャを投影させるように所定のテクスチャをマッピングすることができる。例えば、部分オブジェクトの衝突位置を含むプリミティブ面と角度を成す位置には、所定のテクスチャが「流れた」ようにしてマッピングされる。これによって、着弾時の爆発による煤痕や血痕、破片によるキズといった衝突痕を表現する場合に、衝突時の第１オブジェクトが一方から衝突したその勢い（慣性）を感じさせるように、少ない演算負荷でよりリアルに表現することができる。
【００２０】
第５の発明は、第１〜４の発明のうち何れか一つの発明のプログラムであって、前記選択手段が、前記衝突位置を中心とする所与の３次元範囲（例えば，図３の判定領域８）を前記所定範囲とするように前記コンピュータを機能させることを特徴とする。
【００２１】
第５の発明によれば、第１〜４の発明のうち何れか一つの発明と同様の効果を奏するとともに、第２オブジェクトのプリミティブ面の中から、衝突位置を中心とした３次元範囲に含まれるプリミティブ面を部分オブジェクトとして生成することができる。すなわち、凹凸の有る立体的な構造部分に第１オブジェクトが衝突した場合であっても、衝突位置を含むプリミティブ面に連結されていないプリミティブ面であっても、衝突の影響を受ける部分として立体的に抜き出して部分オブジェクトとすることができる。
したがって、着弾時の爆発によって生じる煤痕のように３次元的にその影響が残る衝突痕を表現する際により自然に表現することができる。尚、ここで言う「所与の３次元範囲」の外形は、楕円球や直方体、円錐といった形状を適宜設定して構わない。
【００２２】
より好適には、第６の発明のように、第１〜５の発明のうち何れか一つの発明のプログラムであって、前記選択手段が、プリミティブ面の中心部が前記衝突位置から所定範囲内に位置するプリミティブ面を前記所定範囲内に含まれるプリミティブ面として選択するように前記コンピュータを機能させるとしても良い。
【００２３】
第６の発明によれば、第１〜５の発明のうち何れか一つの発明と同様の効果を奏するとともに、プリミティブ面の中心部が所定範囲内に位置する場合に、当該プリミティブ面を所定範囲内に含まれると判定し、部分オブジェクトに含ませることができる。
例えば、プリミティブ面が所定範囲に含まれるか否かを該プリミティブ面を形成する頂点が所定範囲に含まれるか否かによって判定するとする場合、所定範囲より大きいプリミティブ面で衝突すると、何れの頂点も所定範囲に含まれず、衝突が有ったにも係らずプリミティブ面が選択されない事態が生じる。しかし、第６の発明のようにプリミティブ面の中心部を判定対象とすることによって、こうした事態を回避することができる。したがって、常に安定して部分オブジェクトを生成することが可能となる。
【００２４】
第７の発明は、第１〜６の発明のうち何れか一つの発明のプログラムであって、前記第２オブジェクトは、連接するプリミティブ面群を表す複数の集合データ（例えば、図６のストリップデータ）で外形が定義されており、前記選択手段が、前記衝突位置から所定範囲内に含まれるプリミティブ面が１つでも含まれる集合データを選択し、選択した集合データに属するプリミティブ面を前記所定範囲内に含まれるプリミティブ面として選択するように前記コンピュータを機能させることを特徴とする。
【００２５】
ここで言う「連接するプリミティブ面群を表す複数の集合データ」とは、連接するプリミティブ面の頂点の情報を、同じ頂点の情報を再利用するようにして連続的に格納する一連のデータ群である。例えば、所謂「ストリップデータ」がそれである。同じ頂点の情報を再利用することによって、データサイズを圧縮とオブジェクトの高い描画速度とを実現する。
【００２６】
第７の発明によれば、第１〜６の発明のうち何れか一つの発明と同様の効果を奏するとともに、集合データからプロミティブ面を切り出さずに、所定範囲内に含まれるプリミティブ面が１つでも含まれる集合データを選択し、集合データを単位として部分オブジェクトを構成することができる。したがって、集合データからプロミティブ面を切り出す処理手間を省き、データサイズの圧縮効果とオブジェクトの描画速度の高さをそのまま維持し、少ない処理負荷で衝突痕を表現することができる。
【００２７】
第８の発明は、第１〜７の発明のうち何れか一つの発明のプログラムであって、前記選択手段は、前記第１オブジェクトの移動方向と、前記衝突位置を含むプリミティブ面又は前記衝突位置付近のプリミティブ面の法線方向とに基づいて、前記所定範囲を決定する範囲決定手段（例えば、図６のゲーム演算部２２、図１２（ｂ）の判定領域８）を有し、この範囲決定手段によって決定された所定範囲内に含まれるプリミティブ面を選択する手段であることを特徴とする。
【００２８】
第８の発明によれば、第１〜７の発明のうち何れか一つの発明と同様の効果を奏するとともに、衝突角度に応じて所定範囲を決定することができる。例えば、衝突角度が０度すなわち正面衝突する場合に所定範囲を立方体とし、衝突角度のｓｉｎ値に応じて所定範囲を第１オブジェクトの移動方向に沿って伸張させるならば、第１オブジェクトの移動方向に拡張された領域内のプリミティブ面にテクチャをマッピングさせることが可能となるため、第１オブジェクトの衝突時の慣性方向に「掃かれた」ようにテクスチャをマッピングさせることができる。
【００２９】
同様の効果は、第１〜８の発明の前記部分オブジェクト生成手段を、前記第１オブジェクトの種類、又は前記第１オブジェクトの移動方向と、前記衝突位置を含むプリミティブ面又は前記衝突位置付近のプリミティブ面の法線方向とに基づいて、前記テクスチャの種類を決定するテクスチャ種類決定手段を有し、このテクスチャ種類決定手段によって決定されたテクスチャをマッピングする手段とする第９の発明でも得られる。
【００３０】
すなわち、第９の発明によれば、第１〜８の発明のうち何れか一つの発明と同様の効果を奏するとともに、例えば、正面衝突した場合のテクスチャ、比較的浅い角度で衝突した場合のテクスチャといったように、衝突角度に応じた複数種類のテクスチャから衝突時の条件に応じたテクスチャを選択することによって、衝突時の状況に適切なテクスチャ表現を実現できる。
【００３１】
第１０の発明のプログラムは、コンピュータを、３次元仮想空間内の特定の座標を求める特定手段（例えば、図６のゲーム演算部２２、図７のステップＳ６、図８のステップＳ２０）、前記３次元仮想空間内に配置されたオブジェクトを構成するプリミティブ面のうち、前記特定手段によって特定された座標から所定範囲内に含まれるプリミティブ面を選択する選択手段（例えば、図６のゲーム演算部２２、プリミティブ面選択部２２１１、図８のステップＳ２２〜Ｓ３２）、前記選択手段により選択されたプリミティブ面を基に前記オブジェクトの部分オブジェクトを生成して、生成した部分オブジェクトに所定のテクスチャをマッピングする部分オブジェクト生成手段（例えば、図６のゲーム演算部２２、衝突痕表示用オブジェクト設定部２２２、図８のステップＳ３４〜Ｓ４６）、前記生成された部分オブジェクトを生成もとの前記オブジェクトの対応する位置に配置し、前記部分オブジェクトの色情報と前記オブジェクトの色情報とを合成することにより前記オブジェクトの画像を生成するオブジェクト画像生成手段（例えば、図６のゲーム演算部２２、図７のステップＳ１４〜Ｓ１６）、として機能させることを特徴とする。
【００３２】
また、第１４の発明の画像生成装置は、３次元仮想空間内の特定の座標を求める特定手段（例えば、図６のゲーム演算部２２、図７のステップＳ６、図８のステップＳ２０）と、前記３次元仮想空間内に配置されたオブジェクトを構成するプリミティブ面のうち、前記特定手段によって特定された座標から所定範囲内に含まれるプリミティブ面を選択する選択手段（例えば、図６のゲーム演算部２２、プリミティブ面選択部２２１１、図８のステップＳ２２〜Ｓ３２）と、前記選択手段により選択されたプリミティブ面を基に前記オブジェクトの部分オブジェクトを生成して、生成した部分オブジェクトに所定のテクスチャをマッピングする部分オブジェクト生成手段（例えば、図６のゲーム演算部２２、衝突痕表示用オブジェクト設定部２２２、図８のステップＳ３４〜Ｓ４６）と、前記生成された部分オブジェクトを生成もとの前記オブジェクトの対応する位置に配置し、前記部分オブジェクトの色情報と前記オブジェクトの色情報とを合成することにより前記オブジェクトの画像を生成するオブジェクト画像生成手段（例えば、図６のゲーム演算部２２、図７のステップＳ１４〜Ｓ１６）と、を備えることを特徴とする。
【００３３】
第１０又は１４の発明によれば、オブジェクトのプリミティブ面の中から、特定の座標位置から所定範囲内に含まれるプリミティブ面を複製して、所定のテクスチャをマッピングする部分オブジェクトを生成することができる。そして、この部分オブジェクトのプリミティブ面を、複製元のオブジェクトにおける元のプリミティブ面の対応する位置に配置し、部分オブジェクトの色情報と複製元のオブジェクトの色情報とを合成することにより画像を生成することができる。すなわち、特定座標位置の周辺形状で部分オブジェクトを生成し、複製元のオブジェクトと色情報を合成するようにして貼りつけるといったことができる。また、部分オブジェクトは、複製元のオブジェクトの一部を複製するだけなので、オブジェクトの生成に要する処理負荷は小さくて済む。そして、マッピング処理の対象となるプリミティブ面も少ない。したがって、オブジェクト全体のプリミティブ面を処理対象とする場合に比べて大幅な処理負荷の削減を実現できる。
【００３４】
より好適には、第１１の発明として、第１０の発明のプログラムにおける前記部分オブジェクト生成手段を、前記オブジェクトの形状を変更する形状変更手段（例えば、図６のゲーム演算部２２、図７のステップＳ１０）を有し、この形状変更手段で形状を変更した後のオブジェクトについて部分オブジェクトを生成する手段としても良い。
【００３５】
第１１の発明によれば、第１０の発明と同様の効果を奏するとともに、変形後のオブジェクトから部分オブジェクトを生成できるため、例えば、オブジェクトの変形を表す色情報を部分オブジェクトに持たせるといったことにより、オブジェクトの「変形」をより効果的に表現することができる。
【００３６】
第１２の発明は、第１〜１１の発明のうち何れか一つの発明のプログラムを記憶した前記コンピュータによる読取可能な情報記憶媒体である。
【００３７】
ここで言う「情報記憶媒体」とは、コンピュータに類する装置が情報を読み取り可能な、例えば、ＣＤ−ＲＯＭ、ＭＯ、メモリカード、ＤＶＤ、ハードディスク、ＩＣメモリなどであって、その接続形態は、装置に着脱自在であっても良いし、通信回線を介して前記ゲーム装置に接続されるものであっても良くその形態は問わない。従って、コンピュータに第１〜１１の発明のうち何れか一つの発明と同様の効果を発揮させることができる。
【発明の効果】
【００３８】
本発明によれば、第１オブジェクトの衝突を受けた第２オブジェクトのプリミティブ面の中から、衝突位置から所定範囲内に含まれるプリミティブ面を複製して、所定のテクスチャをマッピングする部分オブジェクトを生成することができる。そして、部分オブジェクトのプリミティブ面と、複製元である第２オブジェクトにおける元のプリミティブ面とを対応させて配置し、部分オブジェクトの色情報と前記第２オブジェクトの色情報とを合成することにより画像を生成することができる。
【００３９】
部分オブジェクトは、複製元の第２オブジェクトの一部を複製するだけなので、オブジェクトの生成に要する処理負荷は小さくて済む。そして、マッピング処理の対象となるプリミティブ面も少なく、第２オブジェクト全体のプリミティブ面を処理対象とする場合に比べて大幅な処理負荷の削減を実現できる。したがって、部分的な表現に適した、より処理負荷の少ないエフェクト処理を実現することができる。
【発明を実施するための最良の形態】
【００４０】
本発明の実施形態として、画像生成装置の一種である家庭用ゲーム装置において戦闘ゲームを実行する場合を例に挙げて説明する。具体的には、プレーヤが操作する戦車がビルを砲撃するシチュエーションを例に、砲弾が着弾した弾痕を表現する場合を説明するが、本発明の適用がこれに限定されるものではない。戦闘をモチーフとするものであれば、シューティングゲームやアクションゲーム、ロールプレイングゲーム、戦略シミュレーションゲームなどそのジャンルは問わない。
【００４１】
[構成の説明]
まず、本実施形態における構成を説明する。図１は、本発明を適用した家庭用ゲーム装置の構成の一例を示す図である。同図に示すように、家庭用ゲーム装置１２００は、ゲームコントローラ１２０２と、本体装置１２１０と、スピーカ１２２２を有するディスプレイ１２２０とを備える。ゲームコントローラ１２０２は本体装置１２１０に接続され、ディスプレイ１２２０は画像信号及び音信号等を伝送可能なケーブル１２０１によって本体装置１２１０に接続されている。
【００４２】
ゲームコントローラ１２０２は、プレーヤがゲーム操作を入力するための方向キー１２０４やボタンスイッチ１２０６を備え、操作入力信号を本体装置１２１０に出力する。
【００４３】
本体装置１２１０は、例えばＣＰＵやＩＣメモリ類を搭載した制御ユニット１２１１や、ＣＤ−ＲＯＭ１２１２等の情報記憶媒体の読取装置を備え、ＣＤ−ＲＯＭ１２１２などから読み出したゲーム情報とゲームコントローラ１２０２からの操作信号とに基づいて種々のゲーム処理を演算処理して、ゲーム画面の画像信号及びゲーム音の音信号を生成する。
【００４４】
そして、本体装置１２１０は、生成した画像信号と音声信号とをディスプレイ１２２０に出力して、ディスプレイ１２２０にゲーム画像を表示させるとともにスピーカ１２２２からゲーム音を出力させる。プレーヤはディスプレイ１２２０に映し出されたゲーム画面を見ながら、ゲームコントローラ１２０２を操作してゲームを楽しむことができる。
【００４５】
本体装置１２１０がゲーム処理を実行するために必要なプログラムやデータ等を含むゲーム情報は、例えば、本体装置１２１０に着脱自在な情報記憶媒体であるＣＤ−ＲＯＭ１２１２、ＩＣメモリ１２１４、メモリカード１２１６等に格納されている。或いは、ゲーム情報を本体装置１２１０に具備された通信装置１２１８を介して通信回線２に接続し、外部装置からゲーム情報を取得する（ダウンロードする）。ここで言う「通信回線」とは、データ授受が可能な通信路を意味する。即ち、通信回線２とは、直接接続のための専用線（専用ケーブル）やイーサネット（登録商標）等によるＬＡＮの他、電話通信網やケーブル網、インターネット等の通信網を含む意味であり、また通信方法については有線／無線を問わない意味である。
【００４６】
[原理の説明]
図２は、本実施形態にいて砲撃対象となるビルオブジェクト（以下、単に「ビル」とも言う。）のモデル構成の概念を説明するための図である。同図（ａ）に示すように、ゲーム空間中に配置されたビル６は、プレーヤが操作する戦車オブジェクト３（以下、単に「戦車」とも言う。）から砲撃を受ける。戦車３から砲弾オブジェクト４（以下、単に「砲弾」とも言う。）がビル６に向けて発射され、砲弾４が着弾して爆発する。本実施形態では、この爆発に伴う煤痕を、砲弾４の衝突痕としてビル６の壁面に表現する。
【００４７】
同図（ｂ）に示すように、ビル６は複数の３角形のプリミティブ面（ポリゴン）によってモデリングされている。そして、ビル６のモデリングデータ５２６ａは、連接する複数のプリミティブ面の頂点情報を連続的に格納したストリップデータとして構成されている。
【００４８】
ストリップデータには、頂点毎に、位置座標や色情報、当該頂点によって定義されるプリミティブ面の表裏フラグ、該プリミティブ面の単位法線ベクトルＮｆといった情報が対応づけられて格納されている。ストリップデータによれば、最初の３つの頂点から一つの３角形プリミティブ面を定義し、以降、頂点が一つ増えるたびに表裏フラグに基づいて、連接する３角形プリミティブ面を一つ定義することができる。
【００４９】
図３は、本実施形態における衝突痕表示用オブジェクトの生成について説明するための図である。同図（ａ）に示すように、先ず、砲弾４の移動軌跡Ｌ（この場合弾道）を算出し、この移動軌跡Ｌがビル６との交差判定から、砲弾４がビル６に着弾するか否かを判定する。そして、着弾すると判定した場合、砲弾４が着弾する衝突位置Ｈを求め、この衝突位置Ｈを中心に３次元の判定領域８を設定する。本実施形態では、判定領域８を直方体としているが、球や円錐など他の形状であっても構わない。
【００５０】
判定領域８を設定したならば、同図（ｂ）に示すように、該領域に含まれるビル６のプリミティブ面を選択する。具体的には、ビル６のモデリングデータを構成するストリップデータを順次参照し、判定領域８に頂点Ｐが一つでも含まれるプリミティブ面を選択する。すなわち、判定領域８に含まれる頂点Ｐの頂点情報が格納されているストリップデータを選択し、該ストリップデータを複製して、ビル６の部分オブジェクトに相当する衝突痕表示用オブジェクト５を生成する。同図（ｂ）の場合、ストリップデータＡ〜Ｄの４つのストリップデータが選択される。
【００５１】
本実施形態では、判定領域８が３次元の範囲を成しているので、衝突位置を含むプリミティブ面に連接していないプリミティブ面も衝突痕表示用オブジェクト５に含めることが可能になるので、ビル６が複雑な凹凸形状を有するオブジェクトであっても、砲弾４の爆発の影響が及ぶ立体的な範囲に漏れなく衝突痕を表示させることが可能になる。
【００５２】
そして、同図（ｃ）に示すように、衝突痕表示用オブジェクト５には、衝突痕テクスチャ５２８がテクスチャマッピングされる。本実施形態における衝突痕テクスチャ５２８には、白地に黒の煤痕が描かれている。衝突痕テクスチャ５２８は、中心位置５２８ａを衝突位置Ｈに合わせて、衝突位置Ｈを含むプリミティブ面Ｆｈの単位法線ベクトルＮｈと平行に平行投影マッピングされる。これによって、プリミティブ面Ｆｈと角度を成して連接する他のプリミティブ面には、衝突痕テクスチャ５２８が「流れた」或いは「掃いた」ようにテクスチャマッピングされ、あたかも煤が砲弾４の慣性の影響を受けてビル６の表面に沿って移動しつつ付着したかのように描画される。
【００５３】
図４は、本実施形態における衝突痕表示用オブジェクトの描画に係る透明度の設定について説明するための図である。本実施形態における衝突痕表示用オブジェクト５には、２種類の透明度が設定される。尚、本実施形態では透明度を示す値をα値とする。α値は「０〜１」の間の値を有し、α値が「０」は透明、「１」は不透明として合成処理されるものとする。
【００５４】
同図（ａ）に示すように、第１の透明度は、衝突痕テクスチャ５２８に設定される透明度であって、中央部から外周に向かうほど透明となるように設定される。以下、この第１の透明度を示す値を「αｔ値」とする。
【００５５】
同図（ｂ）に示すように、第２の透明度は、衝突痕表示用オブジェクト５の描画位置毎の透明度である。以下、この第２の透明度を示す値を「αｆ値」とする。本実施形態では、第２の透明度「αｆ値」を算出可能とするために、衝突痕表示用オブジェクト５を構成する各プリミティブ面の頂点Ｐに、透明度を表す値（以下、「αｐ値」と言う。）を設定し、描画時に頂点Ｐに設定されたαｐ値から描画位置におけるαｆ値を算出して用いる。
【００５６】
具体的には、各頂点Ｐについて、衝突位置Ｈから各プリミティブ面を構成する頂点ＰまでのベクトルＶを求め、このベクトルＶと衝突位置Ｈにおける単位法線ベクトルＮｈとの内積の絶対値を求める。そして、この絶対値の二乗の逆数に適当な係数ｋを乗算し、これを当該頂点Ｐにおける透明度αｐ値とする。但し、乗算結果が「１」以上の場合を「１」と見なす。この結果、頂点Ｐには、衝突位置Ｈから単位法線ベクトルＮｈ方向に沿って離れるほどより透明になるように透明度が設定されることになる。そして、ゲーム画面の生成時（描画時）には、頂点Ｐ毎に設定されたαｐ値に基づいて、描画位置におけるαｆ値が求められて適用される。例えば、同図（ｂ）の頂点Ｐ３のαｐ値が「１」、頂点Ｐ５のαｐ値が「０．５」であるとするならば、頂点Ｐ３と頂点Ｐ５との中間位置Ｐｆにおけるαｆ値は「０．７５（＝（１＋０．５）／２）」となる。
【００５７】
図５は、衝突痕表示用オブジェクトの配置と描画について説明するための図である。同図に示すように、衝突痕表示用オブジェクト５は、衝突痕表示用オブジェクト５を構成するプリミティブ面と、ビル６における複製元のプリミティブ面と一致させるようにして３次元仮想空間内に配置される。そして、αｔ値とαｆ値との積を最終的なα値とし、この最終的なα値に基づいて、衝突痕テクスチャ５２８の色情報とビル６の色情報（ビル６に適用されるテクスチャの色情報）とをアルファブレンディング処理（Alpha Blending。所謂「半透明処理」。）によって合成してゲーム画面を生成する。
【００５８】
この結果、衝突位置Ｈにおける単位法線ベクトルＮｈと直角方向には、衝突痕テクスチャ５２８に設定された透明度αｔ値に基づいて衝突位置Ｈから離れるほどテクスチャが薄くなるように合成され、更に、頂点Ｐの透明度αｐ値に基づいて衝突位置Ｈから単位法線ベクトルＮｈ方向に沿って離れるほど薄くなるように合成される。したがって、ビル６の元のテクスチャに、衝突位置Ｈから離れるほど徐々に薄くなるように半透明状に衝突痕テクスチャが重ねて描画され、あたかも砲弾４の爆発による煤がついたように表現することができる。
【００５９】
[機能ブロックの説明]
図６は、本実施形態における家庭用ゲーム装置１２００の機能構成の一例を示す機能ブロック図である。同図に示すように、家庭用ゲーム装置１２００は、プレーヤからの操作を受けつける操作入力部１０と、装置やゲームの制御に係る各種の演算処理を実行する処理部２０と、ゲーム画面を表示出力する画像表示部３０と、ゲーム音を音出力する音出力部４０と、通信回線２を介して外部装置４４とデータ通信を実現する通信部４２と、各種のプログラムやデータを記憶する記憶部５０とを備える。
【００６０】
操作入力部１０は、例えば、ボタンスイッチ、レバー、ダイヤル、マウス、キーボード、各種センサによって実現され、プレーヤによる操作に応じた操作入力信号を処理部２０に出力する。本実施形態では、図１のゲームコントローラ１２０２がこれに該当する。
【００６１】
処理部２０は、家庭用ゲーム装置１２００全体の制御やゲーム演算などの各種の演算処理を行う。その機能は、例えば、ＣＰＵ（ＣＩＳＣ型、ＲＩＳＣ型）、ＡＳＩＣ（ゲートアレイ等）、ＩＣメモリなどのハードウェア及び関連する制御プログラム等により実現される。図１では本体装置１２１０に具備される制御ユニット１２１１がこれに該当する。
【００６２】
また処理部２０は、主にゲームに係る演算処理を行うゲーム演算部２２と、ゲーム演算部２２の処理によって求められた各種のデータから仮想カメラを視点とする仮想空間中の画像の生成並びにゲーム画面を表示させるための画像信号の生成を実行する画像生成部２４と、効果音やＢＧＭなどのゲーム音を生成する音生成部２６と、データ通信に係る制御を担う通信制御部２８とを含む。
【００６３】
ゲーム演算部２２は、操作入力部１０からの操作入力信号や、記憶部５０から読み出したプログラムやデータに基づいて、本実施形態におけるゲームを実行するための種々のゲーム処理を実行する。ゲーム処理としては、例えば、オブジェクトの移動に伴う位置座標や速度等を求める演算処理、オブジェクトの衝突判定処理、オブジェクトをオブジェクト空間に配置する処理、オブジェクトへのマッピング情報の選択処理、ゲーム結果（成績）を求める処理などが挙げられる。また、ゲーム演算部２２には、プリミティブ面選択部２２１と、衝突痕表示用オブジェクト設定部２２２とが含まれる。
【００６４】
プリミティブ面選択部２２１は、衝突痕表示用オブジェクト５とするために、ビル６から複製するプリミティブ面を選択する。具体的には、砲弾４とビル６とが衝突したと判定された場合に、衝突位置Ｈを求め、衝突位置Ｈを中心に所定の判定領域８を設定する。そして、ビル６のモデリングデータのストリップデータを順次参照し、判定領域８に頂点Ｐが一つでも含まれるストリップデータを選択する。
【００６５】
衝突痕表示用オブジェクト設定部２２２は、プリミティブ面選択部２２１によって選択されたプリミティブ面を複製して、衝突痕表示用の新たなオブジェクトを生成する。具体的には、プリミティブ面選択部２２１によって選択されたビル６のストリップデータを、当該衝突痕表示用オブジェクト５を構成するプリミティブ面として設定し、各プリミティブ面を構成する頂点Ｐ毎に透明度αｐ値を設定する。
【００６６】
画像生成部２４は、例えばＣＰＵやＤＳＰなどの演算装置やその制御プログラム、フレームバッファなどの描画フレーム用ＩＣメモリなどによって実現される。画像生成部２４は、ゲーム演算部２２による演算結果に基づいて幾何変換処理やシェーディング処理、αブレンディング処理等の色情報の合成処理などを実行して、ゲーム画面を表示するための３ＤＣＧ画像を生成し、生成した画像の画像信号を画像表示部３０に出力する。
本実施形態では、画像生成部２４は、衝突痕表示用オブジェクト５を構成するプリミティブ面の各頂点Ｐに設定されたαｐ値から、各描画点における透明度αｆ値を算出し、この透明度αｆ値と衝突痕テクスチャ５２８に設定された透明度αｔ値とに基づくアルファブレンディング処理によって、衝突痕テクスチャ５２８を単位法線ベクトルＮｈと平行に平行投影マッピングする。
【００６７】
画像表示部３０は、画像生成部２４で生成された画像信号に基づいて、例えば１／６０秒毎に１フレームの画面を再描画しながらゲーム画面を表示する。画像表示部３０は、例えばＣＲＴ、ＬＣＤ、ＥＬＤ、ＰＤＰ、ＨＭＤ等のハードウェアによって実現できる。図１の例ではディスプレイ１２２０がこれに該当する。
【００６８】
音生成部２６は、例えばＣＰＵやＤＳＰなどの演算装置及びその制御プログラムによって実現される。音生成部２６は、ゲーム中に使用される効果音やＢＧＭなどの音を生成し、生成した音の音信号を音出力部４０に出力する。
【００６９】
音出力部４０は、音生成部２６からの音信号に基づいて効果音やＢＧＭ等を音出力する。図１の例ではスピーカ１２２２がこれに該当する。
【００７０】
通信部４２は、通信制御部２８からの制御信号に従って通信回線２に接続して、外部装置４４とのデータ通信を行う。例えば、近距離無線通信などのモジュール、モデム、ＴＡ、有線用の通信ケーブルのジャックや制御回路などによって実現される。図１の通信装置１２１８がこれに該当する。尚、通信部４２が、通信時に供するプロトコル等に係る情報は、例えば記憶部５０に記憶されており適宜読み出して利用する。
【００７１】
記憶部５０は、処理部２０に家庭用ゲーム装置１２００を統合的に制御させるための諸機能を実現させるシステムプログラム（図示略）や、ゲームを実行させるために必要なプログラム及びデータを格納するゲーム情報５２等を記憶している。また、処理部２０が演算処理に必要な各種のプログラムやデータを一時的に記憶する。記憶部５０は、例えば各種ＩＣメモリ、メモリカード、ハードディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ等の情報記憶媒体によって実現できる。図１の例ではＣＤ−ＲＯＭ１２１２、ＩＣメモリ１２１４、メモリカード１２１６がこれに該当する。
【００７２】
ゲーム情報５２は、処理部２０をゲーム演算部２２として機能させるためのプログラム及びデータを含んでいる。本実施形態では特に、処理部２０をプリミティブ面選択部２２１として機能させるためのプリミティブ面選択プログラム５２１と、衝突痕表示用オブジェクト設定部２２２として機能させるための衝突痕表示用オブジェクト設定プログラム５２２とを含んでいる。
【００７３】
また、データとしては、ビル６を表示させるためのビルモデル情報５２６と、衝突痕表示用オブジェクト５を表示させるための衝突痕表示用モデル情報５２７と、衝突痕テクスチャ５２８とを含んでいる。また、図示していないが、戦車３や砲弾４、砲弾４の着弾時の爆発を表示するためのエフェクト情報、その他のゲームに登場するキャラクタや背景を表示させるための情報も含まれている。
【００７４】
ビルモデル情報５２６は、ビル６の外観形状を記述する複数のストリップデータを含むモデリングデータ５２６ａと、ビル６に適用されるテクスチャデータ５２６ｂとを格納する。また、砲撃を受けて破壊・変形する様子を表現するためにオブジェクトを変形させるためのデータも含まれる。
【００７５】
衝突痕表示用モデル情報５２７には、プリミティブ面選択部２２１によって選択されたビル６のストリップデータの複製データであるモデリングデータ５２７ａと、プリミティブ面の各頂点Ｐのαｐ値を対応づける透明度情報５２７ｂとが格納される。衝突痕表示用モデル情報５２７は、衝突痕表示用オブジェクト設定部２２２によって管理される情報である。ゲーム開始当初の初期状態では存在しないが、ゲームが進行し、砲弾４がビル６に当る都度、衝突痕表示用オブジェクト設定部２２２によって新たな衝突痕表示用オブジェクト５毎に作成される。
【００７６】
[処理の流れの説明]
図７は、本実施形態におけるゲーム全体の処理の流れを説明するためのフローチャートである。同図に示すように、ゲーム演算部２２が、プレーヤによる操作入力に応じてゲームに登場するオブジェクトそれぞれについて移動軌跡を算出し（ステップＳ２）、この移動軌跡に基づいて各オブジェクトを移動させる（ステップＳ４）。例えば、砲弾４であれば初速度と発射角度、重力等に基づいて弾道が移動軌跡として算出され、砲弾４は弾道に沿って移動するように制御される。
【００７７】
次に、算出された移動軌跡とビル６との交差判定を実行し、砲弾４がビル６に衝突するか否かを判定する。砲弾４がビル６に衝突すると判定された場合（ステップＳ６；ＹＥＳ）、更に砲弾４が移動軌跡に沿って移動処理されて、ビル６に衝突したか否かを判定する（ステップＳ８）。
【００７８】
砲弾４がビル６に衝突したと判定された場合（ステップＳ８；ＹＥＳ）、ゲーム演算部２２は、砲弾４が衝突したことによる破壊や変形を表現するためにビル６のオブジェクトを変形し（ステップＳ１０）、衝突痕表示用オブジェクト設定処理を実行する（ステップＳ１２）。
【００７９】
図８は、本実施形態における衝突痕表示用オブジェクトの設定に係る処理の流れを説明するためのフローチャートである。尚、着弾時の爆発そのものの描画等は従来と同様にして実現可能であるのでここでの説明は省略してある。
【００８０】
同図に示すように、先ずゲーム演算部２２のプリミティブ面選択部２２１が衝突位置Ｈを判定し(ステップＳ２０)、衝突位置Ｈを中心に所定の判定領域８を設定する(ステップＳ２２)。そして、ビルモデル情報５２６のモデリングデータ５２６ａを参照し、判定領域８に頂点Ｐが含まれるストリップデータを選択する(ステップＳ２４)。
【００８１】
判定領域８に頂点Ｐが含まれるストリップデータを選択できなかった場合（ステップＳ２６；ＹＥＳ）、すなわち該当するストリップデータが無い場合には、判定領域８を内包する大きなプリミティブ面内に衝突位置Ｈが有ると判断し、図９に示すように、ビル６の各プリミティブ面Ｆの中央部に仮想頂点Ｑを設定する(ステップＳ２８)。仮想頂点Ｑの情報は、記憶部５０に一時的に記憶される。
【００８２】
次に、プリミティブ面選択部２２１は、判定領域８に含まれる仮想頂点Ｑを選択し（ステップＳ３０）、選択された仮想頂点Ｑが設定されたプリミティブ面の頂点Ｐを含むストリップデータを選択する（ステップＳ３２）。
【００８３】
判定領域８に頂点Ｐが含まれるストリップデータが選択されたならば、衝突痕表示用オブジェクト設定部２２２が、衝突痕表示用オブジェクトを設定する。
すなわち、選択されたストリップデータを衝突痕表示用モデル情報５２７のモデリングデータ５２７ａとして複製記憶させ（ステップＳ３４）、衝突位置Ｈと衝突痕テクスチャ５２８の中心とが一致するようにして、衝突位置Ｈを含むプリミティブ面Ｆｈの単位法線ベクトルＮｈと平行に衝突痕テクスチャ５２８を平行投影マッピングするように設定する（ステップＳ３６）。尚、本実施形態では、ビル６のストリップデータをそのまま複製するので、当該衝突痕表示用オブジェクトの配置位置は変化しない。すなわち、当該衝突痕表示用オブジェクトのプリミティブ面は、複製元になったビル６のプリミティブ面と同じ位置に配置されることになる。
【００８４】
次に、設定された衝突痕表示用オブジェクト５を構成するプリミティブ面の頂点Ｐ毎にループ１を実行して、各頂点Ｐに透明度αｐ値を設定する（ステップＳ３８〜Ｓ４６）。ループ１では、先ず衝突位置Ｈから処理対象の頂点ＰまでのベクトルＶを算出する（ステップＳ４０）。次いで、このベクトルＶと衝突位置Ｈを含むプリミティブ面Ｆｈの単位法線ベクトルＮｈとの内積を算出し（ステップＳ４２）、この内積の絶対値の二乗の逆数に適当な係数ｋを乗じた値をαｐ値とする（ステップＳ４４）。そして、衝突痕表示用オブジェクト５の全頂点Ｐについてループ１を実行したならば、衝突痕表示用オブジェクト設定処理を終了する。
【００８５】
次に、図７において、ゲーム演算部２２は、新たに設定された衝突痕表示用オブジェクトを３次元仮想空間内に配置し（ステップＳ１４）、画像生成部２４は所与の仮想カメラを視点とし、衝突痕表示用オブジェクトをビル６にアルファブレンディング処理したゲーム画面を生成する（ステップＳ１６）。この際、各描画位置におけるアルファブレンディング処理に適用されるα値は、衝突痕表示用オブジェクト５のプリミティブ面の各頂点Ｐに設定されているαｐ値と描画位置との位置関係から算出されるαｆ値と、衝突痕テクスチャ５２８の各画素に設定されているαｔ値との積である。
【００８６】
そして、アルファブレンディング処理によって、ビル６の表面に煤痕が表示されたゲーム画面が生成されたならば、画像表示部３０にゲーム画面を表示させる（ステップＳ１８）。そして、ゲーム演算部２２はゲームの終了判定を実行し、プレイ結果が所定の終了条件を満たしていれば（ステップＳ２０；ＹＥＳ）、ゲームオーバーとなる。
【００８７】
以上の処理によって、マルチテクスチャマッピングの機能を利用しなくとも、ビル６の上の着弾によって生じた煤痕のテクスチャを重ねて表示させるマルチテクスチャマッピングと同様の効果を得ることができる。
【００８８】
尚、衝突痕表示用オブジェクト５の頂点Ｐに透明度αｐ値を設定する際、衝突位置Ｈから頂点ＰまでのベクトルＶと、衝突位置Ｈの単位法線ベクトルＮｈとの内積の絶対値を算出した後に、この絶対値の二乗の逆数からαｐ値を算出する構成としたがこれに限るものではない。衝突位置Ｈから頂点Ｐが離れるほどαｐ値が大きくなり透明になるように設定できれば良く、その他の関数を用いる構成としても構わない。
【００８９】
また、衝突位置Ｈにおける単位法線ベクトルＮｈのみを用いて算出するとしたが、例えば、ステップＳ４２において衝突位置Ｈから所定範囲に含まれる近傍のプリミティブ面を選択して、選択されたプリミティブ面における単位法線ベクトルの平均値を算出し、この平均値とベクトルＶとの内積の絶対値を算出する構成としても良い。この場合、衝突を受けるオブジェクト（ビル６）を構成するプリミティブの数が多く、比較的小範囲で複雑な凹凸形状を成している場合でも安定した表現を実現できる。
【００９０】
[ハードウェアの構成]
次に、家庭用ゲーム装置１２００を実現できるハードウェアの構成について説明する。図１０は、本実施形態におけるハードウェア構成の一例を示す図である。家庭用ゲーム装置１２００は、ＣＰＵ１０００と、ＲＯＭ１００２と、ＲＡＭ１００４と、情報記憶媒体１００６と、音生成ＩＣ１００８と、画像生成ＩＣ１０１０と、Ｉ／Ｏポート１０１２及び１０１４とを有し、システムバス１０１６により相互にデータの入出力が可能に接続されている。
【００９１】
ＣＰＵ１０００は、図６における処理部２０に該当し、情報記憶媒体１００６に格納されているプログラムやＲＯＭ１００２に格納されているシステムプログラム及びコントロール装置１０２２によって入力される操作入力信号等に従って、装置全体の制御や各種のデータ処理を行う。
【００９２】
ＲＯＭ１００２やＲＡＭ１００４及び情報記憶媒体１００６は、図６における記憶部５０に該当する。ＲＯＭ１００２は図１の本体装置１２１０の制御ユニット１２１１に搭載されているＩＣメモリに該当し、システムプログラム等の本体装置１２１０の制御にかかわるプログラムやデータを記憶する。
【００９３】
ＲＡＭ１００４は、ＣＰＵ１０００の作業領域などとして用いられる記憶手段であり、情報記憶媒体１００６やＲＯＭ１００２の所与の内容、或いはＣＰＵ１０００の演算結果が格納される。
【００９４】
情報記憶媒体１００６は、図１のＣＤ−ＲＯＭ１２１２、ＩＣメモリ１２１４、メモリカード１２１６に該当し、図６のゲーム情報５２を記憶する。情報記憶媒体１００６は、ＩＣメモリカードや着脱自在なハードディスクユニット、ＭＯ、ＤＶＤ−ＲＯＭなどによって実現されＲＯＭ１００２に記憶される情報を記憶し、適宜読み出して利用する。
【００９５】
音生成ＩＣ１００８は、ＲＯＭ１００２や情報記憶媒体１００６に記憶されている情報に基づいて効果音やＢＧＭ等のゲーム音を生成する集積回路であり、生成された音はスピーカ１０２０によって出力される。なお、スピーカ１０２０は、図６における音出力部４０、図１におけるスピーカ１２２２に該当する。
【００９６】
画像生成ＩＣ１０１０は、表示装置１０１８に画像を出力するための画素情報を生成する集積回路である。図６における画像生成部２４がこれに該当する。表示装置１０１８は、図６の画像表示部３０、図１におけるディスプレイ１２２０に該当する。
【００９７】
Ｉ／Ｏポート１０１２には、コントロール装置１０２２が接続され、Ｉ／Ｏポート１０１４には、通信装置１０２４が接続されている。コントロール装置１０２２は、図６の操作入力部１０及び図１のゲームコントローラ１２０２に相当するものであり、プレーヤが種々のゲーム操作を入力するための装置である。
【００９８】
通信装置１０２４は、ゲーム装置内部で利用される各種の情報を外部とやり取りするものであり、他のゲーム装置と接続されてゲームプログラムに応じた所与の情報を送受信し、通信回線を介してゲームプログラム等の情報を送受信することなどに利用される。図６の通信部４２及び図１の通信装置１２１８に該当する。
【００９９】
尚、画像生成ＩＣ１０１０、音生成ＩＣ１００８等で行われる処理はＣＰＵ１０００、或いは汎用のＤＳＰ等によってソフトウェア的に実行する構成としても良い。
【０１００】
〔変形例の説明〕
以上、本発明を適用した実施形態について説明したが、本発明の適用がこれらに限定されるものではなく、発明の趣旨を逸脱せず同様の作用・効果を得られる限りにおいて、適宜構成要素の追加・省略・変更等を行っても構わない。
【０１０１】
例えば、本発明は、図１に示した家庭用ゲーム装置１２００だけでなく、業務用ゲーム装置や携帯型ゲーム装置、パソコン等の汎用コンピュータ、多機能携帯電話機、多数のプレーヤが参加する大型アトラクション装置等の種々の装置にも同様に適用できる。
【０１０２】
例えば図１１は、本発明を業務用ゲーム装置１３００に適用した場合の外観の一例を示す図である。同図に示すように、業務用ゲーム装置１３００は、ゲーム画面を画像表示するディスプレイ１３０２と、ゲームの効果音やＢＧＭを出力するスピーカ１３０４と、前後左右方向を入力するジョイスティック１３０６と、プッシュボタン１３０８と、演算処理によって業務用ゲーム装置１３００を統合的に制御して所与のゲームを実行する制御ユニット１３２０とを備える。
【０１０３】
制御ユニット１３２０は、ＣＰＵ等の演算処理装置と、業務用ゲーム装置１３００の制御及びゲームの実行に必要なプログラムやデータが格納されたＲＯＭ１３２２を搭載する。制御ユニット１３２０に搭載されるＣＰＵは、ＲＯＭ１３２２よりプログラムやデータを適宜読み出して演算処理することによって種々の処理を実行する。そして、プレーヤは、ディスプレイ１３０２に表示されたゲーム画面を見ながら、ジョイスティック１３０６とプッシュボタン１３０８からゲーム操作の入力をしてゲームを楽しむ。
【０１０４】
また、本発明は、スタンドアローンの装置によって実行されるゲームに限らず、ネットワークゲームと呼ばれているゲームに適用しても構わない。ネットワークゲームを実現するシステム構成としては、例えば、1)家庭に設置してあるパソコンや家庭用ゲームシステム等をゲーム端末とし、インターネット網や専用線網等の有線／無線の通信回線を通じてサーバと接続する構成、2)サーバを用いることなく複数のゲーム端末同士が通信回線で接続される構成、3)複数のゲーム端末同士が通信回線で接続されるが、その内の一台がサーバ機能を有する構成、4)複数のゲーム端末が物理的に結合し、全体として一台のシステム（例えば業務用のゲームシステム）となっている構成などがある。
【０１０５】
また、上記実施形態では、衝突痕として爆発の煤痕を例に説明したが、弾痕や血痕、トマトがぶつかった痕、泥はね、キズを表現する場合にも、衝突痕テクスチャの内容を適宜変更することによって同様に適用することが可能である。
【０１０６】
また、砲弾の着弾と適用する衝突痕テクスチャを一対一の対応としているが、異なる衝突痕テクスチャを、砲弾の種類や着弾時の速度ベクトルと対応づけて適用する構成としても良い。例えば、着弾時の速度ベクトルと対応づけて適用する構成の場合、ステップＳ３６において、砲弾４の移動軌跡とビル６の交差位置における速度ベクトルと、衝突位置Ｈの単位法線ベクトルＮｈ又は衝突位置Ｈから所定範囲内のプリミティブ面の単位法線ベクトルＮｈの平均値とから衝突角度を求める。そして、予めゲーム情報５２として記憶しておいた衝突角度に応じた複数種類の衝突痕テクスチャから、算出された衝突角度に応じて選択し、これを衝突痕表示用オブジェクト５に適用する。砲弾の種類と対応づけて適用する構成の場合でも、同様にして、予め砲弾種類に対応づけて複数種類の衝突痕テクスチャを用意しておいて選択する。
【０１０７】
また、図３に示すように、衝突痕表示用オブジェクトとするプリミティブ面を選択する際に用いる判定領域８を、判定領域８の直方体が、衝突位置Ｈの単位法線ベクトルＮｈの方向に面を向けるように設定したがこれに限るものではない。
例えば、図１２は、砲弾４の速度ベクトルＴと判定領域８の関係を示す平面視概念図である。同図に示すように、判定領域８を、砲弾４の移動方向に長辺を有する形状としても良い。具体的には、ステップＳ２２において、砲弾４の移動軌跡とビル６の交差位置における速度ベクトルと、衝突位置Ｈの単位法線ベクトルＮｈ又は衝突位置Ｈから所定範囲内のプリミティブ面の単位法線ベクトルＮｈの平均値とから交差角度θ（衝突角度）のｓｉｎ値を算出する。そして、交差角度が０度すなわち正面衝突する場合に立方体の判定領域８を設定し、交差角度θのｓｉｎ値に応じて、例えば（（判定領域８の短辺の長さ）×（１＋ｓｉｎθ））を長辺の長さとし、判定領域８を速度ベクトル方向に沿って伸張させる。これによって、衝突痕テクスチャ５２８を砲弾４の移動方向（同図では図中右方向）に引き伸ばされた領域にテクチャマッピングさせることが可能となり、砲弾４の慣性方向に「掃かれた」ように衝突痕を表示させることができる。
尚、ここで言う単位法線ベクトルＮｈは、衝突位置Ｈから所定範囲に含まれるプリミティブ面における単位法線ベクトルの平均であっても良いのは勿論である。
【図面の簡単な説明】
【０１０８】
【図１】画像生成装置の一種である家庭用ゲーム装置の構成の一例を示す図。
【図２】ビルオブジェクトのモデル構成の概念を説明するための図。
【図３】衝突痕表示用オブジェクトの生成について説明するための図。
【図４】衝突痕表示用オブジェクトの描画に係る透明度の設定について説明するための図。（ａ）衝突痕テクスチャに設定される透明度αｔ値を説明するための図、（ｂ）衝突痕表示用オブジェクトの斜視図とその上面図であって、頂点Ｐに設定されるαｐ値と、描画点Ｐｆの透明度αｆ値とを説明するための図。
【図５】衝突痕表示用オブジェクトの配置と描画について説明するための図。
【図６】家庭用ゲーム装置の機能構成の一例を示す機能ブロック図。
【図７】ゲーム全体の処理の流れを説明するためのフローチャート。
【図８】衝突痕表示用オブジェクトの設定に係る処理の流れを説明するためのフローチャート。
【図９】仮想頂点Ｐ’の設定を説明するための正面図。
【図１０】家庭用ゲーム装置を実現するハードウェア構成の一例を示す図。
【図１１】業務用ゲーム装置の外観の一例を示す図。
【図１２】判定領域の設定方法の変形例を示す平面視概念図。
【符号の説明】
【０１０９】
３  戦車オブジェクト
４  砲弾オブジェクト
５  衝突痕表示用オブジェクト
６  ビルオブジェクト
８  判定領域
２０  処理部
２２  ゲーム演算部
２２１  プリミティブ面選択部
２２２  衝突痕表示用オブジェクト設定部
５０  記憶部
５２  ゲーム情報
５２１  プリミティブ面選択プログラム
５２２  衝突痕表示用オブジェクト設定プログラム
５２６  ビルモデル情報
５２７  衝突痕表示情報
５２８  衝突痕テクスチャ
Ｆ  プリミティブ面
Ｈ  衝突位置
Ｎ  単位法線ベクトル
Ｐ  頂点
【図１】
2005122479.tif 000003
【図２】
2005122479.tif 000004
【図３】
2005122479.tif 000005
【図４】
2005122479.tif 000006
【図５】
2005122479.tif 000007
【図６】
2005122479.tif 000008
【図７】
2005122479.tif 000009
【図８】
2005122479.tif 000010
【図９】
2005122479.tif 000011
【図１０】
2005122479.tif 000012
【図１１】
2005122479.tif 000013
【図１２】
2005122479.tif 000014