JP2010029398A - プログラム、情報記憶媒体及び画像生成システム - Google Patents

プログラム、情報記憶媒体及び画像生成システム Download PDF

Info

Publication number
JP2010029398A
JP2010029398A JP2008194224A JP2008194224A JP2010029398A JP 2010029398 A JP2010029398 A JP 2010029398A JP 2008194224 A JP2008194224 A JP 2008194224A JP 2008194224 A JP2008194224 A JP 2008194224A JP 2010029398 A JP2010029398 A JP 2010029398A
Authority
JP
Japan
Prior art keywords
hit
model object
model
part object
color
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2008194224A
Other languages
English (en)
Inventor
Takashi Kumakura
崇 熊倉
Shinobu Futamura
忍 二村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Bandai Namco Entertainment Inc
Original Assignee
Namco Bandai Games Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Namco Bandai Games Inc filed Critical Namco Bandai Games Inc
Priority to JP2008194224A priority Critical patent/JP2010029398A/ja
Priority to US12/508,826 priority patent/US20100020083A1/en
Priority to EP09166560A priority patent/EP2149394A1/en
Publication of JP2010029398A publication Critical patent/JP2010029398A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/55Controlling game characters or game objects based on the game progress
    • A63F13/57Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game
    • A63F13/577Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game using determination of contact between game characters or objects, e.g. to avoid collision between virtual racing cars
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/52Controlling the output signals based on the game progress involving aspects of the displayed game scene
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • A63F13/63Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor by the player, e.g. authoring using a level editor
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/80Special adaptations for executing a specific game genre or game mode
    • A63F13/833Hand-to-hand fighting, e.g. martial arts competition
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/6009Methods for processing data by generating or executing the game program for importing or creating game content, e.g. authoring tools during game development, adapting content to different platforms, use of a scripting language to create content
    • A63F2300/6018Methods for processing data by generating or executing the game program for importing or creating game content, e.g. authoring tools during game development, adapting content to different platforms, use of a scripting language to create content where the game content is authored by the player, e.g. level editor or by game device at runtime, e.g. level is created from music data on CD
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/64Methods for processing data by generating or executing the game program for computing dynamical parameters of game objects, e.g. motion determination or computation of frictional forces for a virtual car
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/64Methods for processing data by generating or executing the game program for computing dynamical parameters of game objects, e.g. motion determination or computation of frictional forces for a virtual car
    • A63F2300/643Methods for processing data by generating or executing the game program for computing dynamical parameters of game objects, e.g. motion determination or computation of frictional forces for a virtual car by determining the impact between objects, e.g. collision detection
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/66Methods for processing data by generating or executing the game program for rendering three dimensional images
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/66Methods for processing data by generating or executing the game program for rendering three dimensional images
    • A63F2300/6638Methods for processing data by generating or executing the game program for rendering three dimensional images for simulating particle systems, e.g. explosion, fireworks
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/80Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game specially adapted for executing a specific type of game
    • A63F2300/8029Fighting without shooting

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Processing Or Creating Images (AREA)

Abstract

【課題】モデルオブジェクトのダメージを簡易な処理でリアルに表現することができるプログラム、情報記憶媒体及び画像生成システムを提供すること。
【解決手段】複数のパーツオブジェクトそれぞれに対応付けて属性情報を記憶し、前記モデルオブジェクトのヒット位置に対応するパーツオブジェクトの属性情報に応じたヒットエフェクト処理を行う。
【選択図】図12

Description

本発明は、プログラム、情報記憶媒体及び画像生成システムに関する。
従来から、仮想的な3次元空間であるオブジェクト空間内において仮想カメラ(所与の視点)から見える画像を生成する画像生成システム(ゲームシステム)が知られており、いわゆる仮想現実感を体験できるものとして人気が高い。
従来の画像生成システムでは、一方のキャラクタの攻撃により、一方のキャラクタが他方のキャラクタにヒットしたと判断されると、ヒットエフェクト処理を行うものがある(特許文献1)。しかし、従来のヒットエフェクト処理は、ヒット位置から火花を発生させるものであり、攻撃を受けたときのキャラクタのダメージをリアルに表現できなかった。
特開2006−268406号公報
本発明は、上記課題に鑑みたものであり、モデルオブジェクトのダメージを簡易な処理でリアルに表現することができるヒットエフェクト処理を行うプログラム、情報記憶媒体及び画像生成システムを提供することにある。
(1)本発明は、モデルオブジェクトを構成する複数のパーツオブジェクトを記憶する記憶部と、オブジェクトがモデルオブジェクトにヒットしたか否かを判定するヒット判定部と、前記オブジェクトが前記モデルオブジェクトにヒットしたと判定された場合には、所定条件下でヒットエフェクト処理を行うヒットエフェクト処理部として、コンピュータを機能させ、前記記憶部が、複数のパーツオブジェクトそれぞれに対応付けて属性情報を記憶し、前記ヒットエフェクト処理部が、前記モデルオブジェクトのヒット位置に対応するパーツオブジェクトの属性情報に応じたヒットエフェクト処理を行うプログラムに関する。
また、本発明は、コンピュータ読み取り可能な情報記憶媒体であって、上記各部としてコンピュータを機能させるプログラムを記憶した情報記憶媒体に関する。また、本発明は、上記各部を含む画像生成システムに関係する。
本発明によれば、モデルオブジェクトのヒット位置に対応するパーツオブジェクトの属性情報に応じてヒットエフェクト処理を行うので、そのモデルオブジェクトのパーツオブジェクトを、あたかも破壊させたかのような様子を表現できる。つまり、本発明によればモデルオブジェクトのダメージを簡易な処理でリアルに表現することができる。
(2)また、本発明のプログラム、情報記憶媒体、画像生成システムは、前記記憶部が、複数のパーツオブジェクトそれぞれに対応付けて、前記属性情報として素材情報を記憶し、前記ヒットエフェクト処理部が、複数種類のエフェクトオブジェクトの中から、前記モデルオブジェクトのヒット位置に対応するパーツオブジェクトの素材情報に応じたエフェクトオブジェクトを選択し、選択されたエフェクトオブジェクトを用いてヒットエフェクト処理を行うようにしてもよい。本発明によれば、パーツオブジェクトの素材をエフェクトオブジェクトに反映させることができ、エフェクトオブジェクトが、パーツオブジェクトの破片であるかのような印象をプレーヤに与えることができる。
(3)また、本発明のプログラム、情報記憶媒体、画像生成システムは、前記記憶部が、複数のパーツオブジェクトそれぞれに対応付けて、前記属性情報として色情報を記憶し、前記ヒットエフェクト処理部が、前記モデルオブジェクトのヒット位置に対応するパーツオブジェクトの色情報に応じてエフェクトオブジェクトの色を決定し、決定された色のエフェクトオブジェクトを用いてヒットエフェクト処理を行うようにしてもよい。本発明によれば、パーツオブジェクトの色をエフェクトオブジェクトの色に反映させることができ、エフェクトオブジェクトが、パーツオブジェクトの破片であるかのような印象をプレーヤに与えることができる。
(4)また、本発明のプログラム、情報記憶媒体、画像生成システムは、前記記憶部が、前記パーツオブジェクトの配色情報を含む色情報を記憶し、前記ヒットエフェクト処理部が、前記モデルオブジェクトのヒット位置に対応するパーツオブジェクトの配色情報に応じて、エフェクトオブジェクトの色を決定すると共に、決定された色のエフェクトオブジェクトの数を決定するようにしてもよい。本発明によれば、パーツオブジェクトの配色情報に応じて、エフェクトオブジェクトの色及びその色の登録数を決定することができるので、パーツオブジェクトが破壊されたときの破片の配色や、破片の数をリアルに表現することができる。
(5)また、本発明のプログラム、情報記憶媒体、画像生成システムは、前記ヒットエフェクト処理部が、前記モデルオブジェクトのヒット位置に対応するパーツオブジェクトの大きさに応じて、エフェクトオブジェクトの数を決定するようにしてもよい。本発明によれば、パーツオブジェクトの大きさをエフェクトオブジェクトの数に反映させることができる。
(6)また、本発明のプログラム、情報記憶媒体、画像生成システムは、前記ヒットエフェクト処理部が、前記モデルオブジェクトのヒット位置に複数のパーツオブジェクトが対応付けられている場合には、パーツオブジェクトそれぞれについて、パーツオブジェクトの属性情報に応じたヒットエフェクト処理を行うようにしてもよい。本発明によれば、パーツオブジェクトそれぞれに対して、属性情報に応じたヒットエフェクト処理を行うので、よりパーツオブジェクトが破壊されたような印象をプレーヤに与えることができる。
以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
1.構成
図1に本実施形態の画像生成システム(ゲームシステム)の機能ブロック図の例を示す。なお本実施形態の画像生成システムは図1の構成要素(各部)の一部を省略した構成としてもよい。
操作部160は、プレーヤがプレーヤオブジェクト(プレーヤが操作するモデルオブジェクト)の操作データを入力するためのものであり、その機能は、レバー、ボタン、ステアリング、マイク、タッチパネル型ディスプレイ、或いは筺体などにより実現できる。
記憶部170は、処理部100や通信部196などのワーク領域となるもので、その機能はRAM(VRAM)などにより実現できる。
スロット状態データ記憶部177には、スロット状態データが記憶される。ここで、スロット状態データとは、スロットにパーツオブジェクトデータの配置の有無や、配置されているパーツオブジェクトデータの種類を特定するためのデータである。ここで、「パーツオブジェクト」は1又は複数の「パーツオブジェクトデータ」で構成されており、この「パーツオブジェクトデータ」それぞれが、いずれか1つの「スロット」に対応付けられている。すなわち、スロット状態データは、スロット単位でパーツオブジェクトデータの配置設定を管理するための情報である。
オブジェクトデータ記憶部179は、オブジェクトデータが記憶される。本実施形態のオブジェクトデータ記憶部179は、モデルオブジェクトデータ記憶部179a、パーツオブジェクトデータ記憶部179bとを有する。
モデルオブジェクトデータ記憶部179aには、モデルオブジェクトデータが記憶される。本実施形態のモデルオブジェクトデータ記憶部179aは、複数のモデルオブジェクトを記憶するために、複数のバッファを設け、各バッファにモデルオブジェクトデータを記憶する。
パーツオブジェクトデータ記憶部179bには、複数のパーツオブジェクトが記憶される。この複数のパーツオブジェクトは、複数のカテゴリのいずれかのカテゴリに分類してパーツオブジェクトデータ記憶部179bに記憶される。ここで、カテゴリとは、頭部分、首部分、腕部分など、モデルオブジェクトの部分に応じて決められる属性である。
また、パーツオブジェクトデータ記憶部179bは、複数のパーツオブジェクトそれぞれに対応付けて、パーツオブジェクトの大きさ、素材情報、色情報などの属性情報を記憶する。ここで、色情報は、パーツオブジェクトに配色されている色や、配色割合である。例えば、パーツオブジェクトデータ記憶部179bは、パーツオブジェクトに、第1の色と、第2の色とが配色されている場合には、第1の色と、第2の色との配色割合を記憶する。
また、本実施形態では、プレーヤの入力情報(例えば、操作部160からの操作情報)に基づいて、サーバからパーツオブジェクトをダウンロードして、パーツオブジェクトデータ記憶部179b、情報記憶媒体180に記憶させる処理を行ってもよい。
情報記憶媒体180(コンピュータにより読み取り可能な媒体)は、プログラムやデータなどを格納するものであり、その機能は、光ディスク(CD、DVD)、光磁気ディスク(MO)、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ(ROM)、メモリカードなどにより実現できる。
処理部100は、情報記憶媒体180に入力されるプログラム(データ)に基づいて本実施形態の種々の処理を行う。
即ち情報記憶媒体180には、本実施形態の各部としてコンピュータを機能させるためのプログラム(各部の処理をコンピュータに実行させるためのプログラム)が記憶される。また、情報記憶媒体180に、プレーヤの個人データやゲームのセーブデータなどを記憶してもよい。
なお、本実施形態では、情報記憶媒体180に、モデルオブジェクトデータや、パーツオブジェクトデータを記憶させ、必要に応じて、モデルオブジェクトデータ記憶部179a、パーツオブジェクトデータ記憶部179bにロードしてもよい。
表示部190は、本実施形態により生成された画像を出力するものであり、その機能は、CRT、LCD、タッチパネル型ディスプレイ、或いはHMD(ヘッドマウントディスプレイ)などにより実現できる。音出力部192は、本実施形態により生成された音を出力するものであり、その機能は、スピーカ、或いはヘッドフォンなどにより実現できる。
通信部196は外部(例えばホスト装置や他の画像生成システム)との間で通信を行うための各種制御を行うものであり、その機能は、各種プロセッサ又は通信用ASICなどのハードウェアや、プログラムなどにより実現できる。
なお、本実施形態の各部としてコンピュータを機能させるためのプログラム(データ)を、ネットワークを介してサーバからダウンロードし、記憶部170や、情報記憶媒体180に記憶するようにしてもよい。このようなサーバの記憶部に記憶されているプログラムも本発明の範囲内に含めることができる。
処理部100(プロセッサ)は、記憶部170内の主記憶部171をワーク領域として各種処理を行う。処理部100の機能は各種プロセッサ(CPU、DSP等)、ASIC(ゲートアレイ等)などのハードウェアや、プログラムにより実現できる。
処理部100は、オブジェクト空間設定部110、移動・動作処理部111、仮想カメラ制御部112、受け付け部113、設定部114、スロット状態更新部115、モデルオブジェクトデータ更新部116、ゲーム演算部117、ヒット判定部118、ヒットエフェクト処理部119、描画部120、音生成部130を含む。なおこれらの一部を省略する構成としてもよい。
オブジェクト空間設定部110は、モデルオブジェクト、キャラクタ、建物、球場、車、樹木、柱、壁、マップ(地形)などの表示物を表す各種オブジェクト(ポリゴン、自由曲面又はサブディビジョンサーフェスなどのプリミティブで構成されるオブジェクト)をオブジェクト空間に配置設定する処理を行う。即ちワールド座標系でのモデルオブジェクトの位置や回転角度(向き、方向と同義)を決定し、その位置(X、Y、Z)にその回転角度(X、Y、Z軸回りでの回転角度)でオブジェクトを配置する。
移動・動作処理部111は、オブジェクト(キャラクタ、車、又は飛行機等)の移動・動作演算(移動・動作シミュレーション)を行う。すなわち操作部160によりプレーヤが入力した操作データや、プログラム(移動・動作アルゴリズム)や、各種データ(モーションデータ)などに基づいて、オブジェクトをオブジェクト空間内で移動させたり、オブジェクトを動作(モーション、アニメーション)させる処理を行う。具体的には、オブジェクトの移動情報(位置、回転角度、速度、或いは加速度)や動作情報(各パーツオブジェクトの位置、或いは回転角度)を、1フレーム(1/60秒)毎に順次求めるシミュレーション処理を行う。なおフレームは、オブジェクトの移動・動作処理(シミュレーション処理)や画像生成処理を行う時間の単位である。
仮想カメラ制御部112は、オブジェクト空間内の所与(任意)の視点から見える画像を生成するための仮想カメラ(視点)の制御処理を行う。具体的には、仮想カメラの位置(X、Y、Z)又は回転角度(X、Y、Z軸回りでの回転角度)を制御する処理(視点位置や視線方向を制御する処理)を行う。
例えば仮想カメラによりオブジェクト(例えばキャラクタ、ボール、車)を後方から撮影する場合には、オブジェクトの位置又は回転の変化に仮想カメラが追従するように、仮想カメラの位置又は回転角度(仮想カメラの向き)を制御する。この場合には、移動・動作処理部111で得られたオブジェクトの位置、回転角度又は速度などの情報に基づいて、仮想カメラを制御できる。或いは、仮想カメラを、予め決められた回転角度で回転させたり、予め決められた移動経路で移動させる制御を行ってもよい。この場合には、仮想カメラの位置(移動経路)又は回転角度を特定するための仮想カメラデータに基づいて仮想カメラを制御する。なお、仮想カメラ(視点)が複数存在する場合には、それぞれの仮想カメラについて上記の制御処理が行われる。
受け付け部113は、カテゴリ毎に、パーツオブジェクトの選択を受け付ける処理を行う。具体的には、プレーヤの入力情報に基づいて、画面に表示された複数のカテゴリの中から1のカテゴリの選択を受け付け、選択されたカテゴリについて複数のパーツオブジェクトの中から1つのパーツオブジェクトの選択を受け付ける。つまり、本実施形態の受け付け部113は、プレーヤの入力情報に基づいて、1つのカテゴリについて1つのパーツオブジェクトの選択を受け付ける。
設定部114は、複数のカテゴリそれぞれについてパーツオブジェクトを決定し、決定されたパーツオブジェクトをモデルオブジェクトの構成要素として設定する。例えば、設定部114は、受け付け部113において、選択されたパーツオブジェクトを、複数のカテゴリそれぞれについてのパーツオブジェクトとして決定してもよい。
また、設定部114は、全てのカテゴリの中から所与のアルゴリズムに基づき所定条件下で複数のカテゴリを決定し、決定された複数のカテゴリのそれぞれについて、1つのパーツオブジェクトを所定条件下で決定し、決定されたパーツオブジェクトをモデルオブジェクトの構成要素として設定してもよい。
なお、本実施形態の設定部114は、選択されたパーツオブジェクトに対応付けて、既に設定されているパーツオブジェクトのカテゴリの指定情報が記憶されている場合であって、当該既に設定されているパーツオブジェクトに対応付けて、選択されたパーツオブジェクトのカテゴリの指定情報が記憶されている場合に、選択されたパーツオブジェクト、又は、当該既に設定されているパーツオブジェクトを設定してもよい。
スロット状態更新部115は、選択されたパーツオブジェクトを、モデルオブジェクトの構成要素として設定される場合には、選択されたパーツオブジェクトを構成する1又は複数のパーツオブジェクトデータそれぞれに対応するスロットに、他のパーツオブジェクトデータが配置されている場合に、各パーツオブジェクトデータの配置優先順位を決定するパーツオブジェクトの優先順位情報に基づいて、スロットのスロット状態データを更新すべきか否かを判断し、その判断結果に基づき、スロット状態データ記憶部177に記憶されているスロット状態データを更新する処理を行う。すなわち各スロットに対してパーツオブジェクトデータを配置設定する処理を行う。
優先順位情報は、配置優先順位が上位であるパーツオブジェクトデータ(上位パーツオブジェクトデータ)を、そのパーツオブジェクトデータより配置優先順位が下位であるパーツオブジェクトデータ(下位パーツオブジェクトデータ)に優先してスロットに配置設定するための情報である。また優先順位情報は、カテゴリ単位で設定される。
モデルオブジェクトデータ更新部116は、スロット状態データ記憶部177に記憶されているスロット状態データに基づいて、モデルオブジェクトデータ記憶部179aに記憶されるモデルオブジェクトデータを更新する処理を行う。
具体的には、モデルオブジェクトデータ更新部116は、スロット状態データが更新されたスロットに配置されるパーツオブジェクトデータを、パーツオブジェクトデータ記憶部179bから読み込み、モデルオブジェクトデータ記憶部179aの第1のバッファ(更新バッファ)に読み込み、モデルオブジェクトデータ更新部116は、既に配置されているモデルオブジェクトデータが記憶されているモデルオブジェクトデータ記憶部179aの第2のバッファから、スロット状態データが更新されていないスロットに既に配置されているパーツオブジェクトデータを、第1のバッファへコピーする処理を行うようにしてもよい。なお、スロット状態データが更新されていないスロットに既に配置されているパーツオブジェクトデータを、パーツオブジェクトデータ記憶部179bから、第1のバッファに読み込むようにしてもよい。
ゲーム演算部117は、操作部160からの操作データやプログラムなどに基づいて、ゲーム処理を行う。ここでゲーム演算としては、ゲーム開始条件が満たされた場合にゲームを開始する処理、ゲームを進行させる処理、キャラクタやマップなどのオブジェクトを配置する処理、オブジェクトを表示する処理、ゲーム結果を演算する処理、或いはゲーム終了条件が満たされた場合にゲームを終了する処理などがある。
具体的には、ゲーム演算部117は、ヒット判定結果に基づいて、第1、第2のモデルオブジェクトの体力値、第1、第2のモデルオブジェクトの耐久値を変動させる処理を行う。例えば、第1のモデルオブジェクトの攻撃の入力情報に基づいて、第1のモデルオブジェクトを移動・動作させ(攻撃のモーションを実行させ)、第2のモデルオブジェクトにヒットしたと判定されると、第2のモデルオブジェクトの体力値から所定値(例えば攻撃に応じたダメージ値)を減算する処理を行う。また、第1のモデルオブジェクトの攻撃に対し、第2のモデルオブジェクトが防御した場合には、第1のモデルオブジェクトの攻撃によって、第1のモデルオブジェクトと第2のモデルオブジェクトとがヒットしたとしても、第2のモデルオブジェクトの体力値を減算させずに、第2のモデルオブジェクトの耐久値に所定値(例えば攻撃に応じたダメージ値)を加算する処理を行う。しかし、耐久値がしきい値を超えると、第1のモデルオブジェクトの攻撃に対し、第2のモデルオブジェクトの防御することができず、第2のモデルオブジェクトの体力値から第1のモデルオブジェクトの攻撃に応じたダメージ値を減算させる。
また、ゲーム演算部117は、ゲーム開始後、所定期間内に、先に体力値が零になったモデルオブジェクトを負けと判定し、他方のモデルオブジェクトを勝ちと判定する。また、ゲーム演算部117は、所定期間経過しても、各モデルオブジェクトの体力値が零よりも大きい値である場合には、第1のモデルオブジェクトと第2のモデルオブジェクトとの体力値を比較し、体力値が大きいモデルオブジェクトを勝ちと判定し、体力値が低いモデルオブジェクトを負けと判定し、また、第1のモデルオブジェクトの体力値と第2のモデルオブジェクトの体力値とが同じ値である場合には、引き分けと判定する。
ヒット判定部118は、オブジェクトがモデルオブジェクトにヒットしたか否かを判定する。ここで、オブジェクトとは、相手モデルオブジェクト(敵モデルオブジェクト)や、相手モデルオブジェクトが所持する武器(剣)などを含む。例えば、ヒット判定部118は、第1のモデルオブジェクト(例えば、相手モデルオブジェクト)と第2のモデルオブジェクト(例えば、プレーヤの操作対象のモデルオブジェクト)とがヒットしたか否かを判定する処理を行う。具体的には、第1のモデルオブジェクトのヒット領域と、第2のモデルオブジェクトのヒット領域とを用いて、第1のモデルオブジェクトと第2のモデルオブジェクトとがヒットしたか否かを判定する。
ヒットエフェクト処理部119は、オブジェクトがモデルオブジェクトにヒットしたと判定された場合には、所定条件下でヒットエフェクト処理を行う。ここで、所定条件とは、
パーツオブジェクトを破壊させる条件である。例えば、相手モデルオブジェクトからの攻撃によって、プレーヤのモデルオブジェクトの上段、中段、下段のいずれかの部位に対応するヒット領域にヒットされたと判定されると、プレーヤのモデルオブジェクトの耐久値がしきい値を超えたか否かを判断し、耐久値がしきい値を超えたと判断されると、所定条件を満たすと判断し、ヒットエフェクト処理を行う。
また、ヒットエフェクト処理部119は、モデルオブジェクトのヒット位置に対応するパーツオブジェクトの属性情報に応じたヒットエフェクト処理を行う。より具体的に説明すると、ヒットエフェクト処理部119は、複数種類のエフェクトオブジェクトの中から、モデルオブジェクトのヒット位置に対応するパーツオブジェクトの素材情報に応じたエフェクトオブジェクトを選択し、選択されたエフェクトオブジェクトを用いてヒットエフェクト処理を行う。
また、ヒットエフェクト処理部119は、モデルオブジェクトのヒット位置に対応するパーツオブジェクトの色情報に応じてエフェクトオブジェクトの色を決定し、決定された色のエフェクトオブジェクトを用いてヒットエフェクト処理を行う。かかる場合には、ヒットエフェクト処理部119は、モデルオブジェクトのヒット位置に対応するパーツオブジェクトの配色情報に応じて、エフェクトオブジェクトの色を決定すると共に、決定された色のエフェクトオブジェクトの数を決定する。
また、ヒットエフェクト処理部119は、モデルオブジェクトのヒット位置に対応するパーツオブジェクトの大きさに応じて、エフェクトオブジェクトの数を決定する。
ヒットエフェクト処理部119は、モデルオブジェクトのヒット位置に複数のパーツオブジェクトが対応付けられている場合には、パーツオブジェクトそれぞれについて、パーツオブジェクトの属性情報に応じたヒットエフェクト処理を行う。
描画部120は、処理部100で行われる種々の処理(ゲーム処理)の結果に基づいて描画処理を行い、これにより画像を生成し、表示部190に出力する。いわゆる3次元ゲーム画像を生成する場合には、まず、座標変換(ワールド座標変換、カメラ座標変換)、クリッピング処理、或いは透視変換等のジオメトリ処理が行われ、その処理結果に基づいて、描画データ(プリミティブの頂点の位置座標、テクスチャ座標、色データ、法線ベクトル或いはα値等)が作成される。そして、この描画データ(オブジェクトデータ)に基づいて、透視変換後(ジオメトリ処理後)のオブジェクト(1又は複数のプリミティブ)を画像バッファ173(フレームバッファや中間バッファ(ワークバッファ)などのピクセル単位で画像情報を記憶できるバッファ。VRAM)に描画する。これにより、オブジェクト空間内において仮想カメラ(所与の視点)から見える画像が生成される。なお、仮想カメラ(視点)が複数存在する場合には、それぞれの仮想カメラから見える画像を分割画像として1画面に表示できるように描画処理を行う。
描画部120は、ジオメトリ処理部122、シェーディング処理部124、αブレンディング部126、陰面消去部128を含む。
ジオメトリ処理部122は、オブジェクトに対してジオメトリ処理を行う。具体的には、座標変換、クリッピング処理、透視変換、或いは光源計算等のジオメトリ処理を行う。そして、ジオメトリ処理後(透視変換後)のオブジェクトデータ(オブジェクトの頂点の位置座標、テクスチャ座標、色データ(輝度データ)、法線ベクトル、或いはα値等)は、オブジェクトデータ記憶部179に保存される。
シェーディング処理部124は、オブジェクトに対して陰影付けをするシェーディング処理を行う。具体的には、ジオメトリ処理部122で行われた光源計算の結果(陰影情報)に基づき、オブジェクトの描画ピクセルの輝度を調整する。必要に応じて、ジオメトリ処理部122で光源計算を行わずに、シェーディング処理部124で光源計算を行わせてもよい。シェーディング処理としては、例えば、フラットシェーディング(flat Shading)、あるいはグローシェーディング(Gourand Shading)やフォンシェーディング(Pho ng Shading)などのスムーズシェーディングをオブジェクトに対して行うことができる。
αブレンディング部126は、α値(A値)に基づく半透明合成処理(通常αブレンディング、加算αブレンディング又は減算αブレンディング等)を行う。例えば通常αブレンディングの場合には下式(1)〜(3)の処理を行う。
=(1−α)×R+α×R (1)
=(1−α)×G+α×G (2)
=(1−α)×B+α×B (3)
また、加算αブレンディングの場合には下式(4)〜(6)の処理を行う。
=R+α×R (4)
=G+α×G (5)
=B+α×B (6)
また、減算αブレンディングの場合には下式(7)〜(9)の処理を行う。
=R−α×R (7)
=G−α×G (8)
=B−α×B (9)
ここで、R、G、Bは、画像バッファ173に既に描画されている画像(元画像)のRGB成分であり、R、G、Bは、画像バッファ173に描画すべき画像のRGB成分である。また、R、G、Bは、αブレンディングにより得られる画像のRGB成分である。なお、α値は、各ピクセル(テクセル、ドット)に関連づけて記憶できる情報であり、例えば色情報以外のプラスアルファの情報である。α値は、マスク情報、半透明度(透明度、不透明度と等価)、バンプ情報などとして使用できる。
隠面消去部128は、描画ピクセルのZ値(奥行き情報)が格納されるZバッファ175(奥行きバッファ)を用いて、Zバッファ法(奥行き比較法、Zテスト)により隠面消去処理を行う。すなわちオブジェクトのプリミティブに対応する描画ピクセルを描画する際に、Zバッファ175に格納されるZ値を参照する。そして参照されたZバッファ175のZ値と、プリミティブの描画ピクセルでのZ値とを比較し、描画ピクセルでのZ値が、仮想カメラから見て手前側となるZ値(例えば小さなZ値)である場合には、その描画ピクセルの描画処理を行うとともにZバッファ175のZ値を新たなZ値に更新する。
音生成部130は、処理部100で行われる種々の処理の結果に基づいて音処理を行い、BGM、効果音、又は音声などのゲーム音を生成し、音出力部192に出力する。
なお、本実施形態の画像生成システムは、1人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。
また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、1つの端末を用いて生成してもよい。
また、本実施形態の画像生成システムでは、ネットワーク(伝送ライン、通信回線)を介して接続された他の1又は複数の画像生成システムと、データ(例えば入力情報)を送受信する処理を行い、オンラインゲームを実現できるようにしてもよい。
2.本実施形態の手法の概要
(1)スロット
本実施形態では、モデルオブジェクトを構成する複数のスロットそれぞれに、パーツオブジェクトデータの配置設定を行う手法を採用する。
スロットは、モデル座標系に設定されるパーツオブジェクトデータの配置空間のことであり、モデルオブジェクトの構成部位に相当するものである。本実施形態では、図2に示すように人体の構成部位に対応する素体系スロットA1〜A14(広義には、第1のスロット)と、図3に示すように人体に装着される装飾物の構成部位に対応するアイテム系スロットB1〜B10(広義には、第2のスロット)とを設定している。
例えば、図2では、人体の構成部位を14の素体系スロットA1〜A14に対応させており、例えば、腕を例に採ると、腕は、A4〜A7の4の素体系スロットからなり、A4は上腕部、A5は肘、A6は前腕部、A7は手というように人体の構成部位に対応している。素体系スロットA1〜A14には、実際の人体の構成部位に対応するパーツオブジェクトのみならず、シャツやジャケットなどのパーツオブジェクトをも配置設定することができる。例えば、Tシャツを例に採ると、半袖Tシャツならば、A3、A4、A8及びA9の素体系スロットを用いてパーツを構成することができ、長袖Tシャツならば、A3〜A6、A8及びA9の素体系スロットを用いてパーツを構成することができる。
また、例えば、図3では、1又は複数の素体系スロットとオーバーラップしてアイテム系スロットB1〜B10が設定されている。このアイテム系スロットB1〜B10は、服を重ね着する場合など複数のパーツオブジェクトデータを重ねて配置する必要がある場合に用いられるスロットである。言い換えれば、重ね着用のスロットということができる。例えば、B2は、顔にひげをつける場合に用いられるスロットである。またB1、B3〜B6、及びB8〜B10を用いると、全身鎧などが設定できる。このアイテム系スロットB1〜B10は、基本的に、素体系スロットA1〜A14に配置設定されるパーツオブジェクトデータよりも配置優先順位が上位のパーツオブジェクトデータが配置設定される。またアイテム系スロット内でも配置優先順位がより上位のパーツオブジェクトデータが配置設定されるものがある。例えば、B7などは、道着の上から帯を締めている場合やスカートにベルトをつける場合などに用いられ、B8に配置されるパーツオブジェクトデータよりも配置優先順位が上位のパーツオブジェクトデータが配置設定される。
本実施形態のように素体系スロットA1〜A14と、アイテム系スロットB1〜B10とを設定して、各スロットにパーツオブジェクトデータを配置して1体のモデルオブジェクトを構築することにより、複数のパーツオブジェクトを重ね着したように見えるモデルオブジェクトの画像を生成することができる。またアイテム系スロットB1〜B10に配置されるパーツオブジェクトデータと素体系スロットA1〜A14に配置されるパーツオブジェクトデータとの重ね合わせにより、例えば、鎧の隙間から関節が見えるといった表現ができるようになる。
(2)カテゴリに分類する手法
本実施形態では、複数のカテゴリを設け、複数のパーツオブジェクトをいずれかの1つのカテゴリに対応づけて、パーツオブジェクトデータ記憶部179bに記憶する。
より具体的に説明すると、本実施形態では、1又は複数の素体系スロットあるいはアイテム系スロットに配置される1又は複数のパーツオブジェクトデータ(スロット単位のパーツオブジェクトデータ)を、1つのカテゴリに対応づけて、パーツオブジェクトデータ記憶部179bに記憶する。
図4を用いて、パーツオブジェクトの対応関係について説明する。例えば、本実施形態では、複数のカテゴリのうち、例えば、「兜」、「ブルゴネット」、「シルクハット」のパーツオブジェクトは、モデルオブジェクトの頭の上部分を決める「Head」カテゴリに分類され、素体系スロットA1に配置される。
また、「オペラマスク」は、モデルオブジェクトのマスクを決めるための「Mask」に分類され、素体系スロットA2に配置される。
また、図4に示すように、本実施形態では、カテゴリそれぞれに配置優先順位を示す優先順位情報を予め設定している。この優先順位情報は、素体系スロットA1〜A14あるいはアイテム系スロットB1〜B10に配置設定すべきパーツオブジェクトデータを決定するスロット状態データの更新処理に用いられる情報である。なお、例外的に、優先順位情報を無視してスロット状態データの更新処理が行われる場合もある。
また、図4に示すように、本実施形態では、パーツオブジェクトデータ記憶部179bに、パーツオブジェクトの各スロットに対応するパーツオブジェクトデータ(スロット単位のパーツオブジェクトデータ)を記憶する。例えば、カテゴリ「Inner」の「Tシャツ」は、スロットA3に対応するパーツオブジェクトデータInner_A3_1と、スロットA4に対応するパーツオブジェクトデータInner_A4_1と、スロットA8に対応するパーツオブジェクトデータInner_A8_1と、スロットA9に対応するパーツオブジェクトデータInner_A9_1とを、パーツオブジェクトデータ記憶部179bに記憶する。
本実施形態では、配置優先順位が上位のパーツオブジェクトデータを配置設定する際に、配置優先順位が下位のパーツオブジェクトデータに対応するスロットの配置設定をクリアするための配置設定クリア情報を記憶してもよい。
配置設定クリア情報は、パーツオブジェクトデータが素体系スロット(例えば、A8)と、アイテム系スロット(例えば、B3)とにオーバーラップして配置設定される場合に、アイテム系スロットに配置されたパーツオブジェクトデータに隠れて見えなくなることにより、配置設定する必要のないスロットを特定するための情報である。スロット状態データの更新の際には、配置設定クリア情報に基づいて、設定されたスロットについてパーツオブジェクトデータの配置設定を行わない、あるいは、既に配置設定されているパーツオブジェクトデータの配置設定をクリアする更新処理が行われる。
(3)パーツオブジェクトの選択
本実施形態では、プレーヤの入力情報に基づいて、各カテゴリからパーツオブジェクトの選択を受け付け、選択されたパーツオブジェクトを、モデルオブジェクトの構成要素として設定する処理を行う。
図5は、パーツオブジェクトの選択画面の一例である。例えば、本実施形態では、複数のカテゴリのうち、いずれか1つのカテゴリの選択を受け付け、受け付けたカテゴリ内の複数のパーツオブジェクトのうち、いずれか1つのパーツオブジェクトの選択を受け付ける。例えば図5は、複数のカテゴリのうちカテゴリ「Head」が選択され、カテゴリ「Head」に属する複数のパーツオブジェクトから「ブルゴネット」のパーツオブジェクトが選択された画像の一例である。
なお、本実施形態の各パーツオブジェクトには、ゲーム演算で用いられるパラメータ(パワースキル値、インパクトスキル値などのパラメータ)が設定され、このパラメータに基づいて、プレーヤに有利に働くスキルを設定可能としている。このようにすれば、モデルオブジェクトにパーツオブジェクトの着せ替えを行うだけでなく、ゲームの戦略性を考慮した着せ替えを行うことができる。
(4)パーツオブジェクトの色選択
本実施形態では、プレーヤの入力情報に基づいて、モデルオブジェクトを構成する各パーツオブジェクトの色を決定する。
図6は、パーツオブジェクトの色を選択するための色選択画面の一例である。例えば、本実施形態では、複数のカテゴリのうち、モデルオブジェクトの構成要素となっているパーツオブジェクトの色を、プレーヤの入力情報に基づいて決定する。例えば図6に示すようには、「Head」カテゴリのパーツオブジェクト(例えば「シルクハット」)の領域1に配色する色Head_C1と、領域2に配色する色Head_C2とを表示させている。
本実施形態では、複数段階の彩度(鮮やかさ)を設け、彩度に応じた色を決定することができる。例えば、彩度1の赤色は、くすんだ赤色、彩度9の赤色は鮮明な明るい赤色である。
本実施形態では、所与のパーツオブジェクトの領域(例えば、「シルクハット」の領域1)の選択を受け付けると、その領域の色(例えば、Head_C1)を決定するための色相と彩度とからなるカラーパレット座標を表示部190に表示させる。そして、プレーヤの指示入力された座標値の色相と彩度とに基づいて、その領域の色を決定している。
(5)素体情報の設定
本実施形態では、モデルオブジェクトの素体情報をプレーヤの入力情報に基づいて決定することができる。図7は、モデルオブジェクトの素体情報設定画面の一例である。
例えば、本実施形態では、モデルオブジェクトの髪の色Hair_C1、眉・ひげの色Hair_C2、目の色Eye_C1、肌の色Skin_C1を、パーツオブジェクトの色と同様な手法で決定することができる。
(6)スロット状態データの更新処理
本実施形態では、スロット状態データの更新処理によりモデルオブジェクトを構成するパーツオブジェクトのパーツオブジェクトデータを、スロットに配置設定する手法を採用する。
本実施形態では、プレーヤが選択したカテゴリのパーツオブジェクトと同一のカテゴリであって、他のパーツオブジェクトがスロットに配置されていない場合には、プレーヤが選択したカテゴリのパーツオブジェクトのパーツオブジェクトデータに対応するスロットのスロット状態データを更新すべきであると判断し、プレーヤが選択したパーツオブジェクトのパーツオブジェクトデータに対応するスロットに、プレーヤが選択したパーツオブジェクトのパーツオブジェクトデータを配置設定してスロット状態データを更新する。
例えば、プレーヤが「Head」カテゴリに属する複数のパーツオブジェクトから、パーツオブジェクト「シルクハット」を選択した場合であって、「Head」カテゴリのパーツオブジェクトが配置されていない場合には、「シルクハット」のパーツオブジェクトデータを配置設定してスロット状態データを更新する。
また、本実施形態では、プレーヤが選択したカテゴリと同一のカテゴリの他のパーツオブジェクトのパーツオブジェクトデータが既に配置されている場合には、当該他のパーツオブジェクトデータに替えて選択されたパーツオブジェクトのパーツオブジェクトデータを配置設定してスロット状態データを更新する。
例えば、プレーヤが「Head」カテゴリから、パーツオブジェクト「シルクハット」を選択した場合であって、既にモデルオブジェクトに「Head」カテゴリのパーツオブジェクトである「兜」のパーツオブジェクトのパーツオブジェクトデータがスロットに配置されている場合には、パーツオブジェクト「兜」に替えて、パーツオブジェクト「シルクハット」のパーツオブジェクトデータを配置設定してスロット状態データを更新する。
また、本実施形態では、プレーヤが選択したパーツオブジェクトのパーツオブジェクトデータに対応するスロットに、既に、選択したカテゴリとは異なるカテゴリの他のパーツオブジェクトのパーツオブジェクトデータが配置されている場合には、優先順位情報に基づいて決定される各カテゴリの配置優先順位をスロット単位で比較して、スロット状態データを更新する。
なお、パーツオブジェクトに複数のスロットが指定されている場合であっても、パーツオブジェクトのパーツオブジェクトデータに対応するスロット単位でスロット状態データを更新すべきか否かを判断し、スロット単位でスロット状態データを更新している。このようにすることによって、モデルオブジェクトを構成するオブジェクトデータのデータ量を最小限に抑えることができ、モデルオブジェクトに対して自然な重ね着を表現できる。
具体的には、以下の(A)〜(C)のようにスロット状態データの更新を行うことができる。
(A)プレーヤが、カテゴリから選択したパーツオブジェクトのパーツオブジェクトデータに対応するスロットに、既に他のパーツオブジェクト(選択したカテゴリとは異なるカテゴリのパーツオブジェクト)のパーツオブジェクトデータが配置されている場合であって、プレーヤが選択したパーツオブジェクトのパーツオブジェクトデータが、他のパーツオブジェクトよりも配置優先順位が上位である場合には、スロット状態データを更新すべきであると判断し、該スロットに他のパーツオブジェクトのパーツオブジェクトデータに替えて選択されたパーツオブジェクトのパーツオブジェクトデータを配置設定してスロット状態データを更新する。
(B)プレーヤが選択したパーツオブジェクトのパーツオブジェクトデータに対応するスロットに、既に他のパーツオブジェクト(選択したカテゴリとは異なるカテゴリのパーツオブジェクト)のパーツオブジェクトデータが配置されている場合であって、プレーヤが選択したパーツオブジェクトのパーツオブジェクトデータが、他のパーツオブジェクトのパーツオブジェクトデータよりも配置優先順位が下位である場合には、スロット状態データを更新すべきでないと判断する。この場合には、そのスロットのスロット状態データを更新せずに、他のパーツオブジェクトのパーツオブジェクトデータについての配置設定を維持する。
(C)プレーヤが選択したパーツオブジェクトのパーツオブジェクトデータに対応するスロットに、既に他のパーツオブジェクト(選択したカテゴリとは異なるカテゴリのパーツオブジェクト)のパーツオブジェクトデータが配置されている場合であって、プレーヤが選択したパーツオブジェクトのパーツオブジェクトデータと、他のパーツオブジェクトのパーツオブジェクトデータとの配置優先順位が同位である場合には、該スロットに他のパーツオブジェクトのパーツオブジェクトデータに替えて選択されたパーツオブジェクトのパーツオブジェクトデータを配置設定してスロット状態データを更新する。
3.ヒットエフェクト処理
本実施形態は、プレーヤの操作情報(攻撃を行う操作情報、攻撃を防御する操作情報)等)に基づいて、プレーヤの操作対象のモデルオブジェクト(プレーヤのモデルオブジェクト)と、相手モデルオブジェクトとが互いに攻撃・防御を行う対戦格闘ゲームのためのゲーム処理を行う。本実施形態では、一方のモデルオブジェクトの攻撃によって、一方のモデルオブジェクトが他方のモデルオブジェクトにヒットしたと判定されると、所定条件下で、他方のパーツオブジェクトを破壊させるヒットエフェクト処理を行っている。以下、詳細に説明する。
(1)パーツオブジェクトを破壊させるヒットエフェクト処理を行う手法
図8は、本実施形態のモデルオブジェクトの一例を示す。例えば、「Head」カテゴリのパーツオブジェクト「シルクハット」と、「Shoulder」カテゴリのパーツオブジェクト「肩パッド」、「Inner」カテゴリの「Tシャツ」、「Lower」カテゴリの「ズボン」、「Feet」カテゴリの「靴」が、モデルオブジェクトの構成要素として設定されているとする。
そして、本実施形態では、予め、複数のカテゴリを、モデルオブジェクトの上段、中段、下段の各部位に分類する。例えば、図9に示すように、「Head」カテゴリ、「Shoulder」カテゴリそれぞれを上段に対応付け、「Inner」カテゴリを中段に対応付け、「Lower」カテゴリ、「Feet」カテゴリそれぞれを下段に対応付ける。
そして、本実施形態では、相手モデルオブジェクトからの攻撃によって、相手モデルオブジェクトが、プレーヤのモデルオブジェクトにヒットしたか否かを判定する。そして、相手モデルオブジェクトが、プレーヤのモデルオブジェクトにヒットしたと判定されると、プレーヤのモデルオブジェクトのヒット位置に応じて、パーツオブジェクトを破壊させるヒットエフェクト処理を行う。例えば、本実施形態では、プレーヤのモデルオブジェクトのヒット位置が、上段のカテゴリのパーツオブジェクトである場合には、上段に対応付けられたカテゴリのパーツオブジェクトを破壊させるヒットエフェクト処理を行う。
図10(A)〜(C)を用いて、プレーヤのモデルオブジェクトの上段部位のパーツオブジェクトを破壊させるヒットエフェクト処理について具体的に説明する。
図10(A)は、ヒット直前におけるプレーヤのモデルオブジェクトの一例である。つまり、ヒット直前におけるモデルオブジェクトには、上段部位に対応付けられている「Head」カテゴリの「シルクハット」と、「Shoulder」カテゴリの「肩パッド」とが、モデルオブジェクトの構成要素として設定されている。
そして、図10(B)は、相手モデルオブジェクトからの攻撃によって、相手モデルオブジェクトがプレーヤのモデルオブジェクトにヒットしたと判定された直後のフレームの画像の一例を示す。
本実施形態では、相手モデルオブジェクトがプレーヤのモデルオブジェクトにヒットしたと判定されると、攻撃を受けた側のプレーヤのモデルオブジェクトのヒット位置が、モデルオブジェクトの上段、中段、下段のいずれの部位に対応しているのかを特定する。例えば、ヒット領域を上段ヒット領域、中段ヒット領域、下段ヒット領域に分けて、ヒット位置がいずれの領域にヒットしたかを特定し、モデルオブジェクトのヒット位置に対応する部位を特定する。そして、ヒット位置に対応する部位が特定されると、その部位に対応するパーツオブジェクトを破壊させるヒットエフェクト処理を行う。
例えば、ヒット位置がモデルオブジェクトの上段であると特定されると、上段に対応付けられるカテゴリのパーツオブジェクトである「シルクハット」と「肩パッド」とを破壊対象のパーツオブジェクトとする。
本実施形態では、まず、破壊対象のパーツオブジェクトを、モデルオブジェクトの構成要素から削除する処理を行いスロット状態データを更新する。すなわち、「シルクハット」のパーツオブジェクトをモデルオブジェクトの構成要素から削除することによって、「シルクハット」のパーツオブジェクトデータが配置設定されていたスロットに、例えば「顔」のパーツオブジェクトのパーツオブジェクトデータを配置設定し、また、「肩パッド」のパーツオブジェクトデータが配置設定されていたスロットに、「Tシャツ」のパーツオブジェクトデータを配置設定して、スロット状態データを更新する処理を行う。
すなわち、本実施形態では、パーツオブジェクトの「シルクハット」をモデルオブジェクトの構成要素から削除することによって、モデルオブジェクトの頭の上部分(髪)が見えるようにし、また、「肩パッド」をモデルオブジェクトの構成要素から削除することによって、「Tシャツ」の肩部分が見えるようにスロット状態データを更新する。したがって、本実施形態では、予め、モデルオブジェクトを構成する複数のパーツオブジェクトのうち、スロットに配置されていないスロット単位でのパーツオブジェクトデータを記憶部170に記憶しておく。
本実施形態では、異なるカテゴリの複数のパーツオブジェクトが、素体系スロット(例えば、A8)と、アイテム系スロット(例えば、B3)とにオーバーラップしてしまう場合に、配置設定クリア情報に基づいて、素体系スロット(例えば、A8)にパーツオブジェクトデータを配置設定していないように処理を行っていた場合には、このアイテム系スロット(例えば、B3)に配置されていたパーツオブジェクトを破壊させるヒットエフェクト処理を行う際に、このアイテム系スロット(例えば、B3)に配置されていたパーツオブジェクトデータをクリアすると共に、記憶部170に記憶している素体系スロット(例えば、A8)用のパーツオブジェクトのパーツオブジェクトデータを、素体系スロット(例えばA8)に配置設定して、スロット状態データを更新する処理を行う。
また、本実施形態では、複数の異なるカテゴリパーツオブジェクトが同一スロットに競合し、配置優先順位が上位のパーツオブジェクトのパーツオブジェクトデータをスロットに配置設定している場合には、この配置優先順位が上位のパーツオブジェクトを破壊させるヒットエフェクト処理を行う際には、このスロットに配置設定されていたパーツオブジェクトのパーツオブジェクトデータをクリアすると共に、記憶部170に記憶している配置優先順位が下位のパーツオブジェクトのパーツオブジェクトデータを、このスロットに配置設定してスロット状態データを更新する処理を行う。
なお、本実施形態では、顔、頭、半裸等の素体のパーツオブジェクトは、破壊対象外となっている。つまり、モデルオブジェクトに着せる服、帽子等のパーツオブジェクト(帽子等)を破壊対象としている。なお、破壊対象外のパーツオブジェクトは、予め破壊禁止情報を設定し、破壊対象のパーツオブジェクトと区別できるようにする。
そして、本実施形態では、図10(B)に示すように、破壊対象のパーツオブジェクトの破片に見立てた複数のエフェクトオブジェクトEOBを、オブジェクト空間に配置させる処理を行う。ここで、エフェクトオブジェクトEOBとは、パーツオブジェクトよりも大きさの小さい破片オブジェクトであり、パーティクルである。
例えば、破壊直後のエフェクトオブジェクトEOBの位置は、モデルオブジェクトの位置に基づいて決定される。例えば、モデルオブジェクトの周囲(モデルオブジェクトの中心位置に基づく所定範囲内に)に、複数のエフェクトオブジェクトEOBを離散させて配置させる。また、図10(B)に示すように、破壊対象のモデルオブジェクトの部位に応じた範囲(例えば上段範囲)に、複数のエフェクトオブジェクトEOBを離散させて配置させる。
また、破壊直後のエフェクトオブジェクトEOBの位置は、破壊対象パーツオブジェクトの位置に基づいて、ランダムに決定してもよい。例えば、「シルクハット」のパーツオブジェクトの位置P1周囲(P1を中心とする所定範囲内)に、「シルクハット」のパーツオブジェクトに対応する複数のエフェクトオブジェクトEOB1(EOB1_a、EOB1_b)を配置させ、右側の「肩パッド」のパーツオブジェクトの位置P2_R周囲(P2_Rを中心とする所定範囲内)に、右側の「肩パッド」のパーツオブジェクトに対応する複数のエフェクトオブジェクトEOB2(EOB2_a、EOB2_b)を配置させ、同様に、左側の「肩パッド」のパーツオブジェクトの位置P2_L周囲(P2_Lを中心とする所定範囲内)に、左側の「肩パッド」のパーツオブジェクトに対応する複数のエフェクトオブジェクトEOB2(EOB2_a、EOB2_b)を配置させてもよい。
また、図10(B)に示すように、ヒットしたと判定された直後のフレームでは、モデルオブジェクト中心(モデルオブジェクトの上段ヒット領域中心でもよい)に、閃光を表示させる。本実施形態では、例えば、オブジェクト空間にスプライトを配置させて、このスプライトに閃光模様のテクスチャをマッピングさせ、スプライトが仮想カメラに正対するようにビルボード処理を行うことによって、この閃光を表現する。このようにすれば、「シルクハット」、「肩パッド」のパーツオブジェクトが削除され、替わりにエフェクトオブジェクトEOB1、EOB2が配置される様子を、プレーヤに気付かれないようにすることができる。なお、本実施形態では、ヒットしたと判定されたフレームから所定期間(例えば4フレーム間)において、フレーム毎にスプライトを小さくしながら、閃光を表示させる。
図10(C)は、モデルオブジェクトに、相手モデルオブジェクトがヒットしたと判定された直後から数フレーム後(例えば、5フレーム後)の画像の一例を示す。本実施形態では、エフェクトオブジェクトEOB1、EOB2それぞれを、予め決められているエフェクトオブジェクトの軌跡情報(パーティクルに係る情報)に基づいて移動させる処理を行う。
このように、本実形形態では、攻撃を受けたモデルオブジェクトについて、重ね着していたパーツオブジェクトを離脱させると共に、そのパーツオブジェクトが破壊される様子を表現することができるので、攻撃を受けたダメージを強調させ、迫力のある印象をプレーヤに与えることができる。
また、ヒット位置に応じたパーツオブジェクトを特定し、特定されたパーツオブジェクトを破壊させるヒットエフェクト処理を行ってもよいが、本実施形態では、モデルオブジェクトの上段・中段・下段の各ヒット領域を設け、ヒット位置が属するヒット領域に対応する部位(上段・中段・下段のいずれかの部位)を特定し、特定された部位に対応付けられた1又は複数のパーツオブジェクト破壊させるヒットエフェクト処理を行っている。このようにすれば、ヒット位置に対応するパーツオブジェクトを忠実に特定する必要はないので、簡易な処理で破壊対象のパーツオブジェクトを特定できる。
(2)エフェクトオブジェクトの説明
本実施形態では、破壊対象の各パーツオブジェクトの属性に基づいて、エフェクトオブジェクトの数、形状、色等を決定する処理を行っている。つまり、エフェクトオブジェクトを、破壊対象のパーツオブジェクトに似たものにすることによって、あたかも、破壊対象のパーツオブジェクトが壊れ、破壊対象のパーツオブジェクトの破片が離散しているかのような様子を表現する。ここで、属性とは例えば、パーツオブジェクトの大きさ、素材、色がある。本実施形態では、予めパーツオブジェクトに対応付けて、属性(大きさ、素材、色)をパーツオブジェクトデータ記憶部179bに記憶する。
まず、本実施形態において、パーツオブジェクトの大きさに基づいて、エフェクトオブジェクトの数を決定する処理について説明する。本実施形態では、パーツオブジェクトの大きさに応じて、エフェクトオブジェクトの数を決定する処理を行う。
例えば、図9に示すように、「シルクハット」のパーツオブジェクトの大きさが「200」であり、「肩パッド」のパーツオブジェクトの大きさが80(なお左右両方の「肩パッド」の大きさ合計は160)である場合には、「シルクハット」に対応するエフェクトオブジェクトEOB1の数を20個に決定し、「肩パッド」に対応するエフェクトオブジェクトEOB2の数を8個(左右両方の「肩パッド」に対応するエフェクトオブジェクトEOB2の合計数は16個)に決定する。つまり、「シルクハット」に対応するエフェクトオブジェクトEOB1の数は、「肩パッド」に対応するエフェクトオブジェクトEOB2の数よりも多くなるように決定される。
また、本実施形態では、破壊対象のパーツオブジェクトの素材に基づいて、予め用意されている複数種類のエフェクトオブジェクトの中からエフェクトオブジェクトを選択し、選択されたエフェクトオブジェクトを用いて、ヒットエフェクト処理を行う。
図11(A)(B)は、エフェクトオブジェクトの一例を示す。例えば、図11(A)は布エフェクトオブジェクトEOB_clothである。本実施形態では、破壊対象のパーツオブジェクトの素材が「布」である場合には、布エフェクトオブジェクトEOB_clothを選択する。また、図11(B)は、鉄エフェクトオブジェクトEOB_steelである。本実施形態では、破壊対象のパーツオブジェクトの素材が「鉄」である場合には、鉄エフェクトオブジェクトEOB_steelを選択する。
例えば、図9に示すように、「シルクハット」の素材は「布」であるので、図10(B)に示すように、「シルクハット」に対応するエフェクトオブジェクトEOB1として、布エフェクトオブジェクトEOB_clothが選択され、この布エフェクトオブジェクトEOB_clothを用いて、ヒットエフェクト処理を行う。また、図9に示すように、「肩パッド」の素材は「鉄」であるので、図10(B)に示すように、「肩パッド」に対応するエフェクトオブジェクトEOB2として、鉄エフェクトオブジェクトEOB_steelが選択され、この鉄エフェクトオブジェクトEOB_steelを用いて、ヒットエフェクト処理を行う。
また、本実施形態では、破壊対象のパーツオブジェクトの色に基づいて、エフェクトオブジェクトの色を決定し、決定されたエフェクトオブジェクトを用いて、ヒットエフェクト処理を行う。
例えば、モデルオブジェクトの構成要素として設定されるパーツオブジェクトには予め色が設定されているので、パーツオブジェクトの色を参照し、参照されたパーツオブジェクトの色をエフェクトオブジェクトの色として決定する処理を行う。また、破壊対象のパーツオブジェクトに複数の色が設定されている場合には、各色に応じて複数のエフェクトオブジェクトそれぞれの色を決定する。
例えば、図10(B)に示すように、「シルクハット」のパーツオブジェクトの第1の色が、Head_C1である場合には、「シルクハット」に対応する複数のエフェクトオブジェクトEOB1のうち、一部のエフェクトオブジェクトEOB1の色を、Head_C1に決定する処理を行う。
また、「シルクハット」のパーツオブジェクトの第2の色が、Head_C2である場合には、「シルクハット」に対応する複数のエフェクトオブジェクトEOB1のうち、他のエフェクトオブジェクトEOB1の色を、Head_C2に決定する処理を行う。
同様に、「肩パッド」のパーツオブジェクトの第1の色が、Shoulder_C1である場合には、「肩パッド」に対応する複数のエフェクトオブジェクトEOB2のうち、一部のエフェクトオブジェクトEOB2の色を、Shoulder_C1に決定する処理を行う。
また、「肩パッド」のパーツオブジェクトの第2の色が、Shoulder_C2である場合には、「肩パッド」に対応する複数のエフェクトオブジェクトEOB2のうち、他のエフェクトオブジェクトEOB2の色を、Soulder_C2に決定する処理を行う。
また、本実施形態では、複数の色が設定されているパーツオブジェクトについては、複数の色それぞれの配色割合に基づいて、各色のエフェクトオブジェクトの数を決定する。
例えば、「シルクハット」のパーツオブジェクトの第1の色(Head_C1)と、第2の色(Head_C2)との割合が、6:4であり、「シルクハット」に対応する複数のエフェクトオブジェクトEOB1の数が20個であると決定されると、20個のエフェクトオブジェクトEOB1うち、6割の12個のエフェクトオブジェクトEOB1の色が、「シルクハット」のパーツオブジェクトの第1の色(Head_C1)に決定され、4割の8個のエフェクトオブジェクトEOB1の色が、「シルクハット」のパーツオブジェクトの第2の色(Head_C2)に決定される。
このようにすれば、さらに、エフェクトオブジェクトが、破壊対象のパーツオブジェクトの破片であるかのような印象をプレーヤに与えることができる。なお、本実施形態のエフェクトオブジェクトは、3種以上の色によって配色されるものであってもよく、かかる場合には、パーツオブジェクトの色の配色割合に応じて、3種類の色のエフェクトオブジェクトを決定し、各色のエフェクトオブジェクトの数を決定する処理を行う。また、決定されたエフェクトオブジェクトの色は、エフェクトオブジェクトを構成するポリゴンの頂点カラーとして決定される。
(3)パーツオブジェクトを破壊させる条件についての説明
本実施形態のゲームシステムでは、プレーヤがモデルオブジェクトを操作して、相手モデルオブジェクトと対戦する、いわゆる対戦格闘ゲームの処理を行う。例えば、相手モデルオブジェクトに攻撃を行う操作入力、相手モデルオブジェクトからの攻撃を防御する操作入力情報に基づいて、プレーヤのモデルオブジェクトと、相手モデルオブジェクトとのヒットを判定するヒット判定処理(衝突判定処理)を行う。例えば、相手モデルオブジェクトが武器(剣等)を振る攻撃(攻撃モーション)を行わせる入力情報に基づき、相手モデルオブジェクトの武器部分に相当するヒット領域が、プレーヤのモデルオブジェクトの上段ヒット領域、中段ヒット領域、下段ヒット領域のいずれかにヒットしたか否かを判定する処理を行う。
相手モデルオブジェクトの攻撃によって、プレーヤのモデルオブジェクトがヒットしたと判定した場合には、プレーヤのモデルオブジェクトの体力値が攻撃に応じて減算される。しかし、プレーヤが防御する操作入力を行うと、耐久値に基づき、プレーヤのモデルオブジェクトは相手モデルオブジェクトからの攻撃を防御することができる。本実施形態では、相手モデルオブジェクトの攻撃を防御させると、相手モデルオブジェクトの攻撃に応じてプレーヤのモデルオブジェクトの耐久値を増加させ、この耐久値がしきい値を超えると、これ以上耐久できないと判断し、相手モデルオブジェクトからの攻撃に対する防御を行うことができず、攻撃に応じてプレーヤのモデルオブジェクトの体力値を減算させる。
本実施形態では、この耐久値に基づいてパーツオブジェクトを破壊させている。例えば、相手モデルオブジェクトからの攻撃によって、プレーヤのモデルオブジェクトの上段、中段、下段のいずれかのヒット領域にヒットされたと判定されると、プレーヤのモデルオブジェクトの耐久値がしきい値を超えたか否かを判断し、耐久値がしきい値を超えたと判断されると、ヒットした際のヒット位置に応じた上段・中段・下段のいずれかのヒット領域に対応する1又は複数のパーツオブジェクトを破壊させるヒットエフェクト処理を行う。
以上の処理により、プレーヤのモデルオブジェクトの耐久力がなくなった様子をパーツオブジェクトの破壊させるエフェクト処理を行うことでリアルに表現することができる。
なお、本実施形態では、相手モデルオブジェクトが特殊な攻撃をした場合、例えば、プレーヤのモデルオブジェクトがガード不能なガード不能技の処理がなされると、プレーヤのモデルオブジェクトを破壊させるヒットエフェクト処理を行うようにしてもよい。
4.本実施形態の処理の手法
図12を用いて、本実施形態の処理の流れについて説明する。まず、相手モデルオブジェクトからの攻撃により、相手モデルオブジェクトが、プレーヤのモデルオブジェクトにヒットしたか否かを判定する(ステップS10)。相手モデルオブジェクトからの攻撃により、相手モデルオブジェクトが、プレーヤのモデルオブジェクトにヒットしたと判定されると(ステップS10のY)、所定条件を満たすか否かを判定する(ステップS20)。例えば、ヒットを受けたプレーヤのモデルオブジェクトの耐久値がしきい値を超えたか否かを判定する。そして、所定条件を満たすと判定されると(ステップS20のY)、プレーヤのモデルオブジェクトのヒット位置に対応する部位を特定し、特定された部位に対応するパーツオブジェクトの素材情報に基づいて、複数種類のエフェクトオブジェクトの中からエフェクトオブジェクトを選択する(ステップS30)。そして、部位に対応するパーツオブジェクトの大きさに基づいてエフェクトオブジェクトの数を決定し(ステップS40)、部位に対応するパーツオブジェクトの色、各色の配色割合に基づいて、エフェクトオブジェクトの色、その色に応じたエフェクトオブジェクトの数を決定する処理を行う(ステップS50)。そして、決定された複数のエフェクトオブジェクトを用いてヒットエフェクト処理を行う(ステップS60)。以上で処理が終了する。
5.応用例
(1)エフェクトオブジェクトの描画手法の応用例
本実施形態では、予め、記憶部に、複数種類のエフェクト模様のテクスチャを記憶させ、破壊対象のパーツオブジェクトの属性に基づいて、複数種類のテクスチャから、1つのテクスチャを選択し、選択されたテクスチャを、エフェクトオブジェクトにマッピングするようにしてもよい。
例えば、破壊対象のパーツオブジェクトの素材情報が布であり、色が赤色である場合には、赤色の布模様のテクスチャを選択し、選択されたテクスチャをエフェクトオブジェクトにマッピングする処理を行う。
(2)ヒットエフェクト処理の応用例
本実施形態では、破壊対象のパーツオブジェクトを、地面に落下させるヒットエフェクト処理を行ってもよい。例えば、破壊対象のパーツオブジェクトが「兜」である場合には、物理演算によって「兜」を落下させる処理を行う。この落下させる対象の「兜」は、モデルオブジェクトの構成要素であったパーツオブジェクトの「兜」とは異なる「落下用の兜」であってもよい。「落下用の兜」を落下させる処理を行う場合には、モデルオブジェクトの構成要素としていたパーツオブジェクト「兜」の色を、この「落下用の兜」の色に反映させるようにしてもよい。
また、破壊対象のパーツオブジェクトを、異なるパーツオブジェクトに差し替える処理を行ってもよい。例えば、「シルクハット」を、「破れシルクハット」に差し替えるように、スロットに配置設定するパーツオブジェクトのパーツオブジェクトデータを「シルクハット」から「破れシルクハット」に変更してスロット状態データを更新するようにしてもよい。
また、本実施形態では、パーツオブジェクトを破壊させる条件を満たすと、モデルオブジェクト自体を変更する処理を行うようにしてもよい。例えば、帽子、肩パッドが装着されたモデルオブジェクトAと、帽子、肩パッドのないTシャツ姿のモデルオブジェクトBとの2体のモデルオブジェクトを用意し、パーツオブジェクトを破壊させる条件を満たすと、モデルオブジェクトAからモデルオブジェクトBに変更する処理を行う。
本実施形態の画像生成システムの機能ブロック図。 スロットの説明図。 スロットの説明図。 カテゴリ、パーツオブジェクト等の対応関係図。 本実施形態のパーツオブジェクトの選択画面の一例。 パーツオブジェクトの色選択画面の一例。 モデルオブジェクトの素体情報の設定画面の一例。 モデルオブジェクトの一例。 パーツオブジェクトの属性の一例。 図10(A)はヒットエフェクト処理部の説明図。 図10(B)はヒットエフェクト処理部の説明図。 図10(C)はヒットエフェクト処理部の説明図。 図11(A)(B)は、エフェクトオブジェクトの一例。 本実施形態の処理例を示すフローチャート。
符号の説明
100 処理部、110 オブジェクト空間設定部、111 移動・動作処理部、
112 仮想カメラ制御部、113 受け付け部、114 設定部、
115 スロット状態更新部、116 モデルオブジェクトデータ更新部、
117 ゲーム演算部、118 ヒット判定部、119 ヒットエフェクト処理部、
120 描画部、122 ジオメトリ処理部、124 シェーディング処理部、
126 αブレンディング部、128 隠面消去部、130 音生成部、
160 操作部、170 記憶部、171 主記憶部、173 画像バッファ、
175 Zバッファ、177 スロット状態データ記憶部、
179 オブジェクトデータ記憶部、179a モデルオブジェクトデータ記憶部、
179b パーツオブジェクトデータ記憶部、180 情報記憶媒体、
190 表示部、192 音出力部、196 通信部

Claims (8)

  1. モデルオブジェクトを構成する複数のパーツオブジェクトを記憶する記憶部と、
    オブジェクトがモデルオブジェクトにヒットしたか否かを判定するヒット判定部と、
    前記オブジェクトが前記モデルオブジェクトにヒットしたと判定された場合には、所定条件下でヒットエフェクト処理を行うヒットエフェクト処理部として、コンピュータを機能させ、
    前記記憶部が、
    複数のパーツオブジェクトそれぞれに対応付けて属性情報を記憶し、
    前記ヒットエフェクト処理部が、
    前記モデルオブジェクトのヒット位置に対応するパーツオブジェクトの属性情報に応じたヒットエフェクト処理を行うことを特徴とするプログラム。
  2. 請求項1において、
    前記記憶部が、
    複数のパーツオブジェクトそれぞれに対応付けて、前記属性情報として素材情報を記憶し、
    前記ヒットエフェクト処理部が、
    複数種類のエフェクトオブジェクトの中から、前記モデルオブジェクトのヒット位置に対応するパーツオブジェクトの素材情報に応じたエフェクトオブジェクトを選択し、選択されたエフェクトオブジェクトを用いてヒットエフェクト処理を行うことを特徴とするプログラム。
  3. 請求項1又は2において、
    前記記憶部が、
    複数のパーツオブジェクトそれぞれに対応付けて、前記属性情報として色情報を記憶し、
    前記ヒットエフェクト処理部が、
    前記モデルオブジェクトのヒット位置に対応するパーツオブジェクトの色情報に応じてエフェクトオブジェクトの色を決定し、決定された色のエフェクトオブジェクトを用いてヒットエフェクト処理を行うことを特徴とするプログラム。
  4. 請求項3において、
    前記記憶部が、
    前記パーツオブジェクトの配色情報を含む色情報を記憶し、
    前記ヒットエフェクト処理部が、
    前記モデルオブジェクトのヒット位置に対応するパーツオブジェクトの配色情報に応じて、エフェクトオブジェクトの色を決定すると共に、決定された色のエフェクトオブジェクトの数を決定することを特徴とするプログラム。
  5. 請求項1〜4のいずれかにおいて、
    前記ヒットエフェクト処理部が、
    前記モデルオブジェクトのヒット位置に対応するパーツオブジェクトの大きさに応じて、エフェクトオブジェクトの数を決定することを特徴とするプログラム。
  6. 請求項1〜5のいずれかにおいて
    前記ヒットエフェクト処理部が、
    前記モデルオブジェクトのヒット位置に複数のパーツオブジェクトが対応付けられている場合には、パーツオブジェクトそれぞれについて、パーツオブジェクトの属性情報に応じたヒットエフェクト処理を行うことを特徴とするプログラム。
  7. コンピュータにより読み取り可能な情報記憶媒体であって、請求項1〜6のいずれかに記載のプログラムを記憶することを特徴とする情報記憶媒体。
  8. モデルオブジェクトを構成する複数のパーツオブジェクトを記憶する記憶部と、
    オブジェクトがモデルオブジェクトにヒットしたか否かを判定するヒット判定部と、
    前記オブジェクトが前記モデルオブジェクトにヒットしたと判定された場合には、所定条件下でヒットエフェクト処理を行うヒットエフェクト処理部とを含み、
    前記記憶部が、
    複数のパーツオブジェクトそれぞれに対応付けて属性情報を記憶し、
    前記ヒットエフェクト処理部が、
    前記モデルオブジェクトのヒット位置に対応するパーツオブジェクトの属性情報に応じたヒットエフェクト処理を行うことを特徴とする画像生成システム。
JP2008194224A 2008-07-28 2008-07-28 プログラム、情報記憶媒体及び画像生成システム Pending JP2010029398A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2008194224A JP2010029398A (ja) 2008-07-28 2008-07-28 プログラム、情報記憶媒体及び画像生成システム
US12/508,826 US20100020083A1 (en) 2008-07-28 2009-07-24 Program, image generation device, and image generation method
EP09166560A EP2149394A1 (en) 2008-07-28 2009-07-28 Image generation device and image generation method.

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008194224A JP2010029398A (ja) 2008-07-28 2008-07-28 プログラム、情報記憶媒体及び画像生成システム

Publications (1)

Publication Number Publication Date
JP2010029398A true JP2010029398A (ja) 2010-02-12

Family

ID=41268112

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008194224A Pending JP2010029398A (ja) 2008-07-28 2008-07-28 プログラム、情報記憶媒体及び画像生成システム

Country Status (3)

Country Link
US (1) US20100020083A1 (ja)
EP (1) EP2149394A1 (ja)
JP (1) JP2010029398A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011238142A (ja) * 2010-05-12 2011-11-24 Konami Digital Entertainment Co Ltd 画像生成装置、画像生成方法及び画像生成装置に用いるコンピュータプログラム
JP2012000156A (ja) * 2010-06-14 2012-01-05 Konami Digital Entertainment Co Ltd ゲーム装置、ゲーム装置の制御方法、及びプログラム
JP2013210881A (ja) * 2012-03-30 2013-10-10 Copcom Co Ltd ゲームプログラムおよびゲームシステム
JP2016116734A (ja) * 2014-12-22 2016-06-30 京楽産業.株式会社 遊技機

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010029397A (ja) * 2008-07-28 2010-02-12 Namco Bandai Games Inc プログラム、情報記憶媒体及び画像生成システム
JP5588144B2 (ja) 2009-10-14 2014-09-10 パナソニック株式会社 映像信号処理装置及び映像信号処理方法
TW201243765A (en) * 2011-04-18 2012-11-01 Hon Hai Prec Ind Co Ltd Three-dimensional effect simulation system and method
US8834163B2 (en) * 2011-11-29 2014-09-16 L-3 Communications Corporation Physics-based simulation of warhead and directed energy weapons
US9737811B1 (en) * 2015-03-03 2017-08-22 Amazon Technologies, Inc. Three dimensional terrain modeling
US9818228B2 (en) 2015-08-07 2017-11-14 Microsoft Technology Licensing, Llc Mixed reality social interaction
US9922463B2 (en) 2015-08-07 2018-03-20 Microsoft Technology Licensing, Llc Virtually visualizing energy
US20170039986A1 (en) * 2015-08-07 2017-02-09 Microsoft Technology Licensing, Llc Mixed Reality Social Interactions
US11176737B2 (en) * 2018-11-27 2021-11-16 Snap Inc. Textured mesh building
US11227442B1 (en) 2019-12-19 2022-01-18 Snap Inc. 3D captions with semantic graphical elements

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001276418A (ja) * 2000-03-29 2001-10-09 Namco Ltd ゲーム装置、及び情報記憶媒体
JP2008123235A (ja) * 2006-11-10 2008-05-29 Namco Bandai Games Inc プログラム、情報記憶媒体及びゲーム装置

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4278073B2 (ja) * 1999-06-25 2009-06-10 株式会社バンダイナムコゲームス 画像生成システム及び情報記憶媒体
JP3249492B2 (ja) * 1999-06-30 2002-01-21 株式会社スクウェア コンピュータ読み取り可能な記録媒体、ゲームの制御方法およびゲーム装置
JP4394202B2 (ja) * 1999-07-21 2010-01-06 株式会社バンダイナムコゲームス 画像生成システム及び情報記憶媒体
EP1080755A3 (en) * 1999-09-02 2004-09-22 Sony Computer Entertainment Inc. Entertainment system, entertainment apparatus, recording medium, and program
JP2001300132A (ja) * 2000-02-17 2001-10-30 Sony Computer Entertainment Inc エンタテインメントシステム、エンタテインメント装置、記録媒体及びプログラム
JP3482602B2 (ja) * 2001-08-21 2003-12-22 コナミ株式会社 対戦型ゲームのプログラム
JP3888542B2 (ja) * 2002-12-05 2007-03-07 任天堂株式会社 ゲーム装置およびゲームプログラム
JP4668655B2 (ja) 2005-03-24 2011-04-13 株式会社バンダイナムコゲームス プログラム、情報記憶媒体及び画像生成システム
JP4125759B2 (ja) * 2006-03-01 2008-07-30 株式会社スクウェア・エニックス ビデオゲーム処理装置、ビデオゲーム処理方法、およびビデオゲーム処理プログラム
JP5042651B2 (ja) * 2007-01-31 2012-10-03 株式会社バンダイナムコゲームス プログラム、情報記憶媒体及びゲーム装置
WO2009031645A1 (ja) * 2007-09-07 2009-03-12 Konami Digital Entertainment Co., Ltd. 動作判断装置、ゲーム装置およびコンピュータプログラム
JP5138520B2 (ja) * 2008-09-16 2013-02-06 株式会社バンダイナムコゲームス プログラム及びゲーム装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001276418A (ja) * 2000-03-29 2001-10-09 Namco Ltd ゲーム装置、及び情報記憶媒体
JP2008123235A (ja) * 2006-11-10 2008-05-29 Namco Bandai Games Inc プログラム、情報記憶媒体及びゲーム装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011238142A (ja) * 2010-05-12 2011-11-24 Konami Digital Entertainment Co Ltd 画像生成装置、画像生成方法及び画像生成装置に用いるコンピュータプログラム
JP2012000156A (ja) * 2010-06-14 2012-01-05 Konami Digital Entertainment Co Ltd ゲーム装置、ゲーム装置の制御方法、及びプログラム
JP2013210881A (ja) * 2012-03-30 2013-10-10 Copcom Co Ltd ゲームプログラムおよびゲームシステム
JP2016116734A (ja) * 2014-12-22 2016-06-30 京楽産業.株式会社 遊技機

Also Published As

Publication number Publication date
EP2149394A1 (en) 2010-02-03
US20100020083A1 (en) 2010-01-28

Similar Documents

Publication Publication Date Title
JP2010029398A (ja) プログラム、情報記憶媒体及び画像生成システム
JP4668655B2 (ja) プログラム、情報記憶媒体及び画像生成システム
JP6643775B2 (ja) ゲーム機、ゲームシステム及びプログラム
US11167215B2 (en) Game system, method of providing information related to match-up game, and method of executing match-up game
EP2158950A2 (en) Image generation device, and image generation method
JP2009207624A (ja) プログラム、情報記憶媒体、及び画像生成システム
JP3747050B1 (ja) プログラム、情報記憶媒体、及び画像生成システム
JP2011053838A (ja) プログラム、情報記憶媒体、及び、画像生成装置
JP7426462B2 (ja) プログラム、ゲーム装置、サーバ装置及びゲームシステム
JP5628488B2 (ja) プログラム、情報記憶媒体、及び、ゲーム装置
JP2023115237A (ja) ゲームシステム、プログラム及びゲーム提供方法
KR100281837B1 (ko) 화상 처리 장치 및 이를 구비한 게임 장치
US20130109468A1 (en) Game processing system, game processing method, game processing apparatus, and computer-readable storage medium having game processing program stored therein
JP2017118979A (ja) ゲーム装置及びプログラム
JP4776017B2 (ja) プログラム、情報記憶媒体、及び画像生成システム
JP3990648B2 (ja) プログラム、情報記憶媒体及び画像生成装置
JP2010029397A (ja) プログラム、情報記憶媒体及び画像生成システム
JP2009207625A (ja) プログラム、情報記憶媒体、及び画像生成システム
JP2009129167A (ja) プログラム、情報記憶媒体、及び画像生成システム
JP2008067853A (ja) プログラム、情報記憶媒体、及び画像生成システム
JP2010055131A (ja) プログラム、情報記憶媒体及び画像生成システム
JP2003051027A (ja) ゲーム情報、情報記憶媒体、及びゲーム装置
JP5558008B2 (ja) プログラム、情報記憶媒体及びゲームシステム
JP2006263321A (ja) プログラム、情報記憶媒体、及び画像生成システム
JP2009201743A (ja) プログラム、情報記憶媒体、及び、ゲーム機

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110623

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130710

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20131106