JP4329964B2 - GAME SYSTEM AND INFORMATION STORAGE MEDIUM - Google Patents

GAME SYSTEM AND INFORMATION STORAGE MEDIUM Download PDF

Info

Publication number
JP4329964B2
JP4329964B2 JP2000059131A JP2000059131A JP4329964B2 JP 4329964 B2 JP4329964 B2 JP 4329964B2 JP 2000059131 A JP2000059131 A JP 2000059131A JP 2000059131 A JP2000059131 A JP 2000059131A JP 4329964 B2 JP4329964 B2 JP 4329964B2
Authority
JP
Japan
Prior art keywords
node
nodes
state parameter
information storage
storage medium
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.)
Expired - Lifetime
Application number
JP2000059131A
Other languages
Japanese (ja)
Other versions
JP2001250124A (en
Inventor
秀司 高橋
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.)
Namco Ltd
Bandai Namco Entertainment Inc
Original Assignee
Namco Ltd
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 Ltd, Namco Bandai Games Inc filed Critical Namco Ltd
Priority to JP2000059131A priority Critical patent/JP4329964B2/en
Publication of JP2001250124A publication Critical patent/JP2001250124A/en
Application granted granted Critical
Publication of JP4329964B2 publication Critical patent/JP4329964B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、ゲームシステム及び情報記憶媒体に関する。
【0002】
【背景技術及び発明が解決しようとする課題】
従来より、仮想的な3次元空間であるオブジェクト空間内の所与の視点から見える画像を生成するゲームシステムが知られており、いわゆる仮想現実を体験できるものとして人気が高い。ロールプレイングゲームを楽しむことができるゲームシステムを例にとれば、プレーヤは、キャラクタ(オブジェクト)を操作してオブジェクト空間内のマップ上で移動させ、敵キャラクタと対戦したり、他のキャラクタと対話したり、様々な町を訪れたりすることでゲームを楽しむ。
【0003】
さて、このようなゲームシステムでは、プレーヤの仮想現実感の向上のために、よりリアルな画像を生成することが重要な技術的課題になっている。従って、炎により物が燃える様子についても、リアルな画像で表現できることが望まれる。即ち、炎により布が燃える場合を例にとれば、着火した炎が次第に燃え広がり、布が燃えちぎれて無くなって行く様子などを表現できることが望まれる。
【0004】
そして、このような布の燃えちぎれ表現を実現する手法として、例えば以下の第1、第2の手法が考えられる。
【0005】
第1の手法では、燃えちぎれる前の布を表す布オブジェクトOB1と燃えちぎれた後の布を表す布オブジェクトOB1-1、OB1-2を予め用意しておく。そして、布が燃えちぎれたと判断した場合に、使用する布オブジェクトをOB1からOB1-1、OB1-2に切り替える。
【0006】
しかしながら、この第1の手法では、生成される画像が画一的になってしまい、今一つリアルで多様な画像を生成できないという問題がある。そして、この問題を解決するために、様々なちぎれ方を表現するための多数のオブジェクトを用意しておく手法も考えることができるが、これは、オブジェクトデータの使用記憶容量の増加の問題を招く。
【0007】
また第2の手法では、布が燃えちぎれたと判断した場合に、布オブジェクトOB1をリアルタイムに分割し、燃えちぎれた後の布を表す布オブジェクトOB1-1、OB1-2をリアルタイムに生成する。
【0008】
しかしながら、この第2の手法では、布が燃えちぎれる毎に、布オブジェクトのデータ構造が変化してしまい、データの管理が煩雑化する。また、布が燃えちぎれる毎に、データ量が増加してしまい。メモリの使用データ量が増加してしまうという問題も招く。
【0009】
本発明は、以上のような課題に鑑みてなされたものであり、その目的とするところは、物が炎により燃える様子などを表すリアルな画像を、少ないデータ量と少ない処理負担で生成できるゲームシステム及び情報記憶媒体を提供することにある。
【0010】
【課題を解決するための手段】
上記課題を解決するために、本発明は、画像生成を行うゲームシステムであって、隣り合うノード同士が束縛力により連結される複数のノードにより形状が特定されるオブジェクトを、オブジェクト空間内に設定する手段と、前記複数のノードの中のあるノードが無効ノードになったと判断した場合に、該無効ノードと該無効ノードの隣接ノードとを連結する束縛力を無効にする手段と、オブジェクト空間内の所与の視点での画像を生成する手段とを含むことを特徴とする。また本発明に係る情報記憶媒体は、コンピュータにより使用可能な情報記憶媒体であって、上記手段を実行するためのプログラムを含むことを特徴とする。また本発明に係るプログラムは、コンピュータにより使用可能なプログラム(搬送波に具現化されるプログラムを含む)であって、上記手段を実行するための処理ルーチンを含むことを特徴とする。
【0011】
本発明によれば、あるノードが無効ノードになったと判断されると、無効ノードとその隣接ノードとを連結する束縛力が無効になる。従って、無効ノードが、その周りの隣接ノードから切り離されるようになり、オブジェクトに穴が空いたり、オブジェクトがちぎれるなどの画像表現が可能になる。
【0012】
特に、各ノードが位置、速度、加速度などのアトリビュートデータを有する場合には、オブジェクトのちぎれた部分を物理計算に基づいて落下させたりすることなどが可能になり、よりリアルな画像を生成できるようになる。
【0013】
また本発明は、画像生成を行うゲームシステムであって、隣り合うノード同士が束縛力により連結される複数のノードにより形状が特定されるオブジェクトを、オブジェクト空間内に設定する手段と、前記複数のノードの中のあるノードが無効ノードになったと判断した場合に、オブジェクトを構成するプリミティブのうち、該無効ノードを定義点として含むプリミティブの描画を省略する手段と、オブジェクト空間内の所与の視点での画像を生成する手段とを含むことを特徴とする。また本発明に係る情報記憶媒体は、コンピュータにより使用可能な情報記憶媒体であって、上記手段を実行するためのプログラムを含むことを特徴とする。また本発明に係るプログラムは、コンピュータにより使用可能なプログラム(搬送波に具現化されるプログラムを含む)であって、上記手段を実行するための処理ルーチンを含むことを特徴とする。
【0014】
本発明によれば、あるノードが無効ノードになったと判断されると、その無効ノードを定義点(頂点、制御点)として含むプリミティブの描画が省略される。従って、無効ノード付近の画像が表示されないようになり、オブジェクトに穴が空いたり、オブジェクトがちぎれるなどの画像表現が可能になる。
【0015】
なお、無効ノードを定義点として含むプリミティブの描画を省略する際には、無効ノードと無効ノードの隣接ノードとを連結する束縛力も無効にすることが望ましい。
【0016】
また本発明に係るゲームシステム、情報記憶媒体及びプログラムは、ノードがアトリビュートデータとして有するノード状態パラメータに基づいて、該ノードが無効ノードになったか否かが判断されることを特徴とする。
【0017】
このようにすれば、例えば、ノード状態パラメータが変化したり、ノード状態パラメータが所与の値に達したことを条件に、ノードが無効になったと判断できるようになり、処理の簡素化を図れる。
【0018】
また本発明に係るゲームシステム、情報記憶媒体及びプログラムは、ノードがアトリビュートデータとして有するノード状態パラメータに基づいて、該ノードの隣接ノードに対して該ノードのノード状態を伝達する手段(或いは該手段を実行するためのプログラム又は処理ルーチン)を含むことを特徴とする。
【0019】
また本発明は、画像生成を行うゲームシステムであって、隣り合うノード同士が束縛力により連結される複数のノードにより形状が特定されるオブジェクトを、オブジェクト空間内に設定する手段と、ノードがアトリビュートデータとして有するノード状態パラメータに基づいて、該ノードの隣接ノードに対して該ノードのノード状態を伝達する手段と、オブジェクト空間内の所与の視点での画像を生成する手段とを含むことを特徴とする。また本発明に係る情報記憶媒体は、コンピュータにより使用可能な情報記憶媒体であって、上記手段を実行するためのプログラムを含むことを特徴とする。また本発明に係るプログラムは、コンピュータにより使用可能なプログラム(搬送波に具現化されるプログラムを含む)であって、上記手段を実行するための処理ルーチンを含むことを特徴とする。
【0020】
本発明によれば、ノード状態パラメータを利用して、あるノードのノード状態を隣接ノードに伝達することが可能になる。従って、あるノードのノード状態が、そのノードから周りのノードに徐々に伝達して行く様子を表現できるようになり、例えば炎の燃え移り表現などに最適な画像表現が可能になる。
【0021】
また本発明に係るゲームシステム、情報記憶媒体及びプログラムは、ノードがアトリビュートデータとして有するノード状態パラメータに基づいて、該ノードの隣接ノードに対して該ノードのノード状態を伝達するか否かを判断し、ノード状態を伝達すると判断した場合には、ノード状態が伝達された隣接ノードのノード状態パラメータを変化させることを特徴とする。
【0022】
このようにすれば、そのノードのノード状態パラメータが変化したり、ノード状態パラメータが所与の値に達したことを条件に、そのノードの隣接ノードのノード状態パラメータを変化させることが可能になる。これにより、あるノードを出発点として、その周りのノードのノード状態が次々と変化する様子を表現できるようになる。
【0023】
また本発明は、画像生成を行うゲームシステムであって、隣り合うノード同士が束縛力により連結される複数のノードにより形状が特定されるオブジェクトを、オブジェクト空間内に設定する手段と、ノードがアトリビュートデータとして有するノード状態パラメータに基づいて、該ノードからパーティクルを発生する手段と、オブジェクト空間内の所与の視点での画像を生成する手段とを含むことを特徴とする。また本発明に係る情報記憶媒体は、コンピュータにより使用可能な情報記憶媒体であって、上記手段を実行するためのプログラムを含むことを特徴とする。また本発明に係るプログラムは、コンピュータにより使用可能なプログラム(搬送波に具現化されるプログラムを含む)であって、上記手段を実行するための処理ルーチンを含むことを特徴とする。
【0024】
本発明によれば、ノード状態パラメータを利用して、そのノードからパーティクルを発生させることが可能になる。従って、ノード状態に応じたパーティクルをそのノードから発生させることが可能になり、よりリアルなパーティクル表現を実現できる。
【0025】
また本発明に係るゲームシステム、情報記憶媒体及びプログラムは、ノードがアトリビュートデータとして有するノード状態パラメータに基づいて、該ノードからパーティクルを発生するか否かを判断し、パーティクルを発生すると判断した場合には、該ノードのノード状態パラメータに基づいてパーティクルのアトリビュートデータを決めることを特徴とする。
【0026】
このようにすれば、そのノードのノード状態パラメータが変化したり、ノード状態パラメータが所与の値に達したことを条件に、ノード状態パラメータの値に応じたアトリビュートデータを有するパーティクルを、そのノードから発生させることが可能になる。従って、例えば、ノード状態パラメータに基づいて隣接ノードにノード状態を伝達する発明と組み合わせれば、パーティクルを発生するノードの領域が徐々に広がって行く様子などを表現でき、炎の燃え広がり表現などに最適な画像を生成できるようになる。
【0027】
また本発明は、画像生成を行うゲームシステムであって、隣り合うノード同士が束縛力により連結される複数のノードにより形状が特定されるオブジェクトを、オブジェクト空間内に設定する手段と、ノードがアトリビュートデータとして有するノード状態パラメータに基づいて、該ノードの付近でのオブジェクトの画像を変化させる手段と、オブジェクト空間内の所与の視点での画像を生成する手段とを含むことを特徴とする。また本発明に係る情報記憶媒体は、コンピュータにより使用可能な情報記憶媒体であって、上記手段を実行するためのプログラムを含むことを特徴とする。また本発明に係るプログラムは、コンピュータにより使用可能なプログラム(搬送波に具現化されるプログラムを含む)であって、上記手段を実行するための処理ルーチンを含むことを特徴とする。
【0028】
本発明によれば、ノード状態パラメータを利用して、ノード付近でのオブジェクトの画像を変化させることが可能になる。従って、ノード状態に応じて、そのノード付近でのオブジェクトの色等の画像を局所的に変化させることが可能になり、よりリアルな画像表現を実現できる。
【0029】
また本発明に係るゲームシステム、情報記憶媒体及びプログラムは、ノードがアトリビュートデータとして有するノード状態パラメータに基づいて、オブジェクトを構成するプリミティブのうち、該ノードを定義点として含むプリミティブの画像を変化させることを特徴とする。
【0030】
このようにすれば、プリミティブの定義点に与える画像データを変化させて、その画像データに基づいて、プリミティブ単位で画像を変化させることが可能になる。
【0031】
また本発明に係るゲームシステム、情報記憶媒体及びプログラムは、前記ノード状態パラメータが、各ノードの燃焼度を表すパラメータであることを特徴とする。
【0032】
このような燃焼度パラメータを用いれば、ノードが燃え尽きたか否かの判断や、ノードの燃焼状態を他のノードに伝達するか否かの判断や、ノードから炎パーティクルを発生する否かの判断などを、簡素な処理で実現できるようになる。
【0033】
また本発明に係るゲームシステム、情報記憶媒体及びプログラムは、前記ノード状態パラメータが初期値である第1の値から変化した場合に、該ノードの状態変化が開始したと判断され、前記ノード状態パラメータが第2の値になった場合に、該ノードの状態変化が終了したと判断されることを特徴とする。
【0034】
このようにすれば、例えば、ノード状態パラメータが第1の値から変化した場合に、ノード状態の変化が開始したと判断し、ノード状態パラメータが第1〜第2の値の間にある場合には、ノード状態の変化が進行中であると判断し、ノード状態パラメータが第2の値になった場合には、ノード状態の変化が終了し、例えばノードが無効になったと判断できるようになる。
【0035】
また本発明に係るゲームシステム、情報記憶媒体及びプログラムは、各ノードがアトリビュートデータとして、各ノードの位置、速度、加速度を有することを特徴とする。
【0036】
このような位置、速度、加速度などのアトリビュートデータを各ノードに持たせれば、各ノードを物理シミュレーションにより移動させることが可能になり、よりリアルな画像表現が可能になる。
【0037】
また本発明に係るゲームシステム、情報記憶媒体及びプログラムは、前記複数のノードが格子状に配列されるノードであることを特徴とする。
【0038】
このようにすれば、布オブジェクトや紙オブジェクトなどの板状オブジェクトの状態変化表現やちぎれ表現を、リアルに実現できるようになる。
【0039】
【発明の実施の形態】
以下、本発明の好適な実施形態について図面を用いて説明する。
【0040】
1.構成
図1に、本実施形態のゲームシステム(画像生成システム)のブロック図の一例を示す。なお同図において本実施形態は、少なくとも処理部100を含めばよく(或いは処理部100と記憶部170を含めばよく)、それ以外のブロックについては任意の構成要素とすることができる。
【0041】
操作部160は、プレーヤが操作データを入力するためのものであり、その機能は、レバー、ボタン、マイク、或いは筺体などのハードウェアにより実現できる。
【0042】
記憶部170は、処理部100や通信部196などのワーク領域となるもので、その機能はRAMなどのハードウェアにより実現できる。
【0043】
情報記憶媒体(コンピュータにより使用可能な記憶媒体)180は、プログラムやデータなどの情報を格納するものであり、その機能は、光ディスク(CD、DVD)、光磁気ディスク(MO)、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ(ROM)などのハードウェアにより実現できる。処理部100は、この情報記憶媒体180に格納される情報に基づいて本発明(本実施形態)の種々の処理を行う。即ち情報記憶媒体180には、本発明(本実施形態)の手段(特に処理部100に含まれるブロック)を実行するための情報(プログラム或いはデータ)が格納される。
【0044】
なお、情報記憶媒体180に格納される情報の一部又は全部は、システムへの電源投入時等に記憶部170に転送されることになる。また情報記憶媒体180には、本発明の処理を行うためのプログラム、画像データ、音データ、表示物の形状データ、本発明の処理を指示するための情報、或いはその指示に従って処理を行うための情報などを含ませることができる。
【0045】
表示部190は、本実施形態により生成された画像を出力するものであり、その機能は、CRT、LCD、或いはHMD(ヘッドマウントディスプレイ)などのハードウェアにより実現できる。
【0046】
音出力部192は、本実施形態により生成された音を出力するものであり、その機能は、スピーカなどのハードウェアにより実現できる。
【0047】
携帯型情報記憶装置194は、プレーヤの個人データやゲームのセーブデータなどが記憶されるものであり、この携帯型情報記憶装置194としては、メモリカードや携帯型ゲーム装置などを考えることができる。
【0048】
通信部196は、外部(例えばホスト装置や他のゲームシステム)との間で通信を行うための各種の制御を行うものであり、その機能は、各種プロセッサ、或いは通信用ASICなどのハードウェアや、プログラムなどにより実現できる。
【0049】
なお本発明(本実施形態)の手段を実行するためのプログラム或いはデータは、ホスト装置(サーバー)が有する情報記憶媒体からネットワーク及び通信部196を介して情報記憶媒体180に配信するようにしてもよい。このようなホスト装置(サーバー)の情報記憶媒体の使用も本発明の範囲内に含まれる。
【0050】
処理部100(プロセッサ)は、操作部160からの操作データやプログラムなどに基づいて、ゲーム処理、画像生成処理、或いは音生成処理などの各種の処理を行う。この処理部100の機能は、各種プロセッサ(CPU、DSP等)又はASIC(ゲートアレイ等)などのハードウェアや、所与のプログラム(ゲームプログラム)により実現できる。
【0051】
ここで、処理部100が行うゲーム処理としては、コイン(代価)の受け付け処理、各種モードの設定処理、ゲームの進行処理、選択画面の設定処理、オブジェクト(1又は複数のプリミティブ面)の位置や回転角度(X、Y又はZ軸回り回転角度)を求める処理、オブジェクトを動作させる処理(モーション処理)、視点の位置(仮想カメラの位置)や視線角度(仮想カメラの回転角度)を求める処理、マップオブジェクトなどのオブジェクトをオブジェクト空間へ配置する処理、ヒットチェック処理、ゲーム結果(成果、成績)を演算する処理、複数のプレーヤが共通のゲーム空間でプレイするための処理、或いはゲームオーバー処理などを考えることができる。
【0052】
また、処理部100は、上記のゲーム処理結果に基づいて例えばオブジェクト空間内において所与の視点(で仮想カメラ)から見える画像を生成し、表示部190に出力する。
【0053】
更に、処理部100は、上記のゲーム処理結果に基づいて各種の音処理を行い、BGM、効果音、又は音声などの音を生成し、音出力部192に出力する。
【0054】
なお、処理部100の機能は、その全てをハードウェアにより実現してもよいし、その全てをプログラムにより実現してもよい。或いは、ハードウェアとプログラムの両方により実現してもよい。
【0055】
処理部100は、オブジェクト空間設定部102、ノード状態処理部104、束縛力処理部106、ノード移動処理部108、パーティクル処理部110、描画処理部112を含む。
【0056】
ここで、オブジェクト空間設定部102は、ゲームキャラクタ、マップなどの各種オブジェクト(モデル)をオブジェクト空間内に設定するための処理を行う。より具体的には、オブジェクトのワールド座標系での位置や回転角度(方向)を決定し、その位置にその回転角度でオブジェクトを配置する。
【0057】
そして、本実施形態では、布などの表示物を表すためのオブジェクトとして、隣り合うノード同士が束縛力により連結される複数のノードにより形状が特定されるオブジェクトが、オブジェクト空間内に設定されることになる。
【0058】
ノード状態処理部104は、ノードがアトリビュートデータとして有するノード状態パラメータ(燃焼度パラメータ)に基づいて、ノード状態(燃焼度等)の判定処理や、隣接ノードへのノード状態の伝達処理などを行う。より具体的には、ノード状態パラメータに基づいて、隣接ノードにノード状態(燃焼状態)を伝達するか否か(炎を燃え移らせるか否か)を判断し、ノード状態を伝達すると判断した場合には、ノード状態が伝達された隣接ノードのノード状態パラメータを変化させる処理(燃焼状態にする処理)を行う。
【0059】
なお、ノード状態パラメータは、その時のノードの状態(燃焼度、温度、湿度、強度、発光度等)を量的或いは質的に表すための変数であり、ノード状態に関連する処理において各種の判断の材料に使用されるものである。
【0060】
また、ノードに与えるアトリビュートデータとしては、ノード状態パラメータの他に、各ノードの位置、速度又は加速度などを考えることができる。
【0061】
束縛力処理部106は、ノード状態パラメータに基づいて、ノードが無効か否か(燃え尽きたか否か)を判断し、無効ノードと判断した場合には、無効ノードとその隣接ノードとを連結する束縛力(仮想バネ)を無効にする処理を行う。一方、ノードが無効でないと判断した場合には、ノード間に働かせるべき束縛力を演算する。
【0062】
ノード移動処理部108は、各フレームでのノードの加速度、速度、位置を演算する。この場合、ノードの加速度は、ノードに働く束縛力や、重力や風の力などの物理パラメータに基づいて演算される。
【0063】
パーティクル処理部110は、その形状が変形する不定形な表示物(例えば炎、煙、水、爆発)を表現するためのパーティクル(例えば炎パーティクル、煙パーティクル)を、時間経過に伴い順次発生させたり、移動させたり、消滅させたりする処理を行う。より具体的には、パーティクルの発生量、発生位置、移動状態(速度、加速度等)又は寿命をランダムに変化させる処理を行う。これにより、炎などの不定形な表示物もリアルに表現できるようになる。
【0064】
そして、本実施形態では、パーティクル処理部110は、ノード状態パラメータに基づいてノードからパーティクルを発生する処理を行う。より具体的には、ノード状態パラメータに基づいて、そのノードからパーティクルを発生するか否かを判断する。そして、パーティクルを発生すると判断した場合には、そのノードのノード状態パラメータに基づいてパーティクルのアトリビュートデータ(炎の強さ、光の強度、発生量、速度、加速度、或いは寿命等)を決める。例えば、ノードの燃焼度が高い場合には、強い炎のパーティクルを発生するようにする。
【0065】
描画処理部112は、テクスチャマッピングや色(輝度)補間処理や陰面消去などを行いながら、ジオメトリ処理後のオブジェクト(プリミティブ面)を描画領域174(例えばフレームバッファ)に描画するための処理を行う。これにより、オブジェクトが配置されるオブジェクト空間内の所与の視点(仮想カメラ)での画像が生成されるようになる。
【0066】
そして本実施形態では、複数のノードの中のあるノードが、ノード状態パラメータなどに基づいて無効であると判断した場合には、その無効ノードを定義点(オブジェクトの形状を定義するための点であり、ポリゴンの頂点或いは自由曲面の制御点などがある)として含むプリミティブ(ポリゴン、自由曲面等)の描画が省略されるようになる。より具体的には、ノードを定義点とするプリミティブを描画することで、複数のノードにより形状が特定されるオブジェクト(例えば布)の画像が生成されるようになる。そして、例えばプリミティブがポリゴンである場合には、そのポリゴンの頂点の中に無効ノードがある場合には、そのポリゴンの描画は省略されるようになる。
【0067】
更に本実施形態では、前述したノード状態パラメータに基づいて、そのノードの付近でのオブジェクトの画像(色、輝度等のプロパティ)を変化させている。より具体的には、ノード状態パラメータに基づいて、オブジェクトを構成するプリミティブのうち、そのノードを定義点として含むプリミティブの画像を変化させる。例えば、ノード状態パラメータに基づいてノードが燃焼状態であると判断された場合には、そのノードの付近での布(オブジェクト)の色を、元の色から変化させて徐々に黒くする。
【0068】
なお、本実施形態のゲームシステムは、1人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、このようなシングルプレーヤモードのみならず、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。
【0069】
また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、1つの端末を用いて生成してもよいし、ネットワーク(伝送ライン、通信回線)などで接続された複数の端末を用いて生成してもよい。
【0070】
2.本実施形態の特徴
2.1 布の燃えちぎれ表現
図2(A)、(B)、図3(A)、(B)に本実施形態により生成されるゲーム画像の例を示す。
【0071】
図2(A)では、ロウソク18に炎20が灯っている。この炎20は、ロウソク18の先端から発生する複数の炎パーティクルにより表現されている。そして、炎20の周囲の小熊22、机24、布25、絨毯29などのオブジェクトは、この炎20からの光(具体的には、炎パーティクルの代表位置に設定された代表光源からの光)により、陰影づけされる。また、この光により小熊22の影30なども生成される。
【0072】
図2(B)では、ロウソク18が倒れて、炎20が机24上の布25に燃え移っている。そして、図3(A)では、燃え移った炎20が更に燃え広がっており、布が布片26、28に燃えちぎれている。また、布片26、28の色も徐々に黒くなっている。また図3(B)では、布が布片26、27、28に燃えちぎれており、その色も更に黒くなっている。また、燃えちぎれた布片26、28は、重力(或いは風)により下に落ち始めている。
【0073】
このように本実施形態では、布に燃え移った炎が徐々に燃え広がり、布が燃えちぎれて無くなって行く様子をリアルに表現している。そして、このような布の燃えちぎれ表現を実現するために、本実施形態では、以下に説明するような手法を採用している。
【0074】
即ち、本実施形態では図4のA1に示すように、隣り合うノード同士が仮想バネ(広義には束縛力)により連結され、格子状に配置された複数のノードを用いて、布オブジェクトを表現している。そして、図4のA2に示すように、布オブジェクトの画像は、これらのノードを頂点(広義には定義点)として含むポリゴン(広義にはプリミティブ面)を描画することで生成される。
【0075】
そして本実施形態では、炎が布に燃え移り、図4のA3に示すように、あるノードが燃え尽きたと判断した場合(無効ノードになったと判断した場合)には、その燃え尽きたノードとその隣接ノードとを連結していた仮想バネ(広義には束縛力)を無効にする。また、図4のA4に示すように、燃え尽きたノードを頂点として含むポリゴンを非表示(描画省略)にする。
【0076】
このようにすることで、本実施形態では、布が徐々に燃えて行き、布が燃えちぎれる様子をリアルに表現できる。即ち、図4のA4に示すような布の非表示領域が徐々に広がって行くことで、布が燃えて行く様子がリアルに表現される。また、図4のA5に示す部分がA6に示す部分から切り離されて、重力(或いは風)などにより落下することで、布が燃えちぎれる様子がリアルに表現される。
【0077】
また本実施形態には、布オブジェクトのデータ構造を変化させることなく、布の燃えちぎれ表現を実現できるという利点がある。
【0078】
例えば図5、図6に、本実施形態で使用される布オブジェクトのデータ構造を示す。図5は、ノードについてのデータ構造の例であり、図6は、ノードを連結する仮想バネ(束縛力)についてのデータ構造である。
【0079】
図5に示すように、各ノードは、そのアトリビュートデータとして、ノードの位置p、速度v、加速度a、質量M、燃焼度パラメータF(広義にはノード状態パラメータ)を有する。これらのアトリビュートデータは、そのノードのインデックス(i,j)を指定することで読み出すことができる。
【0080】
また図6に示すように、各仮想バネは、そのアトリビュートデータとして、ノード間に働かせる張力Tや抗力D、静止距離R(張力が0になる距離)、仮想バネの一端に接続されるノードAのインデックス(i,j)や他端に接続されるノードBのインデックス(i,j)を有する。これらのアトリビュートデータは、その仮想バネのインデックスKを指定することで読み出すことができる。
【0081】
例えば、布の燃えちぎれ表現を実現する手法として第1、第2の手法を考えることができる。
【0082】
第1の手法では、布が燃えちぎれたと判断した場合に、燃えちぎれる前の布を表す布オブジェクトOB1を、燃えちぎれた後の布を表す布オブジェクトOB1-1、OB1-2に切り替えることで、布の燃えちぎれ表現を実現する。
【0083】
しかしながら、この第1の手法には、生成される画像が画一的になってしまったり、オブジェクトデータの使用記憶容量が増加してしまうなどの問題がある。
【0084】
また第2の手法では、布が燃えちぎれたと判断した場合に、布オブジェクトOB1をリアルタイムに分割し、燃えちぎれた後の布を表す布オブジェクトOB1-1、OB1-2をリアルタイムに生成する。
【0085】
しかしながら、この第2の手法では、布オブジェクトのデータ構造が変化してしまうため処理が煩雑化したり、布が燃えちぎれる毎にデータ量が増加してしまうためメモリの使用データ量が増えてしまうなどの問題がある。
【0086】
本実施形態によれば、図5、図6から明らかなように、布が燃えたり、燃えちぎれても、布オブジェクトのデータ構造やデータ量は変化しない。従って、布が燃えちぎれる様子を表すリアルな画像を、少ないデータ量と少ない処理負担で生成できるようになる。
【0087】
2.2 燃焼度(ノード状態)パラメータ
さて、本実施形態では図5に示すように、各ノードのアトリビュートデータの中に燃焼度(ノード状態)パラメータFを含ませている。本実施形態では、この燃焼度パラメータFを有効利用することで、炎の燃え広がりや、布の燃えちぎれ表現を簡素な処理で実現することに成功している。
【0088】
例えば図7(A)に示すように、初期状態においては、燃焼度パラメータFは、すべてのノードにおいて1000(第1の値)に設定されている。そして、このF=1000は、ノードが燃えていないことを示す。
【0089】
そして、何らかの原因でノードに炎が燃え移ると、図7(B)のC1に示すように、そのノードの燃焼度パラメータFの値が1だけ減って、999に変化する。そして、このようにノードの燃焼度パラメータFが1000よりも小さくなると、そのノードから隣接ノードに燃焼状態(ノード状態)が伝達する。
【0090】
即ち、隣接ノード(自ノードも含む)の中からランダムに選択されたノードに対して炎が燃え移る。例えば図8(A)では、D1に示すノードからD2に示すノードに火が燃え移っており、炎が燃え移ったD2に示すノードの燃焼度パラメータFの値も1だけ減って、999に変化する。
【0091】
そして、今度は、図8(A)のD1に示すノードのみならず、D2に示すノードからも、隣接ノードに炎が燃え移るようになる。また、D1に示すノードの燃焼度パラメータFの値は更に1だけ減って、998に変化する。
【0092】
一度、炎が燃え移ると、そのノードの燃焼度パラメータは、1又は複数のフレーム毎に1ずつ減少し続ける。図8(B)のD3に示すノードでは、燃焼度パラメータF=0になっており、そのノードは燃え尽きた(無効になった)と判断される。すると、そのノードとその隣接ノードとを連結する仮想バネも無効になる。
【0093】
このように、ノードにアトリビュートデータとして燃焼度パラメータFを持たせれば、ノードが燃焼状態か否かの判定や、隣接ノードに炎を燃え移らせる処理や、ノードが燃え尽きたか否かの判定や、燃え尽きたノードの仮想バネを無効にする処理などを、1つの燃焼度パラメータFを用いて一元的に処理できるようになる。従って、処理の簡素化、処理負担の軽減化を図れる。
【0094】
本実施形態では、この燃焼度パラメータFを、炎のパーティクルの発生にも有効利用している。即ち、各ノードの燃焼度パラメータFに基づいて、そのノードから炎パーティクルを発生するか否かを判断する。そして、発生すると判断した場合には、燃焼度パラメータFに基づいて炎パーティクルのアトリビュートデータ(炎の強さ等)を決定している。
【0095】
より具体的には、本実施形態では、図9のE1、E2に示すように、燃焼度パラメータFが1000よりも小さくなっているノード(燃焼しているノード)の中から、ランダムな個数のノードを選択する。そして、その選択されたノードから炎パーティクルを発生する。この際に、発生する炎パーティクルの炎の強さIFを、燃焼度パラメータFに基づいて演算する。
【0096】
例えばIF=sin(π×F/1000)とすれば、燃焼度パラメータF=1000の時には、炎の強さIF=0になり、F=500の時にIFが最大になり、F=0の時には、炎の強さIF=0に戻る。即ち、ノードが燃え始めて炎パーティクルが発生した時点では炎パーティクルの炎の強さは弱く、その後に徐々に強くなり、ノードが燃え尽きた時には、炎パーティクルの炎の強さが0になる。従って、炎パーティクルの炎の強さを、よりリアルに表現できるようになる。
【0097】
なお、本実施形態では、燃焼度パラメータFに基づいて求められた炎パーティクルの炎の強さIFに基づいて、炎パーティクルの速度、加速度、寿命、光の強度などを求めるようにしている。
【0098】
さて、本実施形態では、時間経過に伴い順次発生、移動、消滅する炎パーティクルを用いることで、図2(A)、(B)、図3(A)、(B)に示すように、形状が不定形に変化する炎20の表現に成功している。
【0099】
ここで、炎パーティクルは、球のような立体形状の物であってもよいし、平面形状の物であってもよい。或いは、線や点であってもよい。
【0100】
そして、平面形状の炎パーティクルを採用する場合には、図10に示すように、視点VPと炎パーティクルFPとを結ぶ線(或いは視線ベクトル)に対して、炎パーティクルFPの主面が略垂直になるように、FPを配置することが望ましい。このように、いわゆる3Dスプライトにより炎パーティクルを表現すれば、視点VPと炎パーティクルFPとの相対的な位置関係が変化した場合にも、視点VPから見て炎パーティクルFPが常に最大の大きさで表示されるようになる。従って、炎パーティクルFPの数をそれほど増やすことなく、炎などの不定形な表示物を効率よく表現できるようになる。
【0101】
なお、図10の3Dスプライトにおいて、炎の絵が描かれている領域のα値(透明度)は、0以外の値(0<α≦1)に設定されており、その他の領域のα値は、0(透明)に設定されている。このようにすることで、四角形のポリゴンを用いながらも、しずく形の形をした炎パーティクルを表現できる。
【0102】
次に、炎パーティクルの具体的な制御手法について説明する。
【0103】
例えば図11(A)において、ロウソク18に灯る炎20は、発生位置40から順次発生する炎パーティクルにより表現されている。これらの各炎パーティクルは、発生位置40で発生した後に、上方向(Y方向)に移動し、寿命が尽きると消滅する。このような炎パーティクルを発生位置40から次々と発生することで、図11(A)に示すような炎20を表現できる。
【0104】
そして、この場合に本実施形態では、炎パーティクルの移動状態(速度或いは加速度等)や寿命がランダムに変化する。従って、複数の炎パーティクルを同時タイミングで発生しても、これらの複数の炎パーティクルが占める範囲は、ある程度の広がり(面積)を持つようになり、ロウソク18の炎20をリアルに表現できるようになる。
【0105】
図11(B)では、ロウソク18が倒れて、炎が布25に燃え移っている。この場合には、図6(B)のB1に示すように、炎が燃え移ったノードの中からランダムに選択されたノードの位置から、炎パーティクルが順次発生する。また、炎パーティクルの発生量もランダムに変化する。
【0106】
図12(A)、(B)では、B2、B3に示すように、炎が燃え移ったノードの範囲(燃え広がり範囲)が更に広がっており、布25上の色々な場所から炎パーティクルが発生している。これにより、布25上で炎が燃え広がって行く様子をリアルに表現できる。
【0107】
そして、図13(A)、(B)では、布25の全体に燃え広がり範囲が広がっている。そして、この場合に本実施形態では、炎パーティクルの発生量、発生位置、移動状態、寿命がランダムに変化し、各炎パーティクルの位置もリアルタイムに変化する。従って、図13(A)、(B)に示すように、炎の全体形状が、あたかも現実世界の炎のようにゆらゆらと変化するようになり、非常にリアルな炎の画像を生成できるようになる。
【0108】
さて、本実施形態では、燃焼度パラメータFに基づいて、そのノードの付近での画像(そのノードを定義点として含むプリミティブの画像)を変化させている。
【0109】
例えば図14では、各ノードの色(R,G,B)は、燃焼度パラメータFの関数になっている。即ち、燃焼度パラメータFが小さいノードほど、その色が黒に近づくようになっている。従って、図14のG1〜G4に示すノードの中では、G2に示すノードの色が最も黒くなる。
【0110】
そして、本実施形態では、燃焼度パラメータFに基づいて求められた各ノードの色が、ポリゴン50、52の頂点色として設定されることになる。即ち、G1、G3、G4に示すノードの色が、ポリゴン50の3つの頂点色として設定され、ポリゴン50内の各ドットの色は、これらの3つの頂点色を補間することで求められる。同様に、G1、G2、G4に示すノードの色が、ポリゴン52の3つの頂点色として設定され、ポリゴン52内の各ドットの色は、これらの3つの頂点色を補間することで求められる。
【0111】
図15(A)、(B)、図16(A)、(B)、図17(A)、(B)に、本実施形態の手法により徐々に画像が変化する布オブジェクトの画像の例を示す。
【0112】
炎は、図15(B)のF1に示す部分から徐々に燃え広がっている。従って、F1に示す部分の色が、元の色から徐々に黒くなる。
【0113】
そして図16(A)のF2に示す部分では、炎によりノードが燃え尽きて、それらのノードに連結される仮想バネが無効になると共に、それらのノードを含むポリゴンが徐々に非表示になってゆく。また、布全体が徐々に黒くなっている。
【0114】
図16(B)のF3では、燃え尽きたノードの範囲が更に広がっている。そして、図17(A)、(B)では、F4、F5、F6に示す部分が燃えちぎれて、他の部分から切り離されている。また、布の色も更に黒くなる。
【0115】
このように、本実施形態によれば、あたかも布が本当に燃えているかのように見える画像を生成でき、プレーヤの仮想現実感を格段に高めることができる。
【0116】
3.本実施形態の処理
次に、本実施形態の処理の詳細例について、図18、図19、図20、図21、図22のフローチャートを用いて説明する。
【0117】
まず、布オブジェクトの設定(構築)処理を行う(ステップS1)。具体的には図19のフローチャートに示すように、まず、各ノードの燃焼度パラメータFに初期値を設定する(ステップS11)。
【0118】
ここで、F=1000は、ノードが燃えていないことを示し、0<F<1000は、ノードが燃焼状態であることを示し、F=0は、ノードが燃え尽きたことを示す。初期状態では、すべてのノードが燃えていないので、すべてのノードの燃焼度パラメータFが1000に設定される。
【0119】
次に、各ノードの燃焼度パラメータF以外の残りのアトリビュートデータ(図5参照)に対して、初期値を設定する(ステップS12)。
【0120】
位置pi,j ←定数(xi,j,yi,j,zi,j
速度vi,j ←定数(0.0,0.0,0.0)
加速度ai,j←定数(0.0,0.0,0.0)
質量Mi,j ←定数mi,j
なお、位置pi,j、速度vi,j、加速度ai,jはベクトルである。
【0121】
次に、隣接したノードを格子状に連結するように、すべての仮想バネについて、その連結ノードのインデックスを設定する(ステップS13)。
【0122】
次に、各仮想バネについて、残りのパラメータに定数を代入する(ステップS14)。
【0123】
張力TS ←定数tS
抗力DS ←定数dS
静止距離RS←定数rS
以上のようにして、布オブジェクトの設定処理が終了する。
【0124】
次に、図18に示すように、描画領域(フレームバッファ等)をクリアして、フレーム処理を開始する(ステップS2)。
【0125】
次に、燃焼度処理(燃え広がり判定)を行う(ステップS3)。
【0126】
より具体的には、図20に示すように、ノード(i,j)の燃焼度パラメータFi,jが、0<Fi,j<1000であるか否かを判断する(ステップS21)。そして、0<Fi,j<1000である場合には、そのノードの隣接ノードを燃やすか否かを、ランダムに決定する(ステップS22)。
【0127】
そして、燃やすと決定した場合には、図23(A)に示すように、ノード(i,j)と隣り合うノード(k,l)の中から、ランダムに選択した1つのノードを選択し、そのノードの燃焼度パラメータFk,lから1を引く(ステップS23)。これにより、そのノードの燃焼度が隣接ノードに伝達されるようになる。
【0128】
k,l←Fk,l−1
なお、ここで、(k,l)は、図23(A)に示すように、k=i−1,i,i+1、l=j−1,j,j+1となるすべてのk,jの組み合わせを意味する。
【0129】
以上のようにして、燃焼度処理が終了する。
【0130】
次に、図18に示すように、下式にしたがって、すべてのノードに対して風、重力の力を加える処理を行う(ステップS4)。
【0131】
【数1】

Figure 0004329964
【0132】
次に、束縛力処理(束縛力判定)を行う(ステップS5)。
【0133】
より具体的には図21のフローチャートに示すように、まず、仮想バネに連結している2つのノードA、Bの燃焼度パラメータFA、FBのいずれかが0か否かを判断する(ステップS31)。そして、FA、FBのいずれかが0である場合には、図4のA3で説明したように、その仮想バネを無効にする。一方、FA、FBが共に0でない場合には、連結している2つのノードA、Bに、下式に示すような仮想バネの力を加える(ステップS32)。
【0134】
【数2】
Figure 0004329964
以上のようにして、束縛力処理が終了する。
【0135】
次に、図18に示すように、すべてのノードについて、加速度a(ベクトル)と速度v(ベクトル)に基づいて、位置p(ベクトル)を決定する(ステップS6)。
【0136】
v←v+a
p←p+v
a←0
次に、燃焼度Fが0<F<1000となるノードの中から、ランダムな個数のノードを選択して、図9で説明したように、そのノードの位置から炎パーティクルを発生する(ステップS7)。この時に、炎のパーティクルの炎の強さIFは、下式のようになる。
【0137】
【数3】
Figure 0004329964
【0138】
次に、布オブジェクトの描画処理を行う(ステップS8)。
【0139】
より具体的には、図22に示すように、まず、隣接して四角形を形成する4つのノード(i,j)、(i+1,j)、(i+1,j+1)、(i,j+1)を選択する(ステップS41)。
【0140】
次に、ポリゴンを描画するために、各ノードについて位置pと燃焼度パラメータFを用いて、頂点位置、頂点色を決定する(ステップS42)。
【0141】
【数4】
Figure 0004329964
【0142】
次に、ノード(i,j)、(i+1,j)、(i+1,j+1)の中に、燃焼度パラメータF=0となるノードが1つもない場合には、これらの3つのノードを頂点とする3角形ポリゴンを描画する(ステップS43)。例えば図23(B)において、ノード(i,j)、(i+1,j)、(i+1,j+1)の中に、F=0となるノードが1つも無かった場合には、ポリゴンPL1が描画される。
【0143】
次に、ノード(i,j)、(i+1,j+1)、(i,j+1)の中に、燃焼度パラメータF=0となるノードが1つもない場合には、これらの3つのノードを頂点とする3角形ポリゴンを描画する(ステップS44)。例えば図23(B)において、ノード(i,j)、(i+1,j+1)、(i,j+1)の中に、F=0となるノードが1つも無かった場合には、ポリゴンPL2が描画される。
【0144】
次に、今回の4つのノード(i,j)、(i+1,j)、(i+1,j+1)、(i,j+1)を用いて、ポリゴンが1つでも描画されたかを判断し(ステップS45)、描画されている場合にはステップS48に移行し、描画されていない場合にはステップS46に移行する。即ち、図23(B)のポリゴンPL1、PL2のいずれかが描画されている場合にはステップS48に移行し、いずれも描画されていない場合にはステップS46に移行する。
【0145】
ステップS46では、ノード(i,j)、(i+1,j)、(i,j+1)の中に、燃焼度パラメータF=0となるノードが1つもない場合には、これらの3つのノードを頂点とする3角形ポリゴンを描画する。例えば図23(C)において、ノード(i,j)、(i+1,j)、(i,j+1)の中に、F=0となるノードが1つも無かった場合には、ポリゴンPL3が描画される。
【0146】
次に、ノード(i+1,j)、(i+1,j+1)、(i,j+1)の中に、燃焼度パラメータF=0となるノードが1つもない場合には、これらの3つのノードを頂点とする3角形ポリゴンを描画する(ステップS47)。例えば図23(C)において、ノード(i+1,j)、(i+1,j+1)、(i,j+1)の中に、F=0となるノードが1つも無かった場合には、ポリゴンPL4が描画される。
【0147】
以上の処理を、すべてのノード(i,j)について終了するまで繰り返す(ステップS48)。
【0148】
なお、ステップS43〜S47に示すような処理を行うのは、以下の理由による。
【0149】
即ち、図23(B)において例えばノード(i,j)の燃焼度パラメータFが0の場合(燃え尽きた場合)には、ステップS43、S44の処理によっては、ポリゴンPL1、PL2は共に描画されない。
【0150】
しかしながら、このような場合にも、ステップS47において、ポリゴンPL4のみが描画(PL3は非描画)されるようになり、正しい結果を得ることができる。
【0151】
同様に、図23(B)において例えばノード(i+1,j+1)の燃焼度パラメータFが0の場合には、ステップS43、S44の処理によっては、ポリゴンPL1、PL2は共に描画されない。
【0152】
しかしながら、このような場合にも、ステップS46において、ポリゴンPL3のみが描画(PL4は非描画)されるようになり、正しい結果を得ることができる。
【0153】
以上のようにして、布オブジェクトの描画処理が終了する。
【0154】
そして、最後に、図18に示すように、描画された布オブジェクトを表示部に表示して、フレーム処理を終了する(ステップS9)。
【0155】
4.ハードウェア構成
次に、本実施形態を実現できるハードウェアの構成の一例について図24を用いて説明する。
【0156】
メインプロセッサ900は、CD982(情報記憶媒体)に格納されたプログラム、通信インターフェース990を介して転送されたプログラム、或いはROM950(情報記憶媒体の1つ)に格納されたプログラムなどに基づき動作し、ゲーム処理、画像処理、音処理などの種々の処理を実行する。
【0157】
コプロセッサ902は、メインプロセッサ900の処理を補助するものであり、高速並列演算が可能な積和算器や除算器を有し、マトリクス演算(ベクトル演算)を高速に実行する。例えば、オブジェクトを移動させたり動作(モーション)させるための物理シミュレーションに、マトリクス演算などの処理が必要な場合には、メインプロセッサ900上で動作するプログラムが、その処理をコプロセッサ902に指示(依頼)する。
【0158】
ジオメトリプロセッサ904は、座標変換、透視変換、光源計算、曲面生成などのジオメトリ処理を行うものであり、高速並列演算が可能な積和算器や除算器を有し、マトリクス演算(ベクトル演算)を高速に実行する。例えば、座標変換、透視変換、光源計算などの処理を行う場合には、メインプロセッサ900で動作するプログラムが、その処理をジオメトリプロセッサ904に指示する。
【0159】
データ伸張プロセッサ906は、圧縮された画像データや音データを伸張するデコード処理を行ったり、メインプロセッサ900のデコード処理をアクセレートする処理を行う。これにより、オープニング画面、インターミッション画面、エンディング画面、或いはゲーム画面などにおいて、所与の画像圧縮方式で圧縮された動画像を表示できるようになる。なお、デコード処理の対象となる画像データや音データは、ROM950、CD982に格納されたり、或いは通信インターフェース990を介して外部から転送される。
【0160】
描画プロセッサ910は、ポリゴンや曲面などのプリミティブ面で構成されるオブジェクトの描画(レンダリング)処理を高速に実行するものである。オブジェクトの描画の際には、メインプロセッサ900は、DMAコントローラ970の機能を利用して、オブジェクトデータを描画プロセッサ910に渡すと共に、必要であればテクスチャ記憶部924にテクスチャを転送する。すると、描画プロセッサ910は、これらのオブジェクトデータやテクスチャに基づいて、Zバッファなどを利用した陰面消去を行いながら、オブジェクトをフレームバッファ922に高速に描画する。また、描画プロセッサ910は、αブレンディング(半透明処理)、デプスキューイング、ミップマッピング、フォグ処理、トライリニア・フィルタリング、アンチエリアシング、シェーディング処理なども行うことができる。そして、1フレーム分の画像がフレームバッファ922に書き込まれると、その画像はディスプレイ912に表示される。
【0161】
サウンドプロセッサ930は、多チャンネルのADPCM音源などを内蔵し、BGM、効果音、音声などの高品位のゲーム音を生成する。生成されたゲーム音は、スピーカ932から出力される。
【0162】
ゲームコントローラ942からの操作データや、メモリカード944からのセーブデータ、個人データは、シリアルインターフェース940を介してデータ転送される。
【0163】
ROM950にはシステムプログラムなどが格納される。なお、業務用ゲームシステムの場合には、ROM950が情報記憶媒体として機能し、ROM950に各種プログラムが格納されることになる。なお、ROM950の代わりにハードディスクを利用するようにしてもよい。
【0164】
RAM960は、各種プロセッサの作業領域として用いられる。
【0165】
DMAコントローラ970は、プロセッサ、メモリ(RAM、VRAM、ROM等)間でのDMA転送を制御するものである。
【0166】
CDドライブ980は、プログラム、画像データ、或いは音データなどが格納されるCD982(情報記憶媒体)を駆動し、これらのプログラム、データへのアクセスを可能にする。
【0167】
通信インターフェース990は、ネットワークを介して外部との間でデータ転送を行うためのインターフェースである。この場合に、通信インターフェース990に接続されるネットワークとしては、通信回線(アナログ電話回線、ISDN)、高速シリアルバスなどを考えることができる。そして、通信回線を利用することでインターネットを介したデータ転送が可能になる。また、高速シリアルバスを利用することで、他のゲームシステムとの間でのデータ転送が可能になる。
【0168】
なお、本発明の各手段は、その全てを、ハードウェアのみにより実行してもよいし、情報記憶媒体に格納されるプログラムや通信インターフェースを介して配信されるプログラムのみにより実行してもよい。或いは、ハードウェアとプログラムの両方により実行してもよい。
【0169】
そして、本発明の各手段をハードウェアとプログラムの両方により実行する場合には、情報記憶媒体には、本発明の各手段をハードウェアを利用して実行するためのプログラムが格納されることになる。より具体的には、上記プログラムが、ハードウェアである各プロセッサ902、904、906、910、930等に処理を指示すると共に、必要であればデータを渡す。そして、各プロセッサ902、904、906、910、930等は、その指示と渡されたデータとに基づいて、本発明の各手段を実行することになる。
【0170】
図25(A)に、本実施形態を業務用ゲームシステムに適用した場合の例を示す。プレーヤは、ディスプレイ1100上に映し出されたゲーム画像を見ながら、レバー1102、ボタン1104等を操作してゲームを楽しむ。内蔵されるシステムボード(サーキットボード)1106には、各種プロセッサ、各種メモリなどが実装される。そして、本発明の各手段を実行するための情報(プログラム或いはデータ)は、システムボード1106上の情報記憶媒体であるメモリ1108に格納される。以下、この情報を格納情報と呼ぶ。
【0171】
図25(B)に、本実施形態を家庭用のゲームシステムに適用した場合の例を示す。プレーヤはディスプレイ1200に映し出されたゲーム画像を見ながら、ゲームコントローラ1202、1204を操作してゲームを楽しむ。この場合、上記格納情報は、本体システムに着脱自在な情報記憶媒体であるCD1206、或いはメモリカード1208、1209等に格納されている。
【0172】
図25(C)に、ホスト装置1300と、このホスト装置1300とネットワーク1302(LANのような小規模ネットワークや、インターネットのような広域ネットワーク)を介して接続される端末1304-1〜1304-nとを含むシステムに本実施形態を適用した場合の例を示す。この場合、上記格納情報は、例えばホスト装置1300が制御可能な磁気ディスク装置、磁気テープ装置、メモリ等の情報記憶媒体1306に格納されている。端末1304-1〜1304-nが、スタンドアロンでゲーム画像、ゲーム音を生成できるものである場合には、ホスト装置1300からは、ゲーム画像、ゲーム音を生成するためのゲームプログラム等が端末1304-1〜1304-nに配送される。一方、スタンドアロンで生成できない場合には、ホスト装置1300がゲーム画像、ゲーム音を生成し、これを端末1304-1〜1304-nに伝送し端末において出力することになる。
【0173】
なお、図25(C)の構成の場合に、本発明の各手段を、ホスト装置(サーバー)と端末とで分散して実行するようにしてもよい。また、本発明の各手段を実行するための上記格納情報を、ホスト装置(サーバー)の情報記憶媒体と端末の情報記憶媒体に分散して格納するようにしてもよい。
【0174】
またネットワークに接続する端末は、家庭用ゲームシステムであってもよいし業務用ゲームシステムであってもよい。そして、業務用ゲームシステムをネットワークに接続する場合には、業務用ゲームシステムとの間で情報のやり取りが可能であると共に家庭用ゲームシステムとの間でも情報のやり取りが可能な携帯型情報記憶装置(メモリカード、携帯型ゲーム装置)を用いることが望ましい。
【0175】
なお本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。
【0176】
例えば、本発明のうち従属請求項に係る発明においては、従属先の請求項の構成要件の一部を省略する構成とすることもできる。また、本発明の1の独立請求項に係る発明の要部を、他の独立請求項に従属させることもできる。
【0177】
また本実施形態では、布オブジェクトに本発明を適用した場合について主に説明したが、本発明が適用されるオブジェクトは布オブジェクトに限定されない。即ち、隣り合うノード同士が束縛力により連結される複数のノードにより形状が特定されるオブジェクトであればよく、例えば、紙オブジェクト、鉄板オブジェクト、岩オブジェクトなどにも本発明は適用できる。
【0178】
また本実施形態では、ノードが燃え尽きることでノードが無効になる場合について説明したが、例えば、打撃などによる破壊でノードが無効になる場合にも本発明は適用できる。
【0179】
また、オブジェクトのデータ構造も、図5、図6で説明した構造が特に望ましいが、これに限定されるものではない。
【0180】
また、本実施形態ではノード状態パラメータが燃焼度パラメータである場合について説明したが、本発明のノード状態パラメータは、ノードの他の状態(温度、湿度、強度、発光度等)を表すパラメータであってもよい。
【0181】
また、パーティクルにより表現される表示物は炎に限定されず、例えば、爆発等、リアルタイムに形が変形する種々の表示物を表現できる。
【0182】
また、パーティクルは、図10に示すような3Dスプライトで表現することが望ましいが、立体オブジェクト、線、点で表現してもよい。
【0183】
また本発明は種々のゲーム(格闘ゲーム、シューティングゲーム、ロボット対戦ゲーム、スポーツゲーム、競争ゲーム、ロールプレイングゲーム、音楽演奏ゲーム、ダンスゲーム等)に適用できる。
【0184】
また本発明は、業務用ゲームシステム、家庭用ゲームシステム、多数のプレーヤが参加する大型アトラクションシステム、シミュレータ、マルチメディア端末、ゲーム画像を生成するシステムボード等の種々のゲームシステム(画像生成システム)に適用できる。
【図面の簡単な説明】
【図1】本実施形態のゲームシステムのブロック図の例である。
【図2】図2(A)、(B)は、本実施形態により生成されるゲーム画像の例である。
【図3】図3(A)、(B)も、本実施形態により生成されるゲーム画像の例である。
【図4】燃え尽きたノードの束縛力を無効にすると共に、そのノードを頂点とするポリゴンを非表示にする手法について説明するための図である。
【図5】ノードのデータ構造の例を示す図である。
【図6】仮想バネのデータ構造の例を示す図である。
【図7】図7(A)、(B)は、燃焼度(ノード状態)パラメータを利用して布の燃えちぎれ表現を実現する手法について説明するための図である。
【図8】図8(A)、(B)も、燃焼度パラメータを利用して布の燃えちぎれ表現を実現する手法について説明するための図である。
【図9】燃焼度パラメータに基づいてパーティクルを発生する手法について説明するための図である。
【図10】パーティクルを3Dスプライトで表現する手法について説明するための図である。
【図11】図11(A)、(B)は、炎パーティクルについて説明するための図である。
【図12】図12(A)、(B)も、炎パーティクルについて説明するための図である。
【図13】図13(A)、(B)も、炎パーティクルについて説明するための図である。
【図14】燃焼度パラメータに基づいてノード付近の画像を変化させる手法について説明するための図である。
【図15】図15(A)、(B)は、本実施形態の手法により徐々に画像が変化する布オブジェクトの画像の例である。
【図16】図16(A)、(B)も、本実施形態の手法により徐々に画像が変化する布オブジェクトのワイヤーフレーム画像の例である。
【図17】図17(A)、(B)も、本実施形態の手法により徐々に画像が変化する布オブジェクトのワイヤーフレーム画像の例である。
【図18】本実施形態の詳細な処理例について示すフローチャートである。
【図19】本実施形態の詳細な処理例について示すフローチャートである。
【図20】本実施形態の詳細な処理例について示すフローチャートである。
【図21】本実施形態の詳細な処理例について示すフローチャートである。
【図22】本実施形態の詳細な処理例について示すフローチャートである。
【図23】図23(A)、(B)、(C)は、本実施形態の詳細な処理例について説明するための図である。
【図24】本実施形態を実現できるハードウェアの構成の一例を示す図である。
【図25】図25(A)、(B)、(C)は、本実施形態が適用される種々の形態のシステムの例を示す図である。
【符号の説明】
100 処理部
102 オブジェクト空間設定部
104 ノード状態処理部
106 束縛力処理部
108 ノード移動処理部
110 パーティクル処理部
112 描画処理部
160 操作部
170 記憶部
174 描画領域
180 情報記憶媒体
190 表示部
192 音出力部
194 携帯型情報記憶装置
196 通信部[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a game system and an information storage medium.
[0002]
[Background Art and Problems to be Solved by the Invention]
Conventionally, a game system that generates an image that can be seen from a given viewpoint in an object space that is a virtual three-dimensional space is known, and is popular as a device that can experience so-called virtual reality. Taking a game system capable of enjoying a role-playing game as an example, a player operates a character (object) to move it on a map in the object space, and battles enemy characters or interacts with other characters. Or enjoy the game by visiting various towns.
[0003]
Now, in such a game system, it is an important technical problem to generate a more realistic image in order to improve the virtual reality of the player. Therefore, it is desirable that the state in which an object is burned by a flame can be expressed with a realistic image. In other words, taking the case where the cloth is burned by the flame as an example, it is desirable to be able to express how the ignited flame gradually spreads and the cloth is burnt off and disappears.
[0004]
And the following 1st, 2nd methods, for example can be considered as a method of implement | achieving such a burning torn expression of a cloth.
[0005]
In the first technique, a cloth object OB representing a cloth before being burned off1Cloth object OB representing the cloth after burning1-1, OB1-2Is prepared in advance. When it is determined that the cloth is burnt off, the cloth object to be used is OB1To OB1-1, OB1-2Switch to.
[0006]
However, the first method has a problem that the generated image becomes uniform, and it is impossible to generate a variety of real images. In order to solve this problem, a method of preparing a large number of objects for expressing various tearing methods can be considered, but this causes a problem of an increase in storage capacity of object data. .
[0007]
In the second method, when it is determined that the cloth is burnt off, the cloth object OB1A cloth object OB that represents the cloth after it has been burned off in real time1-1, OB1-2Is generated in real time.
[0008]
However, in this second method, every time the cloth burns off, the data structure of the cloth object changes, and the data management becomes complicated. Also, every time the fabric burns off, the amount of data increases. There is also a problem that the amount of data used in the memory increases.
[0009]
The present invention has been made in view of the above-described problems, and the object of the present invention is to generate a realistic image representing how an object is burned by a flame with a small amount of data and a small processing burden. A system and an information storage medium are provided.
[0010]
[Means for Solving the Problems]
In order to solve the above-described problems, the present invention is a game system that performs image generation, and sets an object whose shape is specified by a plurality of nodes in which adjacent nodes are connected by a binding force in the object space. Means for invalidating a binding force that connects the invalid node and an adjacent node of the invalid node when it is determined that a node in the plurality of nodes has become an invalid node; And means for generating an image at a given viewpoint. The information storage medium according to the present invention is an information storage medium that can be used by a computer, and includes a program for executing the above means. The program according to the present invention is a program (including a program embodied in a carrier wave) that can be used by a computer, and includes a processing routine for executing the above means.
[0011]
According to the present invention, when it is determined that a certain node has become an invalid node, the binding force connecting the invalid node and its adjacent nodes becomes invalid. Accordingly, the invalid node is separated from the neighboring nodes around the invalid node, and image expression such as a hole in the object or tearing of the object becomes possible.
[0012]
In particular, when each node has attribute data such as position, velocity, acceleration, etc., it is possible to drop a torn part of an object based on physical calculation, etc., so that a more realistic image can be generated. become.
[0013]
The present invention is also a game system for generating an image, wherein an object whose shape is specified by a plurality of nodes in which adjacent nodes are connected by a binding force is set in an object space; When it is determined that a node in the node has become an invalid node, among the primitives constituting the object, means for omitting drawing of a primitive including the invalid node as a definition point, and a given viewpoint in the object space And means for generating an image at. The information storage medium according to the present invention is an information storage medium that can be used by a computer, and includes a program for executing the above means. The program according to the present invention is a program (including a program embodied in a carrier wave) that can be used by a computer, and includes a processing routine for executing the above means.
[0014]
According to the present invention, when it is determined that a certain node has become an invalid node, drawing of a primitive including the invalid node as a definition point (vertex, control point) is omitted. Accordingly, an image near the invalid node is not displayed, and an image expression such as a hole in the object or tearing of the object becomes possible.
[0015]
Note that when drawing a primitive including an invalid node as a definition point is omitted, it is desirable to invalidate the binding force that connects the invalid node and the adjacent node of the invalid node.
[0016]
The game system, information storage medium, and program according to the present invention are characterized in that it is determined whether or not the node has become an invalid node based on a node state parameter that the node has as attribute data.
[0017]
In this way, for example, it becomes possible to determine that the node has become invalid on the condition that the node state parameter has changed or the node state parameter has reached a given value, and the processing can be simplified. .
[0018]
Further, the game system, information storage medium and program according to the present invention provide means (or means for transmitting the node state of the node to an adjacent node of the node based on a node state parameter which the node has as attribute data. A program or a processing routine for execution).
[0019]
The present invention is also a game system for generating an image, wherein an object whose shape is specified by a plurality of nodes in which adjacent nodes are connected by a binding force is set in the object space, and the node is an attribute. Means for transmitting a node state of the node to an adjacent node of the node based on a node state parameter as data, and means for generating an image at a given viewpoint in the object space And The information storage medium according to the present invention is an information storage medium that can be used by a computer, and includes a program for executing the above means. The program according to the present invention is a program (including a program embodied in a carrier wave) that can be used by a computer, and includes a processing routine for executing the above means.
[0020]
According to the present invention, it is possible to transmit a node state of a certain node to an adjacent node using a node state parameter. Accordingly, it is possible to express a state in which a node state of a certain node is gradually transmitted from the node to surrounding nodes, and for example, it is possible to perform an optimal image expression for a flame burning expression.
[0021]
The game system, information storage medium, and program according to the present invention determine whether to transmit the node status of the node to the adjacent nodes of the node based on the node status parameter that the node has as attribute data. If it is determined that the node state is transmitted, the node state parameter of the adjacent node to which the node state is transmitted is changed.
[0022]
In this way, it becomes possible to change the node state parameter of the adjacent node of the node on the condition that the node state parameter of the node changes or the node state parameter reaches a given value. . As a result, it is possible to express a state in which the node state of a node around the node changes one after another from a certain node.
[0023]
The present invention is also a game system for generating an image, wherein an object whose shape is specified by a plurality of nodes in which adjacent nodes are connected by a binding force is set in the object space, and the node is an attribute. The apparatus includes means for generating particles from the node based on node state parameters as data, and means for generating an image at a given viewpoint in the object space. The information storage medium according to the present invention is an information storage medium that can be used by a computer, and includes a program for executing the above means. The program according to the present invention is a program (including a program embodied in a carrier wave) that can be used by a computer, and includes a processing routine for executing the above means.
[0024]
According to the present invention, it is possible to generate particles from a node using the node state parameter. Therefore, particles according to the node state can be generated from the node, and a more realistic particle expression can be realized.
[0025]
In addition, the game system, information storage medium, and program according to the present invention determine whether or not to generate particles from the node based on the node state parameter that the node has as attribute data. Is characterized in that the attribute data of the particle is determined based on the node state parameter of the node.
[0026]
In this way, on the condition that the node state parameter of the node has changed or the node state parameter has reached a given value, particles having attribute data corresponding to the value of the node state parameter are transferred to the node. It becomes possible to generate from. Therefore, for example, when combined with the invention that transmits the node state to the adjacent node based on the node state parameter, it is possible to express how the area of the node that generates the particles gradually expands, which is optimal for expressing the flame spread It becomes possible to generate a simple image.
[0027]
The present invention is also a game system for generating an image, wherein an object whose shape is specified by a plurality of nodes in which adjacent nodes are connected by a binding force is set in the object space, and the node is an attribute. The image processing apparatus includes means for changing an image of an object in the vicinity of the node based on a node state parameter included as data, and means for generating an image at a given viewpoint in the object space. The information storage medium according to the present invention is an information storage medium that can be used by a computer, and includes a program for executing the above means. The program according to the present invention is a program (including a program embodied in a carrier wave) that can be used by a computer, and includes a processing routine for executing the above means.
[0028]
According to the present invention, it is possible to change an image of an object near a node by using a node state parameter. Therefore, an image such as the color of an object near the node can be locally changed according to the node state, and a more realistic image expression can be realized.
[0029]
The game system, information storage medium, and program according to the present invention can change an image of a primitive including a node as a definition point among primitives constituting the object, based on a node state parameter that the node has as attribute data. It is characterized by.
[0030]
In this way, it is possible to change the image data given to the definition point of the primitive and change the image in units of primitives based on the image data.
[0031]
In the game system, the information storage medium, and the program according to the present invention, the node state parameter is a parameter representing a burnup degree of each node.
[0032]
Using such burnup parameters, it is possible to determine whether or not a node has been burned out, determine whether or not to transmit the combustion state of a node to other nodes, determine whether or not to generate flame particles from a node, etc. Can be realized by a simple process.
[0033]
The game system, the information storage medium, and the program according to the present invention determine that the state change of the node has started when the node state parameter has changed from a first value that is an initial value, and the node state parameter Is the second value, it is determined that the state change of the node is completed.
[0034]
In this way, for example, when the node state parameter changes from the first value, it is determined that the change of the node state has started, and when the node state parameter is between the first and second values. Determines that the node state change is in progress, and if the node state parameter reaches the second value, the node state change ends, and for example, it can be determined that the node has become invalid. .
[0035]
The game system, information storage medium, and program according to the present invention are characterized in that each node has the position, velocity, and acceleration of each node as attribute data.
[0036]
If each node has such attribute data such as position, velocity, and acceleration, each node can be moved by physical simulation, and a more realistic image representation can be achieved.
[0037]
The game system, information storage medium, and program according to the present invention are nodes in which the plurality of nodes are arranged in a grid pattern.
[0038]
In this way, the state change expression and tearing expression of the plate-like object such as the cloth object or the paper object can be realized realistically.
[0039]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, preferred embodiments of the present invention will be described with reference to the drawings.
[0040]
1. Constitution
FIG. 1 shows an example of a block diagram of the game system (image generation system) of this embodiment. In this figure, the present embodiment only needs to include at least the processing unit 100 (or include the processing unit 100 and the storage unit 170), and the other blocks can be optional components.
[0041]
The operation unit 160 is for a player to input operation data, and the function can be realized by hardware such as a lever, a button, a microphone, or a housing.
[0042]
The storage unit 170 serves as a work area such as the processing unit 100 or the communication unit 196, and its function can be realized by hardware such as a RAM.
[0043]
An information storage medium (storage medium usable by a computer) 180 stores information such as programs and data, and functions thereof are an optical disk (CD, DVD), a magneto-optical disk (MO), a magnetic disk, and a hard disk. It can be realized by hardware such as a magnetic tape or a memory (ROM). The processing unit 100 performs various processes of the present invention (this embodiment) based on information stored in the information storage medium 180. That is, the information storage medium 180 stores information (program or data) for executing the means of the present invention (this embodiment) (particularly, the blocks included in the processing unit 100).
[0044]
Part or all of the information stored in the information storage medium 180 is transferred to the storage unit 170 when the system is powered on. The information storage medium 180 also includes a program for performing the processing of the present invention, image data, sound data, shape data of the display object, information for instructing the processing of the present invention, or processing in accordance with the instructions. Information etc. can be included.
[0045]
The display unit 190 outputs an image generated according to the present embodiment, and the function thereof can be realized by hardware such as a CRT, LCD, or HMD (head mounted display).
[0046]
The sound output unit 192 outputs the sound generated by the present embodiment, and its function can be realized by hardware such as a speaker.
[0047]
The portable information storage device 194 stores player personal data, game save data, and the like. As the portable information storage device 194, a memory card, a portable game device, and the like can be considered.
[0048]
The communication unit 196 performs various controls for communicating with the outside (for example, a host device or other game system), and functions thereof are various processors, hardware such as a communication ASIC, It can be realized by a program.
[0049]
The program or data for executing the means of the present invention (this embodiment) may be distributed from the information storage medium of the host device (server) to the information storage medium 180 via the network and the communication unit 196. Good. Use of such an information storage medium of the host device (server) is also included in the scope of the present invention.
[0050]
The processing unit 100 (processor) performs various processes such as a game process, an image generation process, and a sound generation process based on operation data from the operation unit 160, a program, and the like. The functions of the processing unit 100 can be realized by hardware such as various processors (CPU, DSP, etc.) or ASIC (gate array, etc.) and a given program (game program).
[0051]
Here, game processing performed by the processing unit 100 includes coin (price) acceptance processing, various mode setting processing, game progress processing, selection screen setting processing, position of an object (one or more primitive surfaces), Processing for obtaining a rotation angle (rotation angle about X, Y or Z axis), processing for moving an object (motion processing), processing for obtaining a viewpoint position (virtual camera position) and a line-of-sight angle (virtual camera rotation angle), Processing to place objects such as map objects in the object space, hit check processing, processing to calculate game results (results, results), processing for multiple players to play in a common game space, game over processing, etc. Can think.
[0052]
Further, the processing unit 100 generates an image that can be seen from a given viewpoint (and a virtual camera) in the object space, for example, based on the game processing result, and outputs the image to the display unit 190.
[0053]
Further, the processing unit 100 performs various kinds of sound processing based on the above-described game processing result, generates a sound such as BGM, sound effect, or sound, and outputs the sound to the sound output unit 192.
[0054]
Note that all of the functions of the processing unit 100 may be realized by hardware, or all of them may be realized by a program. Alternatively, it may be realized by both hardware and a program.
[0055]
The processing unit 100 includes an object space setting unit 102, a node state processing unit 104, a binding force processing unit 106, a node movement processing unit 108, a particle processing unit 110, and a drawing processing unit 112.
[0056]
Here, the object space setting unit 102 performs processing for setting various objects (models) such as game characters and maps in the object space. More specifically, the position and rotation angle (direction) of the object in the world coordinate system are determined, and the object is arranged at the position at the rotation angle.
[0057]
In this embodiment, an object whose shape is specified by a plurality of nodes in which adjacent nodes are connected by a binding force is set in the object space as an object for representing a display object such as cloth. become.
[0058]
The node state processing unit 104 performs node state (burning degree etc.) determination processing, node state transmission processing to adjacent nodes, and the like based on node state parameters (burning degree parameter) that the node has as attribute data. More specifically, based on the node state parameter, it is determined whether or not to transmit the node state (combustion state) to the adjacent node (whether or not to make the flame burn out), and when it is determined to transmit the node state The process of changing the node state parameter of the adjacent node to which the node state is transmitted (the process of setting the combustion state) is performed.
[0059]
The node state parameter is a variable for quantitatively or qualitatively representing the state of the node at that time (burning rate, temperature, humidity, intensity, luminous intensity, etc.), and various determinations are made in processing related to the node state. It is used for the material.
[0060]
Further, as attribute data given to a node, in addition to the node state parameter, the position, velocity, acceleration, or the like of each node can be considered.
[0061]
Based on the node state parameter, the binding force processing unit 106 determines whether or not the node is invalid (whether or not it is burned out). If the binding force processing unit 106 determines that the node is an invalid node, the binding force processing unit 106 connects the invalid node and its adjacent node. Process to invalidate force (virtual spring). On the other hand, when it is determined that the nodes are not invalid, the binding force to be applied between the nodes is calculated.
[0062]
The node movement processing unit 108 calculates the acceleration, speed, and position of the node in each frame. In this case, the acceleration of the node is calculated based on a binding force acting on the node and physical parameters such as gravity and wind force.
[0063]
The particle processing unit 110 may sequentially generate particles (for example, flame particles and smoke particles) for expressing an irregular display object (for example, flame, smoke, water, and explosion) whose shape is deformed over time. , Move or extinguish. More specifically, a process of randomly changing the generation amount, generation position, movement state (speed, acceleration, etc.) or lifetime of particles is performed. As a result, it is possible to realistically represent an irregular display such as a flame.
[0064]
In the present embodiment, the particle processing unit 110 performs processing for generating particles from the node based on the node state parameter. More specifically, it is determined whether particles are generated from the node based on the node state parameter. If it is determined that a particle is generated, the attribute data of the particle (flame intensity, light intensity, generation amount, speed, acceleration, life, etc.) is determined based on the node state parameter of the node. For example, when the degree of burning of the node is high, strong flame particles are generated.
[0065]
The drawing processing unit 112 performs processing for drawing an object (primitive surface) after geometry processing in a drawing area 174 (for example, a frame buffer) while performing texture mapping, color (luminance) interpolation processing, hidden surface removal, and the like. Thereby, an image at a given viewpoint (virtual camera) in the object space in which the object is arranged is generated.
[0066]
In this embodiment, when a node among a plurality of nodes is determined to be invalid based on a node state parameter or the like, the invalid node is defined as a definition point (a point for defining the shape of an object). The drawing of primitives (polygons, free-form surfaces, etc.) included as polygon vertices or free-form surface control points is omitted. More specifically, by drawing a primitive having a node as a defining point, an image of an object (for example, cloth) whose shape is specified by a plurality of nodes is generated. For example, when the primitive is a polygon, if there is an invalid node in the vertex of the polygon, drawing of the polygon is omitted.
[0067]
Furthermore, in this embodiment, based on the node state parameter described above, the image (properties such as color and brightness) of the object near the node is changed. More specifically, based on the node state parameter, an image of a primitive that includes the node as a definition point among the primitives constituting the object is changed. For example, when it is determined that the node is in the combustion state based on the node state parameter, the color of the cloth (object) in the vicinity of the node is changed from the original color to gradually become black.
[0068]
Note that the game system according to the present embodiment may be a system dedicated to the single player mode in which only one player can play, and not only such a single player mode but also a multiplayer mode in which a plurality of players can play. A system may be provided.
[0069]
Further, when a plurality of players play, game images and game sounds to be provided to the plurality of players may be generated using one terminal, or connected via a network (transmission line, communication line) or the like. Alternatively, it may be generated using a plurality of terminals.
[0070]
2. Features of this embodiment
2.1 Burning torn expression of cloth
2A, 2B, 3A, and 3B show examples of game images generated by the present embodiment.
[0071]
In FIG. 2A, a flame 20 is lit on the candle 18. The flame 20 is represented by a plurality of flame particles generated from the tip of the candle 18. Objects such as the small bear 22, the desk 24, the cloth 25, and the carpet 29 around the flame 20 are light from the flame 20 (specifically, light from a representative light source set at a representative position of the flame particle). Is shaded. In addition, the shadow 30 of the small bear 22 is also generated by this light.
[0072]
In FIG. 2B, the candle 18 has fallen, and the flame 20 has burned onto the cloth 25 on the desk 24. In FIG. 3A, the flame 20 that has burned out further spreads and spreads, and the cloth is burned off by the cloth pieces 26 and 28. Moreover, the color of the cloth pieces 26 and 28 is also gradually blackened. In FIG. 3B, the cloth is burned off by the cloth pieces 26, 27, and 28, and the color is further black. Also, the burned pieces 26 and 28 are starting to fall down due to gravity (or wind).
[0073]
As described above, the present embodiment realistically represents a state in which the flame that has been burned on the cloth gradually spreads and the cloth burns off and disappears. And in order to implement | achieve such a burning torn expression of a cloth, in this embodiment, the method demonstrated below is employ | adopted.
[0074]
In other words, in this embodiment, as shown by A1 in FIG. 4, adjacent nodes are connected by a virtual spring (binding force in a broad sense), and a cloth object is expressed using a plurality of nodes arranged in a lattice shape. is doing. Then, as shown by A2 in FIG. 4, the image of the cloth object is generated by drawing a polygon (primitive surface in a broad sense) including these nodes as vertices (definition points in a broad sense).
[0075]
In this embodiment, when the flame burns on the cloth and it is determined that a certain node has been burned out (when it is determined that the node has become invalid) as shown by A3 in FIG. 4, the burned-out node and its adjacent node The virtual spring (binding force in a broad sense) that was connected to is invalidated. Further, as shown at A4 in FIG. 4, a polygon including a burned-out node as a vertex is hidden (drawing omitted).
[0076]
By doing in this way, in this embodiment, cloth can be burned gradually and it can be expressed realistically that cloth is burned off. That is, as the non-display area of the cloth as shown by A4 in FIG. 4 gradually expands, the appearance of the cloth burning is realistically expressed. Also, the state shown in A5 of FIG. 4 is cut off from the part shown in A6 and dropped by gravity (or wind) or the like, so that the cloth can be burned off in a realistic manner.
[0077]
In addition, the present embodiment has an advantage that it is possible to realize the burning-out representation of the cloth without changing the data structure of the cloth object.
[0078]
For example, FIGS. 5 and 6 show the data structure of the cloth object used in this embodiment. FIG. 5 is an example of a data structure for nodes, and FIG. 6 is a data structure for virtual springs (binding force) that connect the nodes.
[0079]
As shown in FIG. 5, each node has a node position p, velocity v, acceleration a, mass M, and burnup parameter F (node state parameter in a broad sense) as its attribute data. These attribute data can be read by specifying the index (i, j) of the node.
[0080]
Further, as shown in FIG. 6, each virtual spring has, as its attribute data, a tension T and a drag D acting between the nodes, a static distance R (a distance at which the tension becomes 0), and a node A connected to one end of the virtual spring. Index (i, j) and the index (i, j) of the node B connected to the other end. These attribute data can be read by designating the index K of the virtual spring.
[0081]
For example, the first and second methods can be considered as a method for realizing the burning and tearing expression of the cloth.
[0082]
In the first technique, when it is determined that the cloth has been burned off, the cloth object OB representing the cloth before being burned off1, The cloth object OB representing the cloth after burning1-1, OB1-2By switching to, it realizes the burning and tearing expression of the fabric.
[0083]
However, this first method has problems such as a uniform image to be generated and an increase in storage capacity of object data.
[0084]
In the second method, when it is determined that the cloth is burnt off, the cloth object OB1A cloth object OB that represents the cloth after it has been burned off in real time1-1, OB1-2Is generated in real time.
[0085]
However, in this second method, the data structure of the cloth object changes, so the processing becomes complicated, or the amount of data increases each time the cloth burns off, so the amount of data used in the memory increases. There is a problem.
[0086]
According to the present embodiment, as apparent from FIGS. 5 and 6, the data structure and the data amount of the cloth object do not change even when the cloth is burned or burnt off. Accordingly, it is possible to generate a realistic image representing how the cloth is burned off with a small amount of data and a small processing load.
[0087]
2.2 Burnup (node state) parameters
In the present embodiment, as shown in FIG. 5, the burnup (node state) parameter F is included in the attribute data of each node. In the present embodiment, by effectively using the burnup parameter F, it has succeeded in realizing the spread of the flame and the expression of the burned-off of the cloth with a simple process.
[0088]
For example, as shown in FIG. 7A, in the initial state, the burnup parameter F is set to 1000 (first value) in all nodes. This F = 1000 indicates that the node is not burned.
[0089]
Then, when the flame burns to the node for some reason, the value of the burnup parameter F at that node is decreased by 1 and changed to 999, as indicated by C1 in FIG. 7B. When the burn-up parameter F of the node becomes smaller than 1000 in this way, the combustion state (node state) is transmitted from the node to the adjacent node.
[0090]
That is, the flame burns out to a node randomly selected from adjacent nodes (including its own node). For example, in FIG. 8A, the fire has been burned from the node indicated by D1 to the node indicated by D2, and the value of the burnup parameter F of the node indicated by D2 where the flame has been burned is also decreased by 1, and changed to 999. To do.
[0091]
In this case, the flame starts to burn not only from the node indicated by D1 in FIG. 8A but also from the node indicated by D2 to the adjacent node. Further, the value of the burnup parameter F of the node indicated by D1 is further decreased by 1 and changes to 998.
[0092]
Once the flame has burned out, the burn-up parameter at that node continues to decrease by one every one or more frames. In the node indicated by D3 in FIG. 8B, the burnup parameter F = 0, and it is determined that the node has been burned out (invalidated). Then, the virtual spring that connects the node and the adjacent node is also invalidated.
[0093]
Thus, if the node has the burnup parameter F as attribute data, it is determined whether the node is in a burning state, the process of burning the flame to an adjacent node, the determination whether the node is burned out, A process for invalidating a virtual spring of a burned-out node can be centrally processed by using one burnup parameter F. Therefore, the processing can be simplified and the processing load can be reduced.
[0094]
In this embodiment, the burnup parameter F is also effectively used for the generation of flame particles. That is, based on the burnup parameter F of each node, it is determined whether or not flame particles are generated from that node. Then, when it is determined that it occurs, flame particle attribute data (flame strength, etc.) is determined based on the burnup parameter F.
[0095]
More specifically, in the present embodiment, as indicated by E1 and E2 in FIG. 9, a random number of nodes out of nodes (burning nodes) where the burnup parameter F is smaller than 1000 (burning nodes). Select a node. Then, flame particles are generated from the selected node. At this time, the flame strength IF of the generated flame particles is calculated based on the burnup parameter F.
[0096]
For example, if IF = sin (π × F / 1000), when the burnup parameter F = 1000, the flame strength IF = 0, when F = 500, the IF is maximum, and when F = 0. The flame strength returns to IF = 0. That is, when the flame starts when the node starts to burn, the flame strength of the flame particle is weak and then gradually increases. When the node burns out, the flame strength of the flame particle becomes zero. Therefore, the flame strength of the flame particles can be expressed more realistically.
[0097]
In the present embodiment, the speed, acceleration, life, light intensity, etc. of the flame particles are obtained based on the flame intensity IF of the flame particles obtained based on the burnup parameter F.
[0098]
By the way, in this embodiment, by using flame particles that are sequentially generated, moved, and disappeared with the passage of time, as shown in FIGS. 2 (A), (B), FIGS. Has succeeded in expressing the flame 20 that changes into an irregular shape.
[0099]
Here, the flame particle may be a three-dimensional object such as a sphere, or may be a planar object. Alternatively, it may be a line or a point.
[0100]
In the case of adopting planar flame particles, as shown in FIG. 10, the main surface of the flame particle FP is substantially perpendicular to the line (or line-of-sight vector) connecting the viewpoint VP and the flame particle FP. It is desirable to arrange FP so that it becomes. Thus, if the flame particles are expressed by so-called 3D sprites, the flame particles FP are always at the maximum size when viewed from the viewpoint VP even when the relative positional relationship between the viewpoint VP and the flame particles FP changes. It will be displayed. Therefore, it is possible to efficiently express an irregular display such as a flame without increasing the number of flame particles FP so much.
[0101]
In the 3D sprite of FIG. 10, the α value (transparency) of the region where the flame picture is drawn is set to a value other than 0 (0 <α ≦ 1), and the α value of the other region is , 0 (transparent). In this way, it is possible to represent a flame particle having a drop shape while using a rectangular polygon.
[0102]
Next, a specific method for controlling flame particles will be described.
[0103]
For example, in FIG. 11A, the flame 20 that shines on the candle 18 is represented by flame particles that are sequentially generated from the generation position 40. Each of these flame particles is generated at the generation position 40, then moves upward (Y direction), and disappears when the lifetime is exhausted. By generating such flame particles one after another from the generation position 40, the flame 20 as shown in FIG. 11A can be expressed.
[0104]
In this case, in this embodiment, the movement state (speed or acceleration, etc.) and life of the flame particles change randomly. Therefore, even if a plurality of flame particles are generated at the same time, the range occupied by the plurality of flame particles has a certain extent (area), so that the flame 20 of the candle 18 can be expressed realistically. Become.
[0105]
In FIG. 11B, the candle 18 has fallen and the flame has burned onto the cloth 25. In this case, as indicated by B1 in FIG. 6B, flame particles are sequentially generated from the positions of nodes randomly selected from the nodes where the flame has burnt out. Also, the amount of flame particles generated changes randomly.
[0106]
In FIGS. 12A and 12B, as shown in B2 and B3, the range of the node where the flame has burned out (the spread range of the flame) is further expanded, and flame particles are generated from various places on the cloth 25. ing. As a result, it is possible to realistically express how the flame burns and spreads on the cloth 25.
[0107]
In FIGS. 13A and 13B, the range of burning spreads over the entire cloth 25. In this case, in this embodiment, the generation amount, generation position, movement state, and life of the flame particles change randomly, and the position of each flame particle also changes in real time. Accordingly, as shown in FIGS. 13A and 13B, the overall shape of the flame changes as if it were a real-world flame, so that a very realistic flame image can be generated. Become.
[0108]
In the present embodiment, an image in the vicinity of the node (an image of a primitive including the node as a definition point) is changed based on the burnup parameter F.
[0109]
For example, in FIG. 14, the color (R, G, B) of each node is a function of the burnup parameter F. In other words, the smaller the burnup parameter F, the closer the color is to black. Accordingly, among the nodes indicated by G1 to G4 in FIG. 14, the color of the node indicated by G2 is the blackest.
[0110]
In the present embodiment, the color of each node obtained based on the burnup parameter F is set as the vertex color of the polygons 50 and 52. That is, the colors of the nodes indicated by G1, G3, and G4 are set as the three vertex colors of the polygon 50, and the color of each dot in the polygon 50 is obtained by interpolating these three vertex colors. Similarly, the colors of the nodes indicated by G1, G2, and G4 are set as the three vertex colors of the polygon 52, and the color of each dot in the polygon 52 is obtained by interpolating these three vertex colors.
[0111]
FIGS. 15A, 15B, 16A, 16B, 17A, and 17B show examples of cloth object images whose images gradually change according to the method of this embodiment. Show.
[0112]
The flame gradually burns and spreads from the portion indicated by F1 in FIG. Therefore, the color of the portion indicated by F1 gradually becomes black from the original color.
[0113]
In the portion indicated by F2 in FIG. 16A, the nodes are burned out by the flame, the virtual springs connected to the nodes become invalid, and the polygons including these nodes are gradually hidden. . Moreover, the whole cloth is gradually blackened.
[0114]
In F3 of FIG. 16B, the range of the burned-out node is further expanded. In FIGS. 17A and 17B, the portions indicated by F4, F5, and F6 are burned off and separated from the other portions. In addition, the color of the cloth becomes even blacker.
[0115]
As described above, according to the present embodiment, it is possible to generate an image that looks as if the cloth is really burning, and the virtual reality of the player can be greatly enhanced.
[0116]
3. Processing of this embodiment
Next, a detailed example of the processing of the present embodiment will be described with reference to the flowcharts of FIGS. 18, 19, 20, 21, and 22.
[0117]
First, cloth object setting (construction) processing is performed (step S1). Specifically, as shown in the flowchart of FIG. 19, first, an initial value is set to the burnup parameter F of each node (step S11).
[0118]
Here, F = 1000 indicates that the node is not burned, 0 <F <1000 indicates that the node is in a burning state, and F = 0 indicates that the node is burned out. In the initial state, since all the nodes are not burned, the burnup parameter F of all the nodes is set to 1000.
[0119]
Next, initial values are set for the remaining attribute data (see FIG. 5) other than the burnup parameter F of each node (step S12).
[0120]
Position pi, j  ← Constant (xi, j, Yi, j, Zi, j)
Speed vi, j  ← Constant (0.0, 0.0, 0.0)
Acceleration ai, j← Constant (0.0, 0.0, 0.0)
Mass Mi, j  ← Constant mi, j
Note that the position pi, j, Speed vi, j, Acceleration ai, jIs a vector.
[0121]
Next, the index of the connection node is set for all the virtual springs so that adjacent nodes are connected in a grid pattern (step S13).
[0122]
Next, a constant is substituted into the remaining parameters for each virtual spring (step S14).
[0123]
Tension TS    ← Constant tS
Drag DS    ← Constant dS
Static distance RS← Constant rS
As described above, the cloth object setting process ends.
[0124]
Next, as shown in FIG. 18, the drawing area (frame buffer or the like) is cleared and frame processing is started (step S2).
[0125]
Next, burnup processing (burn spread determination) is performed (step S3).
[0126]
More specifically, as shown in FIG. 20, the burnup parameter F of the node (i, j)i, jBut 0 <Fi, jIt is determined whether or not <1000 (step S21). And 0 <Fi, jIf <1000, it is randomly determined whether or not to burn the adjacent node of the node (step S22).
[0127]
If it is determined to burn, as shown in FIG. 23 (A), one node selected at random from the nodes (k, l) adjacent to the node (i, j) is selected, Burnup parameter F of the nodek, l1 is subtracted from (step S23). As a result, the burnup degree of the node is transmitted to the adjacent node.
[0128]
Fk, l← Fk, l-1
Here, (k, l) is a combination of all k, j such that k = i-1, i, i + 1, l = j-1, j, j + 1, as shown in FIG. Means.
[0129]
As described above, the burnup processing is completed.
[0130]
Next, as shown in FIG. 18, processing for applying wind and gravity forces to all nodes is performed according to the following equation (step S4).
[0131]
[Expression 1]
Figure 0004329964
[0132]
Next, binding force processing (binding force determination) is performed (step S5).
[0133]
More specifically, as shown in the flowchart of FIG. 21, first, the burnup parameters F of the two nodes A and B connected to the virtual springs.A, FBIt is determined whether any of these is 0 (step S31). And FA, FBIf any of these is 0, the virtual spring is invalidated as described in A3 of FIG. On the other hand, FA, FBIf both are not 0, a virtual spring force as shown in the following equation is applied to the two connected nodes A and B (step S32).
[0134]
[Expression 2]
Figure 0004329964
As described above, the binding force process ends.
[0135]
Next, as shown in FIG. 18, the position p (vector) is determined based on the acceleration a (vector) and the velocity v (vector) for all nodes (step S6).
[0136]
v ← v + a
p ← p + v
a ← 0
Next, a random number of nodes are selected from the nodes where the burnup F is 0 <F <1000, and flame particles are generated from the positions of the nodes as described in FIG. 9 (step S7). ). At this time, the flame strength IF of the flame particle is expressed by the following equation.
[0137]
[Equation 3]
Figure 0004329964
[0138]
Next, a cloth object drawing process is performed (step S8).
[0139]
More specifically, as shown in FIG. 22, first, four nodes (i, j), (i + 1, j), (i + 1, j + 1), and (i, j + 1) that form an adjacent quadrangle are selected. (Step S41).
[0140]
Next, in order to draw a polygon, a vertex position and a vertex color are determined using the position p and the burnup parameter F for each node (step S42).
[0141]
[Expression 4]
Figure 0004329964
[0142]
Next, if there is no node having the burnup parameter F = 0 in the nodes (i, j), (i + 1, j), (i + 1, j + 1), these three nodes are defined as vertices. The triangle polygon to be drawn is drawn (step S43). For example, in FIG. 23B, when there is no node with F = 0 in the nodes (i, j), (i + 1, j), (i + 1, j + 1), the polygon PL1 is drawn. The
[0143]
Next, if there is no node (i, j), (i + 1, j + 1), (i, j + 1) that has a burnup parameter F = 0, these three nodes are defined as vertices. The triangle polygon to be drawn is drawn (step S44). For example, in FIG. 23B, when there is no node with F = 0 in the nodes (i, j), (i + 1, j + 1), (i, j + 1), the polygon PL2 is drawn. The
[0144]
Next, it is determined whether at least one polygon is drawn using the current four nodes (i, j), (i + 1, j), (i + 1, j + 1), and (i, j + 1) (step S45). If drawn, the process proceeds to step S48, and if not drawn, the process proceeds to step S46. That is, if any of the polygons PL1 and PL2 in FIG. 23B is drawn, the process proceeds to step S48, and if neither is drawn, the process proceeds to step S46.
[0145]
In step S46, if there is no node having the burnup parameter F = 0 in the nodes (i, j), (i + 1, j), (i, j + 1), these three nodes are set as vertices. A triangle polygon is drawn. For example, in FIG. 23C, when there is no node where F = 0 among the nodes (i, j), (i + 1, j), (i, j + 1), the polygon PL3 is drawn. The
[0146]
Next, if there is no node (i + 1, j), (i + 1, j + 1), (i, j + 1) that has a burnup parameter F = 0, these three nodes are designated as vertices. The triangle polygon to be drawn is drawn (step S47). For example, in FIG. 23C, when there is no node with F = 0 among the nodes (i + 1, j), (i + 1, j + 1), (i, j + 1), the polygon PL4 is drawn. The
[0147]
The above process is repeated until all nodes (i, j) are finished (step S48).
[0148]
Note that the processing as shown in steps S43 to S47 is performed for the following reason.
[0149]
That is, in FIG. 23B, for example, when the burn-up parameter F of the node (i, j) is 0 (when burned out), the polygons PL1 and PL2 are not drawn by the processing of steps S43 and S44.
[0150]
However, even in such a case, in step S47, only the polygon PL4 is drawn (PL3 is not drawn), and a correct result can be obtained.
[0151]
Similarly, in FIG. 23B, for example, when the burnup parameter F of the node (i + 1, j + 1) is 0, the polygons PL1 and PL2 are not drawn by the processing in steps S43 and S44.
[0152]
However, even in such a case, in step S46, only the polygon PL3 is drawn (PL4 is not drawn), and a correct result can be obtained.
[0153]
As described above, the cloth object drawing process is completed.
[0154]
Finally, as shown in FIG. 18, the drawn cloth object is displayed on the display unit, and the frame processing is ended (step S9).
[0155]
4). Hardware configuration
Next, an example of a hardware configuration capable of realizing the present embodiment will be described with reference to FIG.
[0156]
The main processor 900 operates based on a program stored in the CD 982 (information storage medium), a program transferred via the communication interface 990, or a program stored in the ROM 950 (one of information storage media). Various processes such as processing, image processing, and sound processing are executed.
[0157]
The coprocessor 902 assists the processing of the main processor 900, has a product-sum calculator and a divider capable of high-speed parallel calculation, and executes matrix calculation (vector calculation) at high speed. For example, if a physical simulation for moving or moving an object requires processing such as matrix operation, a program operating on the main processor 900 instructs (requests) the processing to the coprocessor 902. )
[0158]
The geometry processor 904 performs geometry processing such as coordinate transformation, perspective transformation, light source calculation, and curved surface generation, has a product-sum calculator and a divider capable of high-speed parallel computation, and performs matrix computation (vector computation). Run fast. For example, when processing such as coordinate transformation, perspective transformation, and light source calculation is performed, a program operating on the main processor 900 instructs the geometry processor 904 to perform the processing.
[0159]
The data decompression processor 906 performs a decoding process for decompressing the compressed image data and sound data, and a process for accelerating the decoding process of the main processor 900. Thereby, a moving image compressed by a given image compression method can be displayed on an opening screen, an intermission screen, an ending screen, a game screen, or the like. Note that the image data and sound data to be decoded are stored in the ROM 950 and the CD 982 or transferred from the outside via the communication interface 990.
[0160]
The drawing processor 910 performs drawing (rendering) processing of an object composed of primitive surfaces such as polygons and curved surfaces at high speed. When drawing an object, the main processor 900 uses the function of the DMA controller 970 to pass the object data to the drawing processor 910 and transfer the texture to the texture storage unit 924 if necessary. Then, the rendering processor 910 renders the object in the frame buffer 922 at high speed while performing hidden surface removal using a Z buffer or the like based on the object data and texture. The drawing processor 910 can also perform α blending (translucent processing), depth cueing, mip mapping, fog processing, trilinear filtering, anti-aliasing, shading processing, and the like. When an image for one frame is written in the frame buffer 922, the image is displayed on the display 912.
[0161]
The sound processor 930 includes a multi-channel ADPCM sound source and the like, and generates high-quality game sounds such as BGM, sound effects, and sounds. The generated game sound is output from the speaker 932.
[0162]
Operation data from the game controller 942, save data from the memory card 944, and personal data are transferred via the serial interface 940.
[0163]
The ROM 950 stores system programs and the like. In the case of an arcade game system, the ROM 950 functions as an information storage medium, and various programs are stored in the ROM 950. A hard disk may be used instead of the ROM 950.
[0164]
The RAM 960 is used as a work area for various processors.
[0165]
The DMA controller 970 controls DMA transfer between the processor and memory (RAM, VRAM, ROM, etc.).
[0166]
The CD drive 980 drives a CD 982 (information storage medium) in which programs, image data, sound data, and the like are stored, and enables access to these programs and data.
[0167]
The communication interface 990 is an interface for transferring data to and from the outside via a network. In this case, as a network connected to the communication interface 990, a communication line (analog telephone line, ISDN), a high-speed serial bus, or the like can be considered. By using a communication line, data transfer via the Internet becomes possible. Further, by using the high-speed serial bus, data transfer with other game systems becomes possible.
[0168]
All of the means of the present invention may be executed by hardware alone, or may be executed only by a program stored in an information storage medium or a program distributed via a communication interface. Alternatively, it may be executed by both hardware and a program.
[0169]
When each means of the present invention is executed by both hardware and a program, a program for executing each means of the present invention using hardware is stored in the information storage medium. Become. More specifically, the program instructs each processor 902, 904, 906, 910, 930, etc., which is hardware, and passes data if necessary. Each processor 902, 904, 906, 910, 930, etc. executes each means of the present invention based on the instruction and the passed data.
[0170]
FIG. 25A shows an example in which the present embodiment is applied to an arcade game system. The player enjoys the game by operating the lever 1102, the button 1104, and the like while viewing the game image displayed on the display 1100. Various processors and various memories are mounted on the built-in system board (circuit board) 1106. Information (program or data) for executing each means of the present invention is stored in a memory 1108 which is an information storage medium on the system board 1106. Hereinafter, this information is referred to as storage information.
[0171]
FIG. 25B shows an example in which the present embodiment is applied to a home game system. The player enjoys the game by operating the game controllers 1202 and 1204 while viewing the game image displayed on the display 1200. In this case, the stored information is stored in a CD 1206 or a memory card 1208, 1209, which is an information storage medium that is detachable from the main system.
[0172]
FIG. 25C shows a host device 1300 and terminals 1304-1 to 1304-n connected to the host device 1300 via a network 1302 (a small-scale network such as a LAN or a wide area network such as the Internet). An example of applying this embodiment to a system including In this case, the storage information is stored in an information storage medium 1306 such as a magnetic disk device, a magnetic tape device, or a memory that can be controlled by the host device 1300, for example. When the terminals 1304-1 to 1304-n can generate game images and game sounds stand-alone, the host device 1300 receives a game program and the like for generating game images and game sounds from the terminal 1304-. 1 to 1304-n. On the other hand, if it cannot be generated stand-alone, the host device 1300 generates a game image and a game sound, which is transmitted to the terminals 1304-1 to 1304-n and output at the terminal.
[0173]
In the case of the configuration shown in FIG. 25C, each unit of the present invention may be executed in a distributed manner between the host device (server) and the terminal. The storage information for executing each means of the present invention may be distributed and stored in the information storage medium of the host device (server) and the information storage medium of the terminal.
[0174]
The terminal connected to the network may be a home game system or an arcade game system. A portable information storage device capable of exchanging information with the arcade game system and exchanging information with the arcade game system when the arcade game system is connected to the network. It is desirable to use (memory card, portable game device).
[0175]
The present invention is not limited to that described in the above embodiment, and various modifications can be made.
[0176]
For example, in the invention according to the dependent claims of the present invention, a part of the constituent features of the dependent claims can be omitted. Moreover, the principal part of the invention according to one independent claim of the present invention can be made dependent on another independent claim.
[0177]
Moreover, although this embodiment mainly demonstrated the case where this invention was applied to the cloth object, the object to which this invention is applied is not limited to a cloth object. That is, any object whose shape is specified by a plurality of nodes in which adjacent nodes are connected by a binding force may be used. For example, the present invention can be applied to a paper object, a steel plate object, a rock object, and the like.
[0178]
Moreover, although this embodiment demonstrated the case where a node becomes invalid because a node burns out, this invention is applicable also, for example, when a node becomes invalid by destruction by a blow etc.
[0179]
Further, the data structure of the object is particularly preferably the structure described with reference to FIGS. 5 and 6, but is not limited thereto.
[0180]
In the present embodiment, the case where the node state parameter is a burnup parameter has been described. However, the node state parameter of the present invention is a parameter that represents another state of the node (temperature, humidity, intensity, luminous intensity, etc.). May be.
[0181]
Further, the display object represented by the particles is not limited to the flame, and various display objects whose shapes are deformed in real time such as an explosion can be expressed.
[0182]
In addition, the particles are desirably expressed by 3D sprites as shown in FIG. 10, but may be expressed by solid objects, lines, and points.
[0183]
The present invention can also be applied to various games (such as fighting games, shooting games, robot fighting games, sports games, competitive games, role playing games, music playing games, dance games, etc.).
[0184]
The present invention is also applicable to various game systems (image generation systems) such as a business game system, a home game system, a large attraction system in which a large number of players participate, a simulator, a multimedia terminal, and a system board for generating game images. Applicable.
[Brief description of the drawings]
FIG. 1 is an example of a block diagram of a game system according to the present embodiment.
FIGS. 2A and 2B are examples of game images generated according to the present embodiment.
FIGS. 3A and 3B are also examples of game images generated according to the present embodiment.
FIG. 4 is a diagram for explaining a technique for disabling a binding force of a burned-out node and hiding a polygon having the node as a vertex;
FIG. 5 is a diagram illustrating an example of a data structure of a node.
FIG. 6 is a diagram illustrating an example of a data structure of a virtual spring.
FIGS. 7A and 7B are diagrams for explaining a method of realizing a burn-off expression of cloth using a burnup (node state) parameter.
FIGS. 8A and 8B are also diagrams for explaining a method for realizing a burn-off expression of cloth using a burnup parameter.
FIG. 9 is a diagram for explaining a method of generating particles based on a burnup parameter.
FIG. 10 is a diagram for explaining a method of expressing particles by 3D sprites.
FIGS. 11A and 11B are diagrams for explaining flame particles. FIG.
FIGS. 12A and 12B are also diagrams for explaining flame particles. FIG.
FIGS. 13A and 13B are also diagrams for explaining flame particles. FIG.
FIG. 14 is a diagram for explaining a method of changing an image near a node based on a burnup parameter.
FIGS. 15A and 15B are examples of cloth object images in which the image gradually changes according to the method of the present embodiment.
FIGS. 16A and 16B are also examples of a wire frame image of a cloth object whose image gradually changes according to the method of the present embodiment.
FIGS. 17A and 17B are also examples of a wire frame image of a cloth object whose image gradually changes by the method of the present embodiment.
FIG. 18 is a flowchart showing a detailed processing example of the present embodiment.
FIG. 19 is a flowchart showing a detailed processing example of the present embodiment.
FIG. 20 is a flowchart illustrating a detailed processing example of the present embodiment.
FIG. 21 is a flowchart showing a detailed processing example of the present embodiment.
FIG. 22 is a flowchart showing a detailed processing example of the present embodiment.
FIGS. 23A, 23B, and 23C are diagrams for explaining a detailed processing example of the present embodiment.
FIG. 24 is a diagram illustrating an example of a hardware configuration capable of realizing the present embodiment.
FIGS. 25A, 25B, and 25C are diagrams illustrating examples of various types of systems to which this embodiment is applied.
[Explanation of symbols]
100 processor
102 Object space setting part
104 Node state processing section
106 Binding force processing section
108 Node movement processing unit
110 Particle processing unit
112 Drawing processing unit
160 Operation unit
170 Storage unit
174 Drawing area
180 Information storage medium
190 Display
192 sound output section
194 Portable information storage device
196 Communication Department

Claims (28)

画像生成を行うゲームシステムであって、
隣り合うノード同士が束縛力により連結される複数のノードにより形状が特定されるオブジェクトを、オブジェクト空間内に設定する手段と、
前記複数のノードの中のあるノードが無効ノードになったと判断した場合に、該無効ノードと該無効ノードの隣接ノードとを連結する束縛力を無効にする手段と、
オブジェクト空間内の所与の視点での画像を生成する手段と、
を含むことを特徴とするゲームシステム。
A game system for generating images,
Means for setting in the object space an object whose shape is specified by a plurality of nodes in which adjacent nodes are connected by a binding force;
Means for invalidating a binding force for linking the invalid node and an adjacent node of the invalid node when it is determined that a node of the plurality of nodes has become an invalid node;
Means for generating an image at a given viewpoint in object space;
A game system comprising:
画像生成を行うゲームシステムであって、
隣り合うノード同士が束縛力により連結される複数のノードにより形状が特定されるオブジェクトを、オブジェクト空間内に設定する手段と、
前記複数のノードの中のあるノードが無効ノードになったと判断した場合に、オブジェクトを構成するプリミティブのうち、該無効ノードを定義点として含むプリミティブの描画を省略する手段と、
オブジェクト空間内の所与の視点での画像を生成する手段と、
を含むことを特徴とするゲームシステム。
A game system for generating images,
Means for setting in the object space an object whose shape is specified by a plurality of nodes in which adjacent nodes are connected by a binding force;
Means for omitting drawing of a primitive that includes an invalid node as a definition point among primitives constituting an object when it is determined that a node of the plurality of nodes has become an invalid node;
Means for generating an image at a given viewpoint in object space;
A game system comprising:
請求項1又は2において、
ノードがアトリビュートデータとして有するノード状態パラメータに基づいて、該ノードが無効ノードになったか否かが判断されることを特徴とするゲームシステム。
In claim 1 or 2,
A game system, wherein it is determined whether or not a node has become an invalid node based on a node state parameter that the node has as attribute data.
請求項1乃至3のいずれかにおいて、
ノードがアトリビュートデータとして有するノード状態パラメータに基づいて、該ノードの隣接ノードに対して該ノードのノード状態を伝達するノード状態処理手段を含むことを特徴とするゲームシステム。
In any one of Claims 1 thru | or 3,
A game system comprising node state processing means for transmitting a node state of a node to an adjacent node of the node based on a node state parameter that the node has as attribute data.
画像生成を行うゲームシステムであって、
隣り合うノード同士が束縛力により連結される複数のノードにより形状が特定されるオブジェクトを、オブジェクト空間内に設定する手段と、
ノードがアトリビュートデータとして有するノード状態パラメータに基づいて、該ノードからパーティクルを発生するパーティクル処理手段と、
オブジェクト空間内の所与の視点での画像を生成する手段と、
を含むことを特徴とするゲームシステム。
A game system for generating images,
Means for setting in the object space an object whose shape is specified by a plurality of nodes in which adjacent nodes are connected by a binding force;
A particle processing means for generating particles from the node based on a node state parameter which the node has as attribute data;
Means for generating an image at a given viewpoint in object space;
A game system comprising:
請求項において、
前記パーティクル処理手段が、
ノードがアトリビュートデータとして有するノード状態パラメータに基づいて、該ノードからパーティクルを発生するか否かを判断し、パーティクルを発生すると判断した場合には、該ノードのノード状態パラメータに基づいてパーティクルのアトリビュートデータを決めることを特徴とするゲームシステム。
In claim 5 ,
The particle processing means is
Based on the node state parameter that the node has as attribute data, it is determined whether or not particles are generated from the node. If it is determined that particles are generated, the attribute data of the particles is determined based on the node state parameter of the node. A game system characterized by deciding.
請求項3乃至のいずれかにおいて、
前記ノード状態パラメータが、各ノードの燃焼度を表すパラメータであることを特徴とするゲームシステム。
In any one of Claims 3 thru | or 6 .
The game system, wherein the node state parameter is a parameter representing a burnup degree of each node.
画像生成を行うゲームシステムであって、
隣り合うノード同士が束縛力により連結される複数のノードにより形状が特定されるオブジェクトを、オブジェクト空間内に設定する手段と、
ノードがアトリビュートデータとして有するノード状態パラメータに基づいて、該ノードの隣接ノードに対して該ノードのノード状態を伝達するノード状態処理手段と、
オブジェクト空間内の所与の視点での画像を生成する手段とを含み、
前記ノード状態パラメータが、各ノードの燃焼度を表すパラメータであることを特徴とするゲームシステム。
A game system for generating images,
Means for setting in the object space an object whose shape is specified by a plurality of nodes in which adjacent nodes are connected by a binding force;
Node state processing means for transmitting a node state of the node to an adjacent node of the node based on a node state parameter which the node has as attribute data;
And means for generating an image at a given viewpoint in the object space seen including,
The game system , wherein the node state parameter is a parameter representing a burnup degree of each node .
請求項4又はにおいて、
前記ノード状態処理手段が、
ノードがアトリビュートデータとして有するノード状態パラメータに基づいて、該ノードの隣接ノードに対して該ノードのノード状態を伝達するか否かを判断し、ノード状態を伝達すると判断した場合には、ノード状態が伝達された隣接ノードのノード状態パラメータを変化させることを特徴とするゲームシステム。
In claim 4 or 8 ,
The node state processing means is
Based on the node state parameter that the node has as attribute data, it is determined whether or not to transmit the node state of the node to the adjacent node of the node. A game system characterized by changing a node state parameter of a transmitted adjacent node.
画像生成を行うゲームシステムであって、
隣り合うノード同士が束縛力により連結される複数のノードにより形状が特定されるオブジェクトを、オブジェクト空間内に設定する手段と、
ノードがアトリビュートデータとして有するノード状態パラメータに基づいて、該ノードの付近でのオブジェクトの画像を変化させる手段と、
オブジェクト空間内の所与の視点での画像を生成する手段とを含み、
前記ノード状態パラメータが、各ノードの燃焼度を表すパラメータであることを特徴とするゲームシステム。
A game system for generating images,
Means for setting in the object space an object whose shape is specified by a plurality of nodes in which adjacent nodes are connected by a binding force;
Means for changing an image of an object near the node based on a node state parameter which the node has as attribute data;
And means for generating an image at a given viewpoint in the object space seen including,
The game system , wherein the node state parameter is a parameter representing a burnup degree of each node .
請求項10において、
ノードがアトリビュートデータとして有するノード状態パラメータに基づいて、オブジェクトを構成するプリミティブのうち、該ノードを定義点として含むプリミティブの画像を変化させることを特徴とするゲームシステム。
In claim 10 ,
A game system characterized in that, based on a node state parameter that a node has as attribute data, an image of a primitive that includes the node as a definition point among primitives constituting the object is changed.
請求項3乃至11のいずれかにおいて、
前記ノード状態パラメータが初期値である第1の値から変化した場合に、該ノードの状態変化が開始したと判断され、前記ノード状態パラメータが第2の値になった場合に、該ノードの状態変化が終了したと判断されることを特徴とするゲームシステム。
In any of claims 3 to 11,
When the node state parameter changes from the first value which is the initial value, it is determined that the state change of the node has started, and when the node state parameter becomes the second value, the state of the node A game system, characterized in that it is determined that the change has ended.
請求項1乃至12のいずれかにおいて、
各ノードがアトリビュートデータとして、各ノードの位置、速度、加速度を有することを特徴とするゲームシステム。
In any one of Claims 1 to 12,
A game system characterized in that each node has the position, velocity, and acceleration of each node as attribute data.
請求項1乃至13のいずれかにおいて、
前記複数のノードが格子状に配列されるノードであることを特徴とするゲームシステム。
In any one of Claims 1 thru | or 13.
A game system, wherein the plurality of nodes are arranged in a grid pattern.
コンピュータ読み取り可能な情報記憶媒体であって、
隣り合うノード同士が束縛力により連結される複数のノードにより形状が特定されるオブジェクトを、オブジェクト空間内に設定する手段と、
前記複数のノードの中のあるノードが無効ノードになったと判断した場合に、該無効ノードと該無効ノードの隣接ノードとを連結する束縛力を無効にする手段と、
オブジェクト空間内の所与の視点での画像を生成する手段としてコンピュータを機能させるためのプログラムを記憶したことを特徴とする情報記憶媒体。
A computer- readable information storage medium,
Means for setting in the object space an object whose shape is specified by a plurality of nodes in which adjacent nodes are connected by a binding force;
Means for invalidating a binding force for linking the invalid node and an adjacent node of the invalid node when it is determined that a node of the plurality of nodes has become an invalid node;
Information storage medium characterized by storing a program for causing a computer to function as a means for generating an image at a given viewpoint in the object space.
コンピュータ読み取り可能な情報記憶媒体であって、
隣り合うノード同士が束縛力により連結される複数のノードにより形状が特定されるオブジェクトを、オブジェクト空間内に設定する手段と、
前記複数のノードの中のあるノードが無効ノードになったと判断した場合に、オブジェクトを構成するプリミティブのうち、該無効ノードを定義点として含むプリミティブの描画を省略する手段と、
オブジェクト空間内の所与の視点での画像を生成する手段としてコンピュータを機能させるためのプログラムを記憶したことを特徴とする情報記憶媒体。
A computer- readable information storage medium,
Means for setting in the object space an object whose shape is specified by a plurality of nodes in which adjacent nodes are connected by a binding force;
Means for omitting drawing of a primitive that includes an invalid node as a definition point among primitives constituting an object when it is determined that a node of the plurality of nodes has become an invalid node;
Information storage medium characterized by storing a program for causing a computer to function as a means for generating an image at a given viewpoint in the object space.
請求項15又は16において、
ノードがアトリビュートデータとして有するノード状態パラメータに基づいて、該ノードが無効ノードになったか否かが判断されることを特徴とする情報記憶媒体。
In claim 15 or 16,
An information storage medium characterized by determining whether or not a node has become an invalid node based on a node state parameter that the node has as attribute data.
請求項15乃至17のいずれかにおいて、
ノードがアトリビュートデータとして有するノード状態パラメータに基づいて、該ノードの隣接ノードに対して該ノードのノード状態を伝達するノード状態処理手段として更にコンピュータを機能させるためのプログラムを記憶したことを特徴とする情報記憶媒体。
In any of claims 15 to 17,
A program for further causing a computer to function as node state processing means for transmitting a node state of a node to an adjacent node of the node based on a node state parameter that the node has as attribute data is stored. Information storage medium.
コンピュータ読み取り可能な情報記憶媒体であって、
隣り合うノード同士が束縛力により連結される複数のノードにより形状が特定されるオブジェクトを、オブジェクト空間内に設定する手段と、
ノードがアトリビュートデータとして有するノード状態パラメータに基づいて、該ノードからパーティクルを発生するパーティクル処理手段と、
オブジェクト空間内の所与の視点での画像を生成する手段としてコンピュータを機能させるためのプログラムを記憶したことを特徴とする情報記憶媒体。
A computer- readable information storage medium,
Means for setting in the object space an object whose shape is specified by a plurality of nodes in which adjacent nodes are connected by a binding force;
A particle processing means for generating particles from the node based on a node state parameter which the node has as attribute data;
Information storage medium characterized by storing a program for causing a computer to function as a means for generating an image at a given viewpoint in the object space.
請求項19において、
前記パーティクル処理手段が、
ノードがアトリビュートデータとして有するノード状態パラメータに基づいて、該ノードからパーティクルを発生するか否かを判断し、パーティクルを発生すると判断した場合には、該ノードのノード状態パラメータに基づいてパーティクルのアトリビュートデータを決めることを特徴とする情報記憶媒体。
In claim 19 ,
The particle processing means is
Based on the node state parameter that the node has as attribute data, it is determined whether or not particles are generated from the node. If it is determined that particles are generated, the attribute data of the particles is determined based on the node state parameter of the node. An information storage medium characterized by determining
請求項17乃至20のいずれかにおいて、
前記ノード状態パラメータが、各ノードの燃焼度を表すパラメータであることを特徴とする情報記憶媒体。
In any one of claims 17 to 20 ,
The information storage medium characterized in that the node state parameter is a parameter representing a burnup degree of each node.
コンピュータ読み取り可能な情報記憶媒体であって、
隣り合うノード同士が束縛力により連結される複数のノードにより形状が特定されるオブジェクトを、オブジェクト空間内に設定する手段と、
ノードがアトリビュートデータとして有するノード状態パラメータに基づいて、該ノードの隣接ノードに対して該ノードのノード状態を伝達するノード状態処理手段と、
オブジェクト空間内の所与の視点での画像を生成する手段としてコンピュータを機能させるためのプログラムを記憶し、
前記ノード状態パラメータが、各ノードの燃焼度を表すパラメータであることを特徴とする情報記憶媒体。
A computer- readable information storage medium,
Means for setting in the object space an object whose shape is specified by a plurality of nodes in which adjacent nodes are connected by a binding force;
Node state processing means for transmitting a node state of the node to an adjacent node of the node based on a node state parameter which the node has as attribute data;
Storing a program for causing a computer to function as a means for generating an image at a given viewpoint in the object space,
The information storage medium characterized in that the node state parameter is a parameter representing a burnup degree of each node .
請求項18又は22において、
前記ノード状態処理手段が、
ノードがアトリビュートデータとして有するノード状態パラメータに基づいて、該ノードの隣接ノードに対して該ノードのノード状態を伝達するか否かを判断し、ノード状態を伝達すると判断した場合には、ノード状態が伝達された隣接ノードのノード状態パラメータを変化させることを特徴とする情報記憶媒体。
In claim 18 or 22 ,
The node state processing means is
Based on the node state parameter that the node has as attribute data, it is determined whether or not to transmit the node state of the node to the adjacent node of the node. An information storage medium characterized by changing a node state parameter of a transmitted adjacent node.
コンピュータ読み取り可能な情報記憶媒体であって、
隣り合うノード同士が束縛力により連結される複数のノードにより形状が特定されるオブジェクトを、オブジェクト空間内に設定する手段と、
ノードがアトリビュートデータとして有するノード状態パラメータに基づいて、該ノードの付近でのオブジェクトの画像を変化させる手段と、
オブジェクト空間内の所与の視点での画像を生成する手段としてコンピュータを機能させるためのプログラムを記憶し、
前記ノード状態パラメータが、各ノードの燃焼度を表すパラメータであることを特徴とする情報記憶媒体。
A computer- readable information storage medium,
Means for setting in the object space an object whose shape is specified by a plurality of nodes in which adjacent nodes are connected by a binding force;
Means for changing an image of an object near the node based on a node state parameter which the node has as attribute data;
Storing a program for causing a computer to function as a means for generating an image at a given viewpoint in the object space,
The information storage medium characterized in that the node state parameter is a parameter representing a burnup degree of each node .
請求項24において、
ノードがアトリビュートデータとして有するノード状態パラメータに基づいて、オブジェクトを構成するプリミティブのうち、該ノードを定義点として含むプリミティブの画像を変化させることを特徴とする情報記憶媒体。
In claim 24 ,
An information storage medium characterized in that, based on a node state parameter that a node has as attribute data, an image of a primitive that includes the node as a definition point among primitives constituting the object is changed.
請求項17乃至25のいずれかにおいて、
前記ノード状態パラメータが初期値である第1の値から変化した場合に、該ノードの状態変化が開始したと判断され、前記ノード状態パラメータが第2の値になった場合に、該ノードの状態変化が終了したと判断されることを特徴とする情報記憶媒体。
In any one of Claims 17 thru | or 25.
When the node state parameter changes from the first value which is the initial value, it is determined that the state change of the node has started, and when the node state parameter becomes the second value, the state of the node An information storage medium characterized in that it is determined that the change has ended.
請求項15乃至26のいずれかにおいて、
各ノードがアトリビュートデータとして、各ノードの位置、速度、加速度を有することを特徴とする情報記憶媒体。
In any of claims 15 to 26,
An information storage medium characterized in that each node has the position, velocity, and acceleration of each node as attribute data.
請求項15乃至27のいずれかにおいて、
前記複数のノードが格子状に配列されるノードであることを特徴とする情報記憶媒体。
A device according to any one of claims 15 to 27.
An information storage medium, wherein the plurality of nodes are nodes arranged in a lattice pattern.
JP2000059131A 2000-03-03 2000-03-03 GAME SYSTEM AND INFORMATION STORAGE MEDIUM Expired - Lifetime JP4329964B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000059131A JP4329964B2 (en) 2000-03-03 2000-03-03 GAME SYSTEM AND INFORMATION STORAGE MEDIUM

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000059131A JP4329964B2 (en) 2000-03-03 2000-03-03 GAME SYSTEM AND INFORMATION STORAGE MEDIUM

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2009119622A Division JP4729116B2 (en) 2009-05-18 2009-05-18 GAME SYSTEM AND INFORMATION STORAGE MEDIUM

Publications (2)

Publication Number Publication Date
JP2001250124A JP2001250124A (en) 2001-09-14
JP4329964B2 true JP4329964B2 (en) 2009-09-09

Family

ID=18579626

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000059131A Expired - Lifetime JP4329964B2 (en) 2000-03-03 2000-03-03 GAME SYSTEM AND INFORMATION STORAGE MEDIUM

Country Status (1)

Country Link
JP (1) JP4329964B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5577014B2 (en) * 2007-06-07 2014-08-20 株式会社タイトー GAME DEVICE, GAME PROGRAM, AND OBJECT CONTROL METHOD
JP5322717B2 (en) * 2009-03-17 2013-10-23 東芝電波プロダクツ株式会社 Snowfall phenomenon display method

Also Published As

Publication number Publication date
JP2001250124A (en) 2001-09-14

Similar Documents

Publication Publication Date Title
JP4771821B2 (en) Program, information storage medium, and image generation system
JP3286633B2 (en) Image creation method, storage medium, and program execution device
JP2002042156A (en) Game system and information storage medium
JP4412715B2 (en) Program, information storage medium, and image generation system
JP2001319244A (en) Game system and information storage medium
JP2009129167A (en) Program, information storage medium, and image generation system
JP4329964B2 (en) GAME SYSTEM AND INFORMATION STORAGE MEDIUM
JP3420985B2 (en) GAME SYSTEM AND INFORMATION STORAGE MEDIUM
JP4245356B2 (en) GAME SYSTEM AND INFORMATION STORAGE MEDIUM
JP3377491B2 (en) GAME SYSTEM AND INFORMATION STORAGE MEDIUM
JP4651204B2 (en) Image generation system, program, and information storage medium
JP2010055131A (en) Program, information storage medium, and image generation system
JP4729116B2 (en) GAME SYSTEM AND INFORMATION STORAGE MEDIUM
JP4544555B2 (en) GAME SYSTEM AND INFORMATION STORAGE MEDIUM
JP4458607B2 (en) GAME SYSTEM AND INFORMATION STORAGE MEDIUM
JP2000102675A (en) Object display, and storage medium readable out with computer and memorizing game system and game program
JP3269813B2 (en) Image generation system and information storage medium
JP4592039B2 (en) GAME SYSTEM AND INFORMATION STORAGE MEDIUM
JP4592043B2 (en) Image generation system, program, and information storage medium
JP4592042B2 (en) Image generation system, program, and information storage medium
JP2002216165A (en) Image generation system, program and information storage medium
JP4632521B2 (en) GAME SYSTEM AND INFORMATION STORAGE MEDIUM
JP4450535B2 (en) Image generation system and information storage medium
JP4530312B2 (en) GAME SYSTEM AND INFORMATION STORAGE MEDIUM
JP4247856B2 (en) Image generation system and information storage medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070205

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090318

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090518

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090610

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090611

R150 Certificate of patent or registration of utility model

Ref document number: 4329964

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120626

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120626

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120626

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130626

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130626

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R370 Written measure of declining of transfer procedure

Free format text: JAPANESE INTERMEDIATE CODE: R370

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term