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

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

Info

Publication number
JP2003091738A
JP2003091738A JP2001282146A JP2001282146A JP2003091738A JP 2003091738 A JP2003091738 A JP 2003091738A JP 2001282146 A JP2001282146 A JP 2001282146A JP 2001282146 A JP2001282146 A JP 2001282146A JP 2003091738 A JP2003091738 A JP 2003091738A
Authority
JP
Japan
Prior art keywords
primitive
flow field
information
object space
field
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.)
Withdrawn
Application number
JP2001282146A
Other languages
English (en)
Inventor
Hidetoshi Aoyanagi
秀俊 青柳
Yuichi Hiraiwa
祐一 平岩
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
Original Assignee
Namco Ltd
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 filed Critical Namco Ltd
Priority to JP2001282146A priority Critical patent/JP2003091738A/ja
Publication of JP2003091738A publication Critical patent/JP2003091738A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Processing Or Creating Images (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

(57)【要約】 【課題】 流体シミュレーションによって得られた流れ
場を反映させたオブジェクト画像生成をリアルタイムに
処理可能な画像生成システム、プログラム及び情報記憶
媒体を提供する。 【解決手段】 流体シミュレーションにより得られた2
次元の流れ場HFの情報として各格子点について求めら
れた流れ場情報(例えば速度ベクトル)を用いて、この
流れ場HFの中のプリミティブ(オブジェクトの構成点
及び制御点を含む)の位置や、プリミティブに付随する
情報(例えば、色(輝度)、α値等)を求める。このプ
リミティブを、3次元のオブジェクト空間に配置して、
所与の視点(仮想カメラ)VCから見えるオブジェクト
画像を生成する。プリミティブとしては、パーティクル
・プリミティブを用い、各パーティクルの位置にスプラ
イトポリゴンを配置するようにしてもよい。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、画像生成システ
ム、プログラム及び情報記憶媒体に関する。
【0002】
【背景技術及び発明が解決しようとする課題】従来よ
り、テクスチャ・アニメーション等の技法を用いて水の
動き等の自然現象を擬似的に表現することが行われてい
る。しかしながら、この種の技法では、表現が単調にな
って、リアルな動きを表現することができなかった。
【0003】これに対して、このような自然現象をリア
ルに表現するものとして、流体シミュレーションにより
求めた流れ場(流体場、速度場、ベクトル場)を、オブ
ジェクトの動作に反映させる手法がある。
【0004】しかしながら、従来の流体シミュレーショ
ンは処理負荷が重く、最終的な目的が流れ場の動作を可
視化することにあるため、リアルタイム処理が行われる
ことはなかった。そのため、インタラクティブに発生す
る外因を反映させた表現を行うことはなく、例えばリア
ルタイム処理が要求されるゲーム処理において、流体シ
ミュレーションによる流れ場の動作を反映させた表現を
することができなかった。
【0005】本発明は、以上のような課題に鑑みてなさ
れたものであり、その目的とするところは、流体シミュ
レーションによって得られた流れ場を反映させたオブジ
ェクト画像の生成をリアルタイムに処理可能な画像生成
システム、プログラム及び情報記憶媒体を提供すること
にある。
【0006】
【課題を解決するための手段】上記課題を解決するため
に、本発明は、画像生成を行う画像生成システムであっ
て、2次元のシミュレーション空間の各点での流体の動
作又は状態を示す流れ場情報をシミュレーション演算に
より求めるシミュレーション演算手段と、前記流れ場情
報を用いて、3次元のオブジェクト空間に配置されるプ
リミティブの位置及び前記プリミティブに関連付けられ
る情報のうち少なくとも1つを求めて該プリミティブに
反映させるプリミティブ処理手段と、前記オブジェクト
空間の所与の視点から見える前記プリミティブの画像を
生成する手段とを含むことを特徴とする。また本発明に
係るプログラムは、上記手段としてコンピュータを機能
させることを特徴とする。また本発明に係る情報記憶媒
体は、コンピュータにより読み取り可能な情報記憶媒体
であって、上記手段としてコンピュータを機能させるプ
ログラムを記憶することを特徴とする。
【0007】ここで、流れ場とは、例えば外力に対して
形状を変化させて流動する液体や気体等の流体の静止状
態や運動状態を示す物理量が空間的に分布している領域
をいう。この流れ場の形状には限定されない。
【0008】また、流体の動作又は状態を示す流れ場情
報とは、流体の動作等を示す速度ベクトルや、加速度ベ
クトル、温度変化などの流れ場の各点での物理量をい
う。なお、この流れ場情報には、上記物理量についての
流れ場の情報に基づいて変化する情報(対象物に適用す
るために、上記物理量についての流れ場の情報に基づい
て演算した結果であって、例えば位置情報、速度情報、
温度情報、物理量など)も含むことができる。
【0009】また、オブジェクト空間とは、例えば定義
点(ポリゴンの頂点或いは自由曲面の制御点など)によ
り形状が特定されるオブジェクト(プリミティブ)が配
置される仮想的な3次元空間をいう。
【0010】また、プリミティブに関連付けられる情報
とは、プリミティブごとに付与される色(輝度)情報
や、透明度情報などをいう。
【0011】また、プリミティブに反映させるとは、求
めた位置に該プリミティブの配置や、当該プリミティブ
の構成点に付与される色情報の変更等をいう。
【0012】本発明によれば、2次元のシミュレーショ
ン空間の各点での流体の動作又は状態を示す流れ場情報
をシミュレーション演算により求め、その流れ場情報を
用いてプリミティブの位置や、プリミティブに関連付け
られる情報を求めてオブジェクト空間に配置するように
したので、リアルな自然現象を表現するための流体シミ
ュレーションについて3次元のシミュレーション空間で
行うよりも格段に処理負荷を軽減することができる。し
たがって、インタラクティブに発生する外因を加えて、
新たな流れ場をリアルタイムに生成することができるの
で、表現性を損なうことなく、流れ場に基づいて生成さ
れるリアルな画像を生成することができるようになる。
【0013】また本発明に係る画像生成システム、プロ
グラム及び情報記憶媒体は、前記プリミティブ処理手段
は、前記流れ場情報を用いて、前記オブジェクト空間に
配置されるプリミティブの構成点又は制御点の位置、及
び前記構成点又は制御点に関連付けられる情報のうち少
なくとも1つを求めて該プリミティブに反映させること
を特徴とする。
【0014】ここで、プリミティブの構成点とは、例え
ばプリミティブの定義点(例えば頂点)をいい、プリミ
ティブの制御点とは、例えば自由曲面の制御点をいう。
また、プリミティブの構成点の位置とは、例えばプリミ
ティブの頂点又は自由曲面の構成点の位置座標をいい、
プリミティブの制御点の位置とは、例えば自由曲面の制
御点の位置座標をいう。
【0015】また、プリミティブの構成点に関連付けら
れる情報とは、例えばプリミティブの頂点ごとに付与さ
れる色情報や半透明情報をいい、プリミティブの制御点
に関連付けられる情報とは、例えば自由曲面の制御点ご
とに付与される重みなどをいう。
【0016】本発明によれば、プリミティブの構成点の
位置、自由曲面の構成点又は制御点の位置、又は状態
(色や透明度などのプリミティブの構成点又は制御点に
関連付けられる情報にしたがって決まる各種状態)の変
化を、2次元のシミュレーション空間におけるシミュレ
ーション演算により求めるようにしたので、得られた流
れ場に基づくプリミティブの変形や状態の変化などによ
り、リアルな自然現象をリアルタイムに生成することが
できるようになる。また、インタラクティブに発生する
外因を加えて、新たな流れ場をリアルタイムに生成する
ことができるので、表現性を損なうことなく、リアルな
画像を生成することができるようになる。
【0017】また本発明に係る画像生成システム、プロ
グラム及び情報記憶媒体は、前記プリミティブ処理手段
は、前記流れ場情報を用いて、前記オブジェクト空間に
配置されるプリミティブに関連付けられた法線ベクトル
の向き及び大きさのうち少なくとも1つを求めて該プリ
ミティブに反映させることを特徴とする。
【0018】ここで、プリミティブに関連付けられる法
線ベクトルとは、例えばプリミティブに対して、シェー
ディングなどの画像処理を行う場合に用いられる法線ベ
クトルをいい、プリミティブの頂点等ごとに設けること
ができる。
【0019】本発明によれば、2次元のシミュレーショ
ン空間におけるシミュレーション演算によって求められ
た流れ場の情報を用いるようにしたので、インタラクテ
ィブに発生する外因の影響を反映させて、シェーディン
グ画像を変化させたり、法線方向に生える草オブジェク
トを風になびかせるといった画像を生成することがで
き、これまでにないリアルな画像を提供することができ
る。
【0020】また本発明に係る画像生成システム、プロ
グラム及び情報記憶媒体は、前記プリミティブ処理手段
は、前記流れ場情報を用いて、前記オブジェクト空間に
配置されるパーティクルの位置及び前記パーティクルに
関連付けられる情報のうち少なくとも1つを求めて該プ
リミティブに反映させることを特徴とする。
【0021】ここで、パーティクルに関連付けられる情
報とは、例えばパーティクルの寿命、サイズ、色情報、
透明度情報や、パーティクル・プリミティブごとに付与
される温度情報をいう。
【0022】本発明によれば、2次元のシミュレーショ
ン空間におけるシミュレーション演算によって求められ
た流れ場の情報を用いて、パーティクルの位置や状態を
変化させるようにしたので、オブジェクト空間において
リアルに拡散するパーティクルによりリアルな自然現象
を表現する際に、インタラクティブに発生する外因の影
響を反映させた画像をリアルタイムに生成することがで
きるようになる。
【0023】また本発明に係る画像生成システム、プロ
グラム及び情報記憶媒体は、所与の視点を向くプリミテ
ィブ面を、パーティクルに割り当てる手段を含む(或い
は、該手段としてコンピュータを機能させる、或いは該
手段としてコンピュータを機能させるプログラムを記憶
する)ことを特徴とする。
【0024】ここで、プリミティブ面をパーティクルに
割り当てるとは、例えばパーティクルの位置にプリミテ
ィブを配置することをいう。
【0025】本発明によれば、上述したようにインタラ
クティブに発生する外因を反映させたオブジェクト空間
におけるパーティクルの位置に視点を向くプリミティブ
面を配置するようにした処理、例えばテクスチャを貼っ
た板ポリゴンを視点からの視線方向に正対させる処理
(ビルボード処理)を行うようにしたので、テクスチャ
による表現が可能となって、リアルな画像表現を行うた
めの処理負荷を軽減することができる。
【0026】また本発明に係る画像生成システム、プロ
グラム及び情報記憶媒体は、各パーティクルに割り当て
たプリミティブ面の奥行き情報を、互いにずらして設定
することを特徴とする。
【0027】ここで、プリミティブ面の奥行き情報は、
ランダムにずらすようにしてもよい。
【0028】本発明によれば、連続するフレームにおい
て、各プリミティブ面の描画順序が前後に変わることが
なくなるため、画像のちらつきを防止することができ
る。
【0029】また本発明に係る画像生成システム、プロ
グラム及び情報記憶媒体は、オブジェクト空間内に設定
された前記流れ場の外のプリミティブに対し、前記流れ
場に基づいて前記プリミティブの位置及び前記プリミテ
ィブに関連付けられる情報のうち少なくとも1つを求め
て該プリミティブに反映させる手段を含む(或いは該手
段としてコンピュータを機能させる、或いは該手段とし
てコンピュータを機能させるプログラムを記憶する)こ
とを特徴とする。
【0030】本発明によれば、オブジェクト空間に設定
される流れ場の外のプリミティブが、流れ場の中の状態
を参照するようにしたので、シミュレーション空間のサ
イズを大きくすることなく、ある程度流体動作を反映さ
せてプリミティブの位置や状態を変化させることができ
る。したがって、シミュレーションにおける処理負荷を
軽減することができ、リアルタイム処理の実現に貢献す
ることができる。
【0031】また本発明に係る画像生成システム、プロ
グラム及び情報記憶媒体は、前記流れ場を離れたプリミ
ティブに対し、流れ場を離れる際の流れ場情報を用い
て、前記プリミティブの位置及び前記プリミティブに関
連付けられる情報のうち少なくとも1つを求めて該プリ
ミティブに反映させることを特徴とする。
【0032】本発明によれば、オブジェクト空間に設定
された流れ場を離れたプリミティブについて、流れ場を
離れる際の流れ場情報にしたがって、プリミティブの位
置や状態を変化させることができるので、処理負荷をか
けずにインタラクティブに発生した外因を反映させた画
像を生成することができる。
【0033】また本発明に係る画像生成システム、プロ
グラム及び情報記憶媒体は、オブジェクト空間内に設定
された前記流れ場の外のプリミティブに対し、前記プリ
ミティブから最寄りの前記シミュレーション空間の点に
設定された流れ場情報を用いて、前記プリミティブの位
置及び前記プリミティブに関連付けられる情報のうち少
なくとも1つを求めて該プリミティブに反映させること
を特徴とする。
【0034】本発明によれば、オブジェクト空間に設定
された流れ場を離れたプリミティブについて、最寄りの
シミュレーション空間の点に設定された流れ場情報を用
いるようにしたので、シミュレーション空間のサイズを
大きくすることなく、インタラクティブに発生した外因
を反映させた画像を生成することができる。
【0035】
【発明の実施の形態】以下、本発明の好適な実施形態に
ついて図面を用いて説明する。
【0036】なお、以下に説明する本実施形態は、特許
請求の範囲に記載された本発明の内容を何ら限定するも
のではない。また本実施形態で説明される構成の全てが
本発明の解決手段として必須であるとは限らない。
【0037】1. 構成 図1に、本実施形態の画像生成システム(ゲームシステ
ム)の機能ブロック図の一例を示す。
【0038】なお同図において本実施形態は、少なくと
も処理部100を含めばよく(或いは処理部100と記
憶部170、或いは処理部100と記憶部170と情報
記憶媒体180を含めばよく)、それ以外のブロック
(例えば、操作部160、表示部190、音出力部19
2、携帯型情報記憶装置194、通信部196)につい
ては、任意の構成要素とすることができる。
【0039】ここで処理部100は、システム全体の制
御、システム内の各ブロックへの命令の指示、ゲーム処
理、画像処理、又は音処理などの各種の処理を行うもの
であり、その機能は、各種プロセッサ(CPU、DSP
等)、或いはASIC(ゲートアレイ等)などのハード
ウェアや、所与のプログラム(ゲームプログラム)によ
り実現できる。
【0040】操作部160は、プレーヤが操作データを
入力するためのものであり、その機能は、レバー、ボタ
ン、マイク、或いは筐体などのハードウェアにより実現
できる。
【0041】記憶部170は、処理部100や通信部1
96などのワーク領域となるもので、その機能はRAM
などのハードウェアにより実現できる。
【0042】情報記憶媒体(コンピュータにより使用可
能な記憶媒体)180は、プログラムやデータなどの情
報を格納するものであり、その機能は、光ディスク(C
D、DVD)、光磁気ディスク(MO)、磁気ディス
ク、ハードディスク、磁気テープ、或いはメモリ(RO
M)などのハードウェアにより実現できる。処理部10
0は、この情報記憶媒体180に格納されるプログラム
(データ)に基づいて本発明(本実施形態)の種々の処
理を行う。即ち情報記憶媒体180には、本発明(本実
施形態)の手段(特に処理部100に含まれるブロッ
ク)をコンピュータに実現(実行、機能)させるための
プログラムが格納され、このプログラムは、例えば1又
は複数のモジュール(オブジェクト指向におけるオブジ
ェクトも含む)を含む。
【0043】なお、情報記憶媒体180に格納される情
報の一部又は全部は、システムへの電源投入時等に記憶
部170に転送されることになる。また情報記憶媒体1
80には、本発明の処理を行うためのプログラム、画像
データ、音データ、表示物の形状データ、本発明の処理
を指示するための情報、或いはその指示に従って処理を
行うための情報などを含ませることができる。
【0044】表示部190は、本実施形態により生成さ
れた画像を出力するものであり、その機能は、CRT、
LCD、或いはHMD(ヘッドマウントディスプレイ)
などのハードウェアにより実現できる。
【0045】音出力部192は、本実施形態により生成
された音を出力するものであり、その機能は、スピーカ
などのハードウェアにより実現できる。
【0046】携帯型情報記憶装置194は、プレーヤの
個人データやゲームのセーブデータなどが記憶されるも
のであり、この携帯型情報記憶装置194としては、メ
モリカードや携帯型ゲーム装置などを考えることができ
る。
【0047】通信部196は、外部(例えばホスト装置
や他の画像生成システム)との間で通信を行うための各
種の制御を行うものであり、その機能は、各種プロセッ
サ、或いは通信用ASICなどのハードウェアや、プロ
グラムなどにより実現できる。
【0048】なお本発明(本実施形態)の各手段を実現
(実行、機能)するためのプログラム(情報)は、ホス
ト装置(サーバ)が有する情報記憶媒体からネットワー
ク及び通信部196を介して情報記憶媒体180に配信
するようにしてもよい。このようなホスト装置(サー
バ)の情報記憶媒体の使用も本発明の範囲内に含まれ
る。
【0049】処理部(プロセッサ)100は、操作部1
60からの操作データやプログラムなどに基づいて、ゲ
ーム処理、画像生成処理、或いは音生成処理などの各種
の処理を行う。この場合、処理部100は、記憶部17
0内の主記憶部をワーク領域として使用して、各種の処
理を行う。
【0050】ここで、処理部100が行う処理として
は、コイン(代価)の受け付け処理、各種モードの設定
処理、ゲームの進行処理、選択画面の設定処理、オブジ
ェクト(1又は複数のプリミティブ。以下の説明でも同
様)の位置や回転角度(X、Y又はZ軸回りの回転角
度)を求める処理、オブジェクトを動作させる処理(モ
ーション処理)、視点の位置(仮想カメラの位置)や視
線角度(仮想カメラの回転角度)を求める処理、マップ
オブジェクトなどのオブジェクトをオブジェクト空間へ
配置する処理、ヒットチェック処理、ゲーム結果(成
果、成績)を演算する処理、複数のプレーヤが共通のゲ
ーム空間でプレイするための処理、或いはゲームオーバ
処理などを考えることができる。
【0051】処理部100は、シミュレーション演算部
110、場設定部115、プリミティブ処理部120、
処理監視部125、画像生成部140、音生成部150
を含む。なお、処理部100に、これら全ての機能ブロ
ック110〜150を含ませる必要はなく、一部の機能
ブロックを省略する構成にしてもよい。
【0052】ここでシミュレーション演算部110は、
2次元又は3次元のシミュレーション空間(ゲーム空
間、仮想空間)の各点(狭義には格子点)での時間経過
(仮想時間の経過、実時間の経過又はフレーム進行等)
に伴う物理量(例えば速度、加速度、力、位置、温度、
電気又は磁気等)の変化をシミュレーション演算により
求め、その物理量についての流れ場(流体場、速度場、
加速度場、ベクトル場)又は該流れ場の影響を受けた仮
想場を求める。より具体的には、シミュレーション演算
部110は、流体シミュレーション演算により、2次元
又は3次元のシミュレーション空間における流れ場の変
化を示す流れ場情報(例えば速度ベクトル、加速度ベク
トル、温度変化)を求める。或いはシミュレーション演
算部110は、求められた各点での物理量(例えば速度
ベクトル)についての流れ場の情報に基づいて変化する
情報(対象物に適用するために、上記物理量についての
流れ場の情報に基づいて演算した結果であって、例えば
位置情報、速度情報、温度情報、物理量など)について
の場を、上記物理量についての場の影響を受けた仮想場
として求める。
【0053】なお、ここで、流体シミュレーションと
は、例えば外力に対して形状を変化させて流動する液体
や気体等の流体の静止状態や運動状態を、数値的にモデ
ル化して表現することをいう。
【0054】また流れ場(広義には、場)とは、上述し
た流体の静止状態や動作状態を示す物理量が空間的に分
布している領域をいう。例えば、流体シミュレーション
のシミュレーション空間を格子状に分割し、各格子点に
おける物理量を求めることで、流れ場の状態を表すこと
ができる。そして、時間経過(フレーム進行)にしたが
った流体シミュレーション演算を行うことによって、各
格子点にその位置及び時間に応じた物理量を与えること
ができ、流れ場の状態の変化を表すことができる。した
がって、流れ場の影響を受けた仮想場は、流れ場の各格
子点での物理量に基づいて演算した、同一格子点若しく
は他の格子点における情報を求めることで、表すことが
できる。
【0055】場設定部115は、シミュレーション演算
部110によって求められた流れ場又は該流れ場の影響
を受けた仮想場を、オブジェクト空間に設定する処理を
行う。
【0056】ここで、オブジェクト空間とは、例えば定
義点(ポリゴンの頂点或いは自由曲面の制御点など)に
より形状が特定されるオブジェクト(プリミティブ)が
配置される仮想的な3次元空間をいう。
【0057】より具体的には、場設定部115は、求め
られた流れ場又は該流れ場の影響を受けた仮想場をオブ
ジェクト空間の任意の位置に設定したり、オブジェクト
空間に配置されるオブジェクト(広義には、プリミティ
ブ)にマッピングする。その際、場設定部115は、流
れ場のサイズ、格子状に行われる分割数、設定位置、設
定数及び形状(場若しくはグリッドの形状)のうち少な
くとも1つを変更することができるようになっている。
場設定部115は、複数の場(流れ場)又は該場の影響
を受けた仮想場をオブジェクト空間の複数の位置に設定
することができるとともに、1の場(流れ場)又は該場
の影響を受けた仮想場をオブジェクト空間の複数の位置
に設定することができる。場設定部115が設定する流
れ場又は該流れ場の影響を受けた仮想場は、2次元であ
ってもよいし、3次元であってもよい。
【0058】また、場設定部115は、一連のオブジェ
クト画像生成の処理の開始から流れ場又は該流れ場の影
響を受けた仮想場を設定するようにしてもよいし、例え
ば所与のイベントが検出されたときのみ一時的に設定す
るようにしてもよい。
【0059】プリミティブ処理部120は、シミュレー
ション演算部110によって求められた2次元の流れ場
又は該流れ場の影響を受けた仮想場を、3次元のオブジ
ェクト空間に配置されるプリミティブ(プリミティブに
より構成されるオブジェクトや、パーティクル・プリミ
ティブを含む)に反映させる処理を行う。プリミティブ
処理部120が反映させるプリミティブは、2次元のも
のであってもよいし、3次元のものであってもよい。
【0060】より具体的には、プリミティブ処理部12
0は、シミュレーション前のプリミティブに対し、シミ
ュレーション演算部110により求められた場の情報又
は該場の影響を受けた情報を用いて、プリミティブの位
置やプリミティブに関連付けられた情報(色情報、透明
度情報など)、パーティクル(パーティクル・プリミテ
ィブ)の位置やパーティクルに関連付けられた情報(寿
命、サイズ、色情報や透明度情報、密度など)を更新す
る処理を行う。これにより、プリミティブ処理部120
は、例えば、流れ場の情報としての速度ベクトルにした
がってパーティクルの位置を変化させたり、流れ場の情
報として求められた温度情報にしたがってパーティクル
の寿命や色情報等を変化させたりすることもできる。
【0061】また、プリミティブ処理部120は、流れ
場の情報を用いて、その動作若しくは状態が更新された
プリミティブに対して、ビルボード処理を行う。より具
体的には、プリミティブ処理部120は、更新されたプ
リミティブのプリミティブ面が、例えば仮想カメラ(視
線の向き、視線ベクトル)に対してほぼ垂直になるよう
に設定し、エフェクト等を表すテクスチャをマッピング
する処理を行う。
【0062】したがって、エフェクト等を表すテクスチ
ャを、更新された流れ場の流れ場情報に応じて変更する
ことによって、流体シミュレーションにより求められた
2次元の流れ場の動作若しくは状態の変化を、3次元の
オブジェクト空間における仮想カメラ(所与の視点)か
ら見たオブジェクト画像として表現することができる。
【0063】処理監視部125は、所与のイベントの発
生の有無の検出、又は処理部100において行われてい
る各種処理の負荷を監視する処理を行う。例えば、処理
監視部125によって検出されたイベントに基づき、場
設定部115により、設定される場のサイズ等の変更が
行われる。また、処理監視部125は、例えば処理部1
00において行われる処理単位で負荷を計算し、所与の
閾値以上になったときに処理負荷が高いと判別する。そ
して、例えば、処理監視部125によって処理負荷が高
いと判別されたときに、場設定部115により、設定さ
れる場のサイズ等の変更が行われる。
【0064】画像生成部140は、処理部100で行わ
れる種々の処理の結果に基づいて画像処理を行い、ゲー
ム画像を生成し、表示部190に出力する。例えば、い
わゆる3次元のゲーム画像を生成する場合には、まず座
標変換、クリッピング処理、透視変換、或いは光源計算
等のジオメトリ処理が行われ、その処理結果に基づい
て、プリミティブデータ(プリミティブの構成点(頂
点)又は制御点の位置座標、テクスチャ座標、色(輝
度)データ、法線ベクトル或いはα値等)が作成され
る。そして、このプリミティブデータ(ポリゴン、自由
曲面又はサブディビジョンサーフェス等のプリミティブ
のデータ)に基づいて、ジオメトリ処理後のオブジェク
ト(1又は複数のプリミティブ)の画像が、記憶部17
0の描画バッファ(フレームバッファ、ワークバッファ
等のピクセル単位で画像情報を記憶できるバッファ)に
描画される。これにより、オブジェクト空間内において
仮想カメラ(所与の視点)から見える画像が生成される
ようになる。
【0065】そして本実施形態では画像生成部140
が、シミュレーション演算部110により得られた流れ
場又は該流れ場の影響を受けた仮想場に基づいて画像生
成処理を行う。より具体的には、シミュレーション演算
部110によって求められた流れ場は、まず場設定部1
15によってサイズ等が適宜変更されてオブジェクト空
間内に設定される。このとき、処理監視部125の監視
結果に基づいて、流れ場のサイズや位置等を決めるよう
にしてもよい。そして、プリミティブ処理部120によ
り流れ場又は該流れ場の影響を受けた仮想場を反映させ
たプリミティブ(テクスチャをマッピングされたプリミ
ティブを含む)を用いて、画像生成部140が不定形物
(水、雲、霧、煙、気流、電磁波又は炎等)の画像を生
成する処理を行う。例えば、求められた流れ場の各点
(格子点)を起点とした速度ベクトルの方向にパーティ
クルを発生させたり、求められた流れ場の各点の温度分
布の変化に対応したテクスチャがマッピングされたプリ
ミティブの画像を生成する。また、例えば、オブジェク
ト空間に配置されたオブジェクトにマッピングされた場
の各点(格子点)の状態を反映させたオブジェクトの画
像を生成する。
【0066】音生成部150は、ゲーム処理の結果にし
たがって各種の音処理を行い、BGM、効果音、又は音
声などの音を生成し、音出力部192に出力する。
【0067】なお、シミュレーション演算部110、場
設定部115、プリミティブ処理部120、処理監視部
125、画像生成部140、音生成部150の機能は、
その全てをハードウェアにより実現してもよいし、その
全てをプログラムにより実現してもよい。或いは、ハー
ドウェアとプログラムの両方により実現してもよい。
【0068】なお、本実施形態の画像生成システムは、
1人のプレーヤのみがプレイできるシングルプレーヤモ
ード専用のシステムにしてもよいし、このようなシング
ルプレーヤモードのみならず、複数のプレーヤがプレイ
できるマルチプレーヤモードも備えるシステムにしても
よい。
【0069】また複数のプレーヤがプレイする場合に、
これらの複数のプレーヤに提供するゲーム画像やゲーム
音を、1つの端末を用いて生成してもよいし、ネットワ
ーク(伝送ライン、通信回線)などで接続された複数の
端末(ゲーム機、携帯電話)を用いて生成してもよい。
【0070】2. 本実施形態の特徴 次に本実施形態の特徴について図面を用いて説明する。
なお、以下では流れ場(流速場、速度場、流体場、ベク
トル場)を用いて流体シミュレーション演算を行う場合
について主に例にとり説明する。しかしながら、流れ場
に限定されることなく、流体表現以外の種々の場を反映
させた画像表現に適用することができる。
【0071】2.1 流れ場 本実施形態では、例えばオブジェクト空間に配置された
プリミティブ(パーティクル・プリミティブを含む)の
動作に流体シミュレーションの演算結果を反映させた画
像を生成する。
【0072】流体シミュレーションは、3次元空間で計
算を行った場合、計算量が膨大となるため、インタラク
ティブに発生する外因を反映させた画像の生成をリアル
タイム処理することは困難である。ここで、リアルタイ
ム処理とは、例えばゲーム処理、画像生成処理、音生成
処理などの全ての処理を、1フレーム(1/60秒、1
/30秒)以内に完了させることをいう。
【0073】そこで本実施形態では、奥行きを考慮しな
い2次元平面において流体シミュレーションを行って流
れ場又は該流れ場の影響を受けた仮想場を求め(流れ場
の情報又は該流れ場の影響を受けた情報を求め)、この
流れ場の情報又は該流れ場の影響を受けた情報を3次元
のオブジェクト空間に適用することで処理負荷を軽減
し、リアルタイム処理を可能としている。
【0074】また、この流れ場又は該流れ場の影響を受
けた仮想場を、オブジェクト空間の全てを網羅するよう
に設定すると、シミュレーション空間が大きくなって、
リアルタイム処理が不可能となる。
【0075】そこで、本実施形態では、流体シミュレー
ションによる不定形の画像の表現が必要な場所にのみ流
れ場又は該流れ場の影響を受けた仮想場をマッピング
(流れ場場の情報又は該流れ場の影響を受けた情報をマ
ッピング)して、流体シミュレーションによる処理負荷
を軽減する。
【0076】さらにまた、上述したような流れ場を反映
させた画像を生成する必要がない場合にも、各フレーム
において流体シミュレーションを行うのは効率的ではな
い。流れ場を反映させた画像を生成する必要がない場合
に、その分の処理負荷を他の処理に割り当てられること
が望ましい。
【0077】そこで、本実施形態では、オブジェクト空
間に設定される流れ場のサイズ、分割数、設定位置、設
定数及び形状のうち少なくとも1つが可変となるように
している。
【0078】これにより、流れ場に基づいて生成される
リアルな画像の表現性を損なうことなくインタラクティ
ブに発生する外因を反映させて、流れ場中のオブジェク
トの構成点、自由曲面の構成点又は制御点、又はパーテ
ィクル等の位置や状態を変化させることができるので、
これまでにないオブジェクトの移動、状態変化(変形を
含む)等を表現することができるようになる。
【0079】流れ場(広義には、場。以下の説明でも同
様)は、シミュレーション空間(ゲーム空間、仮想空
間)を格子状に適当な数に分割して生成される。流体シ
ミュレーション演算(広義には、シミュレーション演
算。以下の説明でも同様)によって時間経過(フレーム
進行)に伴って変化する各格子点(広義には、各点。以
下の説明でも同様)における流れ場情報(例えば速度ベ
クトル)を求め、場の情報を更新する。
【0080】流体シミュレーションは、所与の境界条件
のもと、求める物理量が時間的、空間的に連続性を有
し、与えられた外力(外因)の影響を直接的、間接的に
流れ場の全格子点に及ぼすことができるような所与の計
算式によって行われる。例えば水や空気のように連続体
の運動をシミュレーションする際には、非圧縮性のNavi
er-Stokes方程式等を用いて流れ場の演算を行うことが
できる。
【0081】次に、流体シミュレーション(流体力学計
算)を行う際の手順について説明する。
【0082】流体をシミュレートする空間(流れ場)
の、ある瞬間(例えばあるフレーム)における状態を設
定した後、Navier-Stokes方程式等を解くことで、次の
瞬間(次のフレーム)における流れ場の状態が求まる。
【0083】図2に、流体演算を行う際の手順について
説明するための模式的な図を示す。また、図3に、流体
シミュレーション計算を行う際の手順について説明する
ためのフローチャートを示す。
【0084】図2のA1は、ある瞬間における流れ場H
Fの状態を模式的に表したものであり、図2のA2は、
次の瞬間における流れ場HFの状態を模式的に表したも
のである。図2において、流れ場HFの状態は、ある時
点での各格子点(GP1,GP2,GP3・・・)に設
定された速度ベクトル(FV1,FV2,FV3・・
・)で表すことができる。
【0085】なお、図2では見た目をわかり易くするた
めに、流れ場HFを2次元的に表しているが、流れ場は
3次元であってもよい。また図2では、各格子点(GP
1,GP2,GP3・・・)と速度ベクトル(FV1,
FV2,FV3・・・)の始点をずらしているが、これ
らは一致していてもよい。
【0086】図2のA1の状態からA2の状態を求める
場合、図3に示すような手順で流体演算(流体力学計
算)を行う。
【0087】まず、シミュレーション空間の各格子点
(グリッド点)に対して、ある瞬間(フレーム「N−
1」)における流れ場情報(例えば速度ベクトル)を設
定する(ステップS1。図2のA1参照。)。即ち、流
体シミュレーションの初期条件を設定する。
【0088】次に、各格子点に設定された流れ場情報に
基づき、流体演算を行う(ステップS2)。
【0089】そして、流体演算により求まった各格子点
の流れ場情報が、次の瞬間(フレーム「N」)の流れ場
を表す流れ場情報(各格子点の情報)になる(ステップ
S3。図2のA2参照)。
【0090】それ以降は、ステップS3で得られた各格
子点の流れ場情報を、ステップS1での各格子点の流れ
場情報(流体シミュレーションの初期条件)に設定し
て、再びステップS2の流体演算を再帰的に行うこと
で、流れ場を状態変化させることができる。
【0091】なお、初期条件(ステップS1)は基本的
に自由に設定できるため、任意の時間に任意の点に対し
て外力(例えば速度ベクトル)を加えることも可能であ
る。
【0092】外力を流れ場に反映させるためには、対応
する格子点(例えば外力が加わった位置に近い格子点)
に対して、外力に対応した流れ場情報(例えば外力が速
度ベクトルの場合は、外力に対応した大きさ及び方向を
もつ速度ベクトル)を与えればよい。
【0093】図4(A)、(B)、(C)に、流れ場H
Fに対して、外力に対応した速度ベクトルEFVを与え
た場合の場の状態変化を模式的に表した図を示す。
【0094】なお、図4(A)、(B)、(C)では見
た目をわかり易くするために、格子点と速度ベクトルの
始点をずらしているが、これらが一致していてもよい。
【0095】例えば、図4(A)のような流れ場HFに
対して、図4(B)のように外力に対応した速度ベクト
ルEFVを与えれば、流体演算の後、図4(C)のよう
な流れ場HFを得ることができる。
【0096】ここで、外力を流体シミュレーションに反
映させる手法としては、例えば外力の方向及び大きさに
応じて得られる速度ベクトルEFVを、外力の加わった
位置の最寄りの格子点に初期条件として与える手法を考
えることができる。或いは、外力の大きさ及び方向に得
られる速度ベクトルEFVを、外力の加わった位置の周
囲の格子点GP13、GP14、GP18、GP19に
対して分散して初期条件として与えてもよい。
【0097】このように外力を流れ場に与えることによ
って、流体演算が行われるシミュレーション空間にイン
タラクティブ性を持たせることが可能となる。
【0098】次に流れ場を設定する際の境界条件につい
て説明する。ここで、シミュレーションする空間の境界
での流れ場情報(例えば速度ベクトル)の与え方を境界
条件と呼ぶ。
【0099】境界条件は、流体シミュレーションを行う
上で非常に重要な要素であり、この値の与え方を変える
だけで、仮想的に流体の様々な振る舞いを再現できる。
【0100】例えば、下端の境界における速度ベクトル
の方向を下向きに設定すれば、上から下へ流れる川の水
のような動きになる流体を仮想的に表現することができ
る。
【0101】また、境界での値を全て0に設定すれば、
風呂場の湯船の水面のように閉じた空間での流体の動き
を仮想的に表現でき、流体が渦を巻く様子を表現でき
る。
【0102】例えば図5に示すように、下端での境界条
件として、上向に吹き出すような速度ベクトルを設定す
れば、常に下から上へと気体が流れる状態の場を生成す
ることができる。
【0103】この状態で放置しておけば、しばらくする
と定常的な流れとなり、流体シミュレーションを行うメ
リットは薄れる。しかしながら、流体シミュレーション
を利用すれば、「風を送る」といったような外因が加わ
った流れ場の影響を手軽に表現することができる。
【0104】2.2 Navier-Stokes方程式を用いた流
体シミュレーション 水や空気のような連続体の運動を支配する方程式はNavi
er-Stokes方程式と呼ばれる。流体の流れが音速に比べ
て十分小さい場合は非圧縮性を仮定してよく、この場合
のNavier-Stokes方程式は以下のようになる。
【0105】
【数1】
【0106】ここで、Vは流速、pは圧力、ρは密度、
μは流体の粘性率である。また、∇は勾配演算子、Δは
ラプラシアンを表す。
【0107】これらの方程式を差分化することで各格子
点における解を数値的に得ることができる。差分化によ
って解析を行う空間を流れ場(流体場、ベクトル場)と
して格子状に分割し、各格子点にそれぞれ流れ場情報
(例えば速度ベクトル)を持たせて計算を行う。
【0108】以下、差分化する手法の一例について具体
的に説明する。
【0109】(E1)は質量保存則を表す偏微分方程式
であり、「連続の式」と呼ばれる。また、(E2)は運
動量保存則を表し、(狭義の)Navier-Stokes方程式と
呼ばれる。
【0110】この式において、流れの代表的な長さを
L、代表的な速度をUとして以下のようにおく。
【0111】
【数2】
【0112】これらを(E1)、(E2)に代入すると
以下の式が導かれる。
【0113】
【数3】
【0114】またReはReynolds数と呼ばれ以下の式で
定義される無次元のパラメータである。
【0115】
【数4】
【0116】この方程式に現れるパラメータはただひと
つであり、外力が働かない場合、流れはReynolds数に応
じて変化する。
【0117】その定義から、流速が小さいこと、流れの
スケールが小さいこと、粘性が大きいことは、すべてRe
ynolds数を小さくするという意味で同じ効果をもつ。Re
ynolds数は、物理的には慣性力と粘性力の比を表し、Re
ynolds数が小さいことは、粘性力が慣性力より卓越する
ことを意味する。すなわち、直感的には粘い流体の流れ
となる。
【0118】(E1)´、(E2)´の変数をあらため
てx、V、t、pと置きなおすことにより以下の式が得
られる。
【0119】
【数5】
【0120】(E3)、(E4)の式は、以下の(1)
〜(3)のような特徴を表している。 (1)式(E4)の左辺第2項が非線形であること。 (2)最高階の微係数は式(E4)の右辺第2項の2階
でありさらにパラメータを含んでいること。 (3)速度Vについては時間発展型になっているが圧力
pについては時間発展型になっていないこと。
【0121】特に、(3)は非圧縮性特有の問題であ
り、Navier-Stokes方程式の数値解法を困難にしている
要因である。つまり、速度Vを時間発展的に求める場
合、各時間ステップで連続の式(E3)を満たすよう
に、圧力pを決める必要がある。
【0122】非圧縮性Navier-Stokes方程式を数値的に
解く方法として、圧力を独立に求める方法を採用すると
以下のようになる。
【0123】式(E4)において、両辺の発散をとる
と、
【0124】
【数6】
【0125】D=∇・Vとおくと以下のようになる。
【0126】
【数7】
【0127】連続の式(E3)によれば、D=0となる
はずであるが、(E5)を差分化して解く際、離散化誤
差が集積してDが大きな値となることがあるので、わざ
と残してある。さて、(E5)において、D=0として
求めた圧力分布は以下の式を満たす。
【0128】
【数8】
【0129】ただし、(E6)は必ずしもD=0を意味
しない。それは、D=定数(≠0)が(E6)を満たす
ことからもわかる。境界上で常にD=0が満足され、さ
らに領域内すべてでD=0を満足するように初期条件が
与えられれば式(E6)はD=0を意味するが、これら
の条件を満たすのは困難である。
【0130】そこで、まず式(E5)をtについて離散
化する。
【0131】
【数9】
【0132】ここでDn+1=0とおくと、(E5)は以
下のようになる。
【0133】
【数10】
【0134】このようにして求まるpはDn≠0であっ
ても、Dn+1=0となるように決めているため、境界条
件の不正確さや時間進行による誤差集積に対して常にD
を小さな値にとどめておくことができる。
【0135】式(E7)から圧力が決まれば、式(E
4)に圧力を代入することにより、Vを時間発展的に求
めることが可能になる。この方法は一般に、MAC法と
呼ばれる。
【0136】また、(E7)において、Δtは十分小さ
いため、α=0と、みなすことができる。
【0137】従って、非圧縮性Navier-Stokes方程式を
解くためには、以下の2式を解くことになる。
【0138】
【数11】
【0139】2次元のデカルト座標系として、(E
8)、(E9)を成分表示すると以下のようになる。
【0140】
【数12】
【0141】式(E10)は圧力に関するPoisson方程
式である。
【0142】また、式(E11)、(E12)に関して
は、それぞれの非線型項uux+vuy,uvx+vvy
対し以下の式を用いることができる。
【0143】
【数13】
【0144】以下、計算の一例としてキャビティ問題を
とりあげる。
【0145】図6(A)、(B)、(C)は具体的な計
算例について説明する際に用いる図である。
【0146】ここでいうキャビティ問題とは、図6
(A)のような正方形領域を満たしている流体を考え、
DC上を速度1で右方向に移動させた際の、内部の流体
の動きを数値的に求めることである。
【0147】まず、速度の境界条件を考えると、AD、
AB、BC上において、u=v=0であり、CD上にお
いて、u=1,v=0である。
【0148】次に、圧力の境界条件を考える。
【0149】式(E9)において、粘性項を除いてV=
0を代入すると以下の式が成り立つ。
【0150】
【数14】
【0151】この式は、AD、BC上ではy方向に沿っ
てu=0であるから以下の式が成り立つ。
【0152】
【数15】
【0153】また、AB、CD上ではx方向に沿ってv
=0であるから以下の式が成り立つ。
【0154】
【数16】
【0155】ここで差分化に際して、スタガード格子と
呼ばれる格子を用いている。これは、図6(B)に示す
ように、個々の物理量の定義が同一でないもので、これ
とは逆に、全ての物理量が同一の点で定義される格子は
レギュラー格子と呼ばれる。
【0156】図6(B)からわかるように、スタガード
格子の利点として、1つの格子セルで連続の式が自然に
表現でき、「各方向の圧力勾配がその方向の速度を決め
る」というNavier-Stokes方程式の性質が自然に表現で
きる、といった点が挙げられる。
【0157】具体的に図6(B)のセルにおいて連続の
式を近似すると以下の式が成り立つ。
【0158】
【数17】
【0159】スタガード格子を用いてNavier-Stokes方
程式を解く場合の注意点として、例えばuに対する方程
式を考えると、方程式中に以下の項が現れる。
【0160】
【数18】
【0161】この項中のvは本来であればuの定義点に
おける値をとるべきであるが、スタガード格子を用いた
場合、その点ではvの値が定義されていない。従って、
vの定義点から何らかの方法で値を決定する必要があ
る。ここでは、まわりの点の平均値によって定めた。
【0162】すなわち、先の例の場合以下のようにな
る。
【0163】
【数19】
【0164】vに関する方程式についても同様である。
【0165】また、圧力に関するPoisson方程式(E1
0)の右辺に関しても同様の処理を行うものとする。
【0166】これでNavier-Stokes方程式を解くために
必要な条件が揃ったことになるので、後は(E10)、
(E11)、(E12)を差分化して計算すれば良い。
【0167】念のため、以下に差分化した結果を示して
おく。
【0168】
【数20】
【0169】なお、いずれの式も上添え字のnは省略し
てある。
【0170】方程式を解く際の手順であるが、速度の初
期条件あるいは、前の時間ステップにおける速度から
(F1)のPoisson方程式を解いて圧力を求め、その圧
力と速度を用いることで(F2)、(F3)を解き、次
の時間ステップでの速度を求める。この手順を繰り返す
ことで、解を時間発展的に求めることが可能になる。
【0171】本実施形態では流れ場(流体場、ベクトル
場)を構成する各格子点ごとに、(F1)〜(F3)を
解いて、各格子点に与える速度ベクトルを求める。
【0172】ここで(F1)は圧力を求める方程式であ
り、(F2)はx方向の速度を求める方程式であり、
(F3)はy方向の速度を求める方程式である。また
i、jはそれそれ2次元流れ場(流体場、ベクトル場)
における各格子点のx、y座標を表す添え字である。ま
たuの上添え字のn+1は、次の瞬間のuの値を意味し
ている。
【0173】本実施形態では、外因に基づき流れ場に対
して与えられる速度ベクトルを流体シミュレーション演
算に反映させる場合には、(F2)式のuijとして前記
速度ベクトルのx成分を用い、(F3)式のvijして前
記速度ベクトルのy成分を用いるとよい。
【0174】最後に、境界条件について述べる。
【0175】速度の境界条件については、壁面を図6
(C)に示すような位置にとると、u W=0となる。
【0176】圧力の境界条件については、例えば仮想点
Pエにおける圧力をp´とすると、式(E14)から、
以下のようになる。
【0177】
【数21】
【0178】また、速度の2階微分は図の点Wにおいて
評価する必要があるが、1次精度の片側差分で近似する
と以下のようになる。
【0179】
【数22】
【0180】中心差分で近似するときは仮想点Aにおけ
るuの値が必要となるが、この場合はuA=uBととる。
また、vに関して仮想点での値が必要な時はvD=−vE
ととる。(このとき、vWをまわりの4点の平均とする
と、vW=0が成り立つ。) 2.3 2次元の流れ場の3次元への適用 上述したように、本実施形態では、流体シミュレーショ
ンにより求められた2次元の流れ場の情報又は該流れ場
の影響を受けた情報に基づいて、位置や状態(色(輝
度)、透明度などのプリミティブに付随(関連)する情
報)が制御されたプリミティブ(パーティクルシステム
を構成するパーティクル・プリミティブを含む)を、3
次元のオブジェクト空間に配置する。
【0181】図7に、本実施形態における2次元の流れ
場と3次元のオブジェクト空間との関係を模式的に示
す。
【0182】すなわち、本実施形態では、Navier-Stoke
s方程式を用いた流体シミュレーションにより得られた
2次元の流れ場HFの情報として各格子点について求め
られた流れ場情報(例えば速度ベクトル)又は該流れ場
の影響を受けた情報を用いて、プリミティブ(オブジェ
クトの構成点及び制御点を含む)の位置や、プリミティ
ブに関連付けられる情報(例えば、色(輝度)、α値
等)を求めて、該プリミティブに反映させる。そして、
このように求められたプリミティブを、3次元のオブジ
ェクト空間に配置して、所与の視点(仮想カメラ)VC
から見えるオブジェクト画像を生成する。
【0183】より具体的には、流れ場の情報又は該流れ
場の影響を受けた情報を用いて、例えば流れ場HFの中
のオブジェクトの構成点の位置、色、又は透明度を変化
させたり、オブジェクトの制御点(例えば、NURBS
の制御点)に関連付けられた情報である重みを変化させ
たりする。
【0184】これにより、炎等の自然現象をリアルに表
現するための流体計算の負荷を軽減し、インタラクティ
ブに発生する外因(例えば、外力に対応した速度ベクト
ルEFV)を反映させた画像をリアルタイムで生成する
ことができるようになる。
【0185】なお、実際の流れ場は、図2、図4、図5
で説明したように格子状に分割され、各格子点ごとに流
れ場の情報(速度ベクトル)を有しているが、説明の都
合上特に問題のない場合には見やすくするために流れ場
に生じた流れのみを模式的に図示することにとどめてい
る。
【0186】図8に、上述した2次元の流れ場を、焚き
火の炎の表現に適用した場合のオブジェクト画像の一例
を示す。
【0187】ここでは、パーティクルシステムにより焚
き火の炎を表現する場合について示している。このよう
に、焚き火の中心から発生させたパーティクルPTを、
2次元の流れ場HFの中で位置や状態を更新し、このパ
ーティクルPTに炎の画像をテクスチャとしてマッピン
グして表示させることで、炎がめらめらと燃える様子を
表現することが可能となる。
【0188】この場合、インタラクティブに発生する外
因の発生位置を焚き火の火の中心とし、外因としての外
力に対応した速度ベクトルの向きを上向きとすること
で、外因の発生位置から発生したパーティクルの位置が
流れ場の状態を参照して次第に拡散し、パーティクルに
付随する情報(色やα値)が流れ場の状態を参照して次
第に変化して、よりリアルな炎を表現する。
【0189】また、このような流れ場又は該流れ場の影
響を受けた仮想場を、プリミティブの構成点又は制御点
の位置に反映させることによって、プリミティブを変形
させることも可能となる。さらに、流れ場又は該流れ場
の影響を受けた仮想場を、プリミティブの構成点に関連
付けられる情報(例えば、色情報、透明度情報など)や
プリミティブの制御点に関連付けられる情報(例えば、
重み付けなど)に反映させることで、流体シミュレーシ
ョンにしたがった色変化や透明度変化を表現し、これま
で表現できなかった画像変化が可能となる。
【0190】ところで、流れ場又は該流れ場の影響を受
けた仮想場を反映させるのは、プリミティブの位置や、
プリミティブに付随する情報に限定されるものではな
い。
【0191】図9に、流れ場をオブジェクトの法線ベク
トルの向きや大きさに反映させる場合について説明する
ための模式図を示す。
【0192】すなわち、オブジェクト(プリミティブ)
の構成点(頂点)に設定された法線ベクトルNV1〜N
V4の向きや大きさを、上述したように得られた2次元
の流れ場HFの流れ場情報を用いて変化させて、オブジ
ェクト(プリミティブ)に関連付けられた法線ベクトル
NV1´〜NV4´を設定し、シェーディングなどの画
像処理に用いるようにしてもよい。
【0193】より具体的には、2次元の流れ場HFの各
格子点について求められた流れ場情報としての速度ベク
トルの向きに応じて、オブジェクトの頂点に設定された
法線ベクトルNV1〜NV4の向きを変化させたり、速
度ベクトルの大きさに応じて法線ベクトルNV1〜NV
4の大きさを変化させたりする。
【0194】こうすることで、インタラクティブに発生
した外因の影響を受けた流れ場HFの情報に基づいて、
プリミティブの法線ベクトルの向きや大きさを変化させ
たプリミティブに関連付けられた法線ベクトルを得るこ
とができるので、例えばオブジェクトの法線ベクトルの
向きに生える草むらが、外因として加えられた風になび
く様子を表現することが可能となる。
【0195】また、このようなプリミティブに関連付け
られた法線ベクトルを用いてオブジェクトのシェーディ
ングを行う場合、外因に応じてシェーディングが変化す
る画像を生成することができる。
【0196】ここでは、流れ場を法線ベクトルの向きや
大きさに反映させるものとして説明したが、該流れ場の
影響を受けた仮想場を用いても同様に実現することがで
きる。
【0197】2.3.1 ビルボード処理 本実施形態では、プリミティブの位置及び状態の変化を
3次元のオブジェクト空間に反映させるために、2次元
の流れ場を反映させるパーティクルの位置にスプライト
ポリゴン(広義には、プリミティブ面)を配置する。
【0198】図10に、スプライトポリゴンSPと仮想
カメラとの関係を模式的に示した図を示す。
【0199】ここで、スプライトポリゴンは、ビルボー
ド処理されたポリゴンである。また、ビルボード処理と
は、常に仮想カメラの向きに正対するように処理するこ
とをいう。
【0200】したがって、仮想カメラの位置を変えても
常に仮想カメラの向きに正対する2次元平面(流れ場)
上を、パーティクルが拡散し、パーティクルの位置にビ
ルボード処理されたスプライトポリゴンが配置される。
このようにパーティクルシステムを採用することによ
り、リアルな画像の生成を可能とする。さらに、ポリゴ
ン数の削減とテクスチャマッピングにより、描画処理の
負荷の軽減を図ることができる。
【0201】図11に、スプライトポリゴンが配置され
たオブジェクト空間の画像の一例を示す。
【0202】ここでは、焚き火の炎の下に配置された、
仮想カメラVCとは別の視点から見た図を示している。
【0203】例えば、仮想カメラの向きに正対するよう
に流れ場HFの向きを変えるようにすることで、流れ場
HF内のパーティクルに配置されるスプライトポリゴン
を仮想カメラの向きに対して正対させることが可能とな
る。
【0204】なお、図10では、スプライトポリゴンS
Pが仮想カメラVCの向きに対して90度になるように
配置されているが、これに限定されるものではない。た
だし、仮想カメラの向きに対して垂直なスプライトポリ
ゴンSPがほぼ90度になることが望ましい。
【0205】2.3.1.1 スプライトポリゴンの配
置 本実施形態では、αブレンディングなどの半透明処理を
行うとともに、前後のフレームでのちらつきを防止する
ため、2次元の平面上のパーティクルの各位置に配置さ
れるスプライトポリゴン同士に、1グリッド分の奥行き
内に互いに異なる奥行きをもたせるようにしている。
【0206】図12に、本実施形態におけるスプライト
ポリゴンの配置の一例を模式的に示す。
【0207】スプライトポリゴンをパーティクルの位置
に配置する場合において、スプライトポリゴンSP1〜
SP3に着目すると、1グリッド分の奥行き内に、互い
に異なる奥行きをもたせたスプライトポリゴンSP1〜
SP3を配置することで、同一平面上を移動する各スプ
ライトポリゴンのちらつきを防止することができる。
【0208】また、本実施形態では、初期段階において
奥行きがある方からパーティクルを発生させて、奥行き
がある方からパーティクルが描画されるようにすること
で、後続するフレームにおいても、奥行きの順序が変更
されないようにしている。
【0209】これにより、本実施形態では、一度発生さ
せたパーティクルは、奥行きがある方から描画され、描
画順序が変更されることがない。
【0210】しかも、本実施形態では、スプライトポリ
ゴンを採用することによって、互いに奥行きをずらした
パーティクルの位置と、仮想カメラの位置との相対関係
を常に一定に維持することができるので、半透明処理
(例えばαブレンディング)で必要とされるソーティン
グ処理を不要として、処理負荷の軽減を図ることができ
る。
【0211】なお、スプライトポリゴンの奥行きはラン
ダムに与えてもよく、要は後続するフレームにおいて描
画順序に変更がなければよい。
【0212】2.3.2 2次元の流れ場を用いた処理
例 次に、上述した2次元の流れ場を3次元のオブジェクト
空間に設定した場合の本実施形態の処理の詳細例につい
て説明する。
【0213】ここでは、オブジェクト空間に流れ場を設
定する場合について説明するが、オブジェクト空間に該
流れ場の影響を受けた仮想場を設定することもできる。
流れ場の影響は、求められた物理量についての流れ場の
情報に基づいて変化する、例えば各格子点における演算
結果(情報)として表すことができる。
【0214】図13に、本実施形態における2次元の流
れ場を3次元のオブジェクト空間に適用する処理の一例
を示す。
【0215】まず、処理部100の場設定部115にお
いて、2次元の流れ場HFを設定する(ステップS1
0)。例えば、場設定部115は、処理監視部126に
より検出されたイベントの種類や処理負荷に応じたサイ
ズの場を格子状に適切な数で分割して2次元の流れ場を
設定し、各格子点に流れ場情報(例えば速度ベクトル、
或いは濃度若しくは温度)を設定する。
【0216】次に、処理部100は、流れ場HFに対す
る外部入力を受け付ける(ステップS11)。ここで、
外部入力として、外力に対応した流れ場情報を受け付け
る。流れ場情報が速度ベクトルの場合、外力に対応した
大きさ及び方向をもつ速度ベクトルEFVが外部入力と
なる。
【0217】続いて、シミュレーション演算部110に
より、上述したように流体シミュレーションを行って、
次の瞬間(フレーム)における流れ場の各格子点の流れ
場情報を求める(ステップS12)。
【0218】処理部100は、各格子点の流れ場情報か
ら、温度分布や濃度変化を求めて、流れ場を更新する
(ステップS13)。
【0219】続いて、プリミティブ処理部120は、更
新された流れ場にしたがって、位置や状態を変化させた
り、寿命を判定したりする(ステップS14)。
【0220】寿命が尽きて消滅するなどの所与の終了条
件を満たしたとき(ステップS15:Y)、一連の処理
を終了する(エンド)が、終了条件を満たしていないと
き(ステップS15:N)、ステップS11に戻って再
度外部入力を受け付けて、流体シミュレーションにした
がった流れ場の更新を行う。
【0221】以上のようにすることで、図8に示すよう
に流体シミュレーションで得られた2次元の流れ場に基
づいて位置や状態が変化するパーティクルを、3次元の
オブジェクト空間に配置して、オブジェクト画像を生成
することができる。したがって、インタラクティブに発
生する外因を反映させた流体シミュレーションにより、
リアルなオブジェクト画像をリアルタイムで生成するこ
とができるようになる。
【0222】図14に、本実施形態におけるパーティク
ルに配置されるスプライトポリゴンの配置処理の一例を
示す。
【0223】まず、例えばプリミティブ処理部120
は、パーティクルが奥行き方向に互いにずれるように、
1グリッド内でランダムに奥行き情報(奥行き値。例え
ばZ値)を設定する(ステップS20)。
【0224】続いて、各パーティクルの位置に、視点か
らの視線方向に正対するようにスプライトポリゴンを配
置する(ステップS21)。
【0225】そして、各スプライトポリゴンに、流れ場
の状態を参照した各パーティクルに付随する情報に応じ
て、色や透明度が変化したテクスチャがマッピングされ
る(ステップS22)。
【0226】次に、画像生成部140において、視点か
ら見えるオブジェクトに対してジオメトリ処理を行っ
て、ジオメトリ処理後のオブジェクトの画像が記憶部1
70の描画バッファに描画されて、オブジェクト画像が
生成される(ステップS23)。
【0227】以上のようにすることで、図11に示すよ
うに、視点の位置を変えても、視線方向に正対する2次
元平面上に拡散するパーティクルの位置にビルボード処
理されたスプライトポリゴンが配置される。したがっ
て、流体の動作を反映させたリアルな画像を提供すると
ともに、ポリゴン数の削減やテクスチャマッピングによ
る描画処理の処理負荷を大幅に軽減することができる。
【0228】2.4 2次元の流れ場の3次元オブジェ
クトへのマッピング また本実施形態では、流体シミュレーションにより求め
られた流れ場又は該流れ場の影響を受けた仮想場がマッ
ピングされたオブジェクトに関連付けられた位置(例え
ば、オブジェクトの周囲や表面等であって、流れ場の影
響を受ける位置)で、流れ場内のプリミティブ(パーテ
ィクルシステムを構成するパーティクル・プリミティブ
を含む)(広義には、別プリミティブ)に流体動作を反
映させた画像を生成する。
【0229】なお、マッピングする流れ場又は該流れ場
の影響を受けた仮想場は、2次元のものでも3次元のも
のでもよいが、2次元の場合には、上述したようにその
分処理負荷を軽減することができる。また、流れ場又は
該流れ場の影響を受けた仮想場がマッピングされるオブ
ジェクトは、2次元のものであってもよいし、3次元の
ものであってもよい。
【0230】図15に、本実施形態において、オブジェ
クトにマッピングされる場を模式的に示す。
【0231】ここでは、2次元の流れ場HFを、3次元
のオブジェクトにマッピングする場合について示す。
【0232】本実施形態では、上述したNavier-Stokes
方程式を用いた流体シミュレーションにより求められた
流れ場HFを、オブジェクト空間に配置されたオブジェ
クトOBJにマッピングする。
【0233】流れ場HFは、例えば格子状に分割された
各格子点の位置における流れ場情報(例えば速度ベクト
ル)を、Navier-Stokes方程式を用いた流体シミュレー
ション演算により求めることで、得ることができる。
【0234】したがって、このようにして得られた流れ
場HFを、例えばオブジェクトOBJの表面にマッピン
グすることで、流れ場HF内のプリミティブの位置の変
化や、プリミティブに関連付けられる情報としての色情
報、透明度情報などによるプリミティブの状態の変化
に、流体の動作を反映させることができる。すなわち、
流れ場HF内のプリミティブの位置及び状態を、流体シ
ミュレーションにしたがって制御することができる。
【0235】例えば人間の腕を流れ落ちる汗を表現する
場合、腕オブジェクトの表面に流れ場HFをマッピング
し、腕オブジェクトの表面の汗オブジェクトの位置及び
状態を流体シミュレーションにしたがって制御すること
により、リアルに表現することができる。また、例えば
車のフロントガラスを流れ落ちる水滴を表現する場合、
フロントガラスオブジェクトの表面に流れ場HFをマッ
ピングし、フロントガラスオブジェクトの表面の水滴オ
ブジェクトの位置及び状態を流体シミュレーションにし
たがって制御することで、リアルに表現することができ
る。
【0236】なお、流れ場の影響を受けた仮想場につい
ても同様にマッピングすることで、オブジェクトに反映
させることができる。
【0237】また、例えば、流れ場HFをUVマッピン
グによりオブジェクトOBJの表面にマッピングした場
合、オブジェクトOBJの形状が変化した場合にもその
表面に流れ場HFをマッピングすることができるので、
オブジェクトOBJの表面の形状にかかわらず、プリミ
ティブの位置又は状態を、流体シミュレーションにした
がって制御することができる。
【0238】図16に、本実施形態において、オブジェ
クトOBJ1に対して行われる2次元の流れ場HFのU
Vマッピングについて説明するための図を示す。
【0239】ここで、オブジェクトOBJ1の頂点座標
が(X,Y)=(0,0),(Xmax,0),(0,
Ymax),(Xmax,Ymax)であるものとす
る。このようなオブジェクトOBJ1に対して、UVマ
ッピングする流れ場HFの頂点座標を(U,V)=
(0,0),(1,0),(0,1),(1,1)とす
る。
【0240】UVマッピングでは、例えばオブジェクト
OBJ1の各頂点に、流れ場HFの各頂点が対応付けら
れる。すなわち、オブジェクトOBJ1の頂点座標
(X,Y)=(0,0)に流れ場HFの頂点座標(U,
V)=(0,0)を、オブジェクトOBJ1の頂点座標
(X,Y)=(Xmax,0)に流れ場HFの頂点座標
(U,V)=(1,0)を、オブジェクトOBJ1の頂
点座標(X,Y)=(0,Ymax)に流れ場HFの頂
点座標(U,V)=(0,1)を、オブジェクトOBJ
1の頂点座標(X,Y)=(Xmax,Ymax)に流
れ場HFの頂点座標(U,V)=(1,1)を、それぞ
れコーディネートする。
【0241】こうすることで、オブジェクトOBJ1を
描画する際、オブジェクトOBJ1の各点が流れ場HF
のどの位置を参照しているかを求めることができるの
で、各点の流れ場情報として速度ベクトルが求められて
いる場合には、流れ場HFの格子点GPの速度ベクトル
を、オブジェクトOBJ1表面の対応位置GP´の速度
ベクトルとすることができる。これにより、オブジェク
トOBJ1表面上のプリミティブの位置又は状態を変化
させることができる。
【0242】図17に、オブジェクト表面に流れ場HF
がマッピングされたオブジェクト画像の一例を示す。
【0243】ここでは、オブジェクト空間にオブジェク
トOBJ2、OBJ3が配置され、それぞれ表面に流れ
場HFがUVマッピングによりマッピングされている。
図17では、流れ場の格子点ごとに求められた速度ベク
トルを矢印で示している。
【0244】このように、マッピング対象のオブジェク
トの表面に流れ場HFをマッピングすることができるの
で、オブジェクト表面上のプリミティブの位置及び状態
を、Navier-Stokes方程式にしたがって求められた流れ
場情報に基づいて変化させて表現することができる。
【0245】以上のように、オブジェクト空間に配置さ
れるオブジェクトの任意の位置に流れ場HF又は該流れ
場の影響を受けた仮想場を配置することができる。した
がって、流体シミュレーションによる不定形の画像の表
現が必要な場所にのみ、マッピングすればよいので、流
体シミュレーションによる処理負荷を軽減することがで
きる。また、オブジェクトの表面において、流体動作を
反映させたプリミティブの位置若しくは状態を変化させ
ることができ、これまでにないリアルな画像を生成する
ことができるようになる。
【0246】2.5 流れ場の可変制御 本実施形態においては、流体シミュレーションにより求
められた流れ場は、サイズ、格子状に行われる分割数、
設定位置、設定数及び形状(場若しくはグリッドの形
状)のうち少なくとも1つを変更することができるよう
になっている。そして、この変更後の場が反映される位
置のプリミティブ(パーティクルシステムを構成するパ
ーティクル・プリミティブを含む)(広義には、別プリ
ミティブ)に流体動作を反映させた画像を生成する。
【0247】なお、流れ場は、2次元のものでも3次元
のものでもよいが、2次元の場合には、上述したように
その分処理負荷を軽減することができる。
【0248】図18に、流れ場の可変制御について説明
するための図を示す。
【0249】以下では、2次元の流れ場を2次元のオブ
ジェクトに適用する場合について説明するが、2次元又
は3次元の流れ場を2次元又は3次元のオブジェクトに
適用する場合は同様である。
【0250】ここで、上述のNavier-Stokes方程式を用
いた流体シミュレーションにより求められた流れ場を、
オブジェクトWOBJXに対して反映させた画像を生成
する場合を考える。
【0251】流れ場を反映させる位置にオブジェクトW
OBJXが配置された場合、流れ場の各格子点の情報に
基づいて、オブジェクトOBJXの構成点又は制御点の
位置や、構成点に関連付けられる情報(色情報、透明度
情報など)又は制御点に関連付けられる情報(重み付け
など)が変化する。これにより、オブジェクトWOBJ
Xは、影響を及ぼす流れ場のサイズ又は分割数に応じた
画像が生成されることになる。
【0252】例えば図18に示すように、オブジェクト
OBJXは、サイズ又は分割数が異なる流れ場HFX1
〜HFX3の各格子点の流れ場情報(例えば速度ベクト
ル)に基づいてそれぞれオブジェクトの構成点の位置を
変化させた場合、オブジェクトOBJX1〜OBJX3
のように変形する。
【0253】ここで、流れ場HFX1と流れ場HFX2
は、分割数は同等で、サイズが異なる。また、流れ場H
FX1と流れ場HFX3は、サイズが同等で、分割数が
異なる。
【0254】流れ場HFX2を設定する場合は、流れ場
HFX1を設定する場合に比べて、分割数が同等である
ため、流れ場を表す精度が低下する。しかしながら、こ
の場合は、流体シミュレーションの処理負荷を増加させ
ることなく、流れ場HFX1よりも広いエリアで流れ場
の状態を表現することができる。
【0255】一方、流れ場HFX3を設定する場合は、
流れ場HFX1を設定する場合に比べて、分割数が多く
なるため、流体シミュレーションの処理負荷が重くなっ
てしまう。しかしながら、この場合は、流れ場HFX1
よりも精度良く流れ場の状態を表現することができるの
で、よりリアルな画像を生成することが可能となる。
【0256】このように、オブジェクトに対して、処理
負荷と表現のリアルさとを考慮して流れ場のサイズ又は
分割数を変更することで、流体シミュレーションにより
求められた流れ場の情報に基づく画像生成処理の最適化
を図ることができる。
【0257】なお、本実施形態では、流れ場のサイズ又
は分割数だけに限定されず、流れ場のサイズ、流れ場の
分割数、流れ場の設定する位置や、設定する数及び流れ
場の形状(グリッドの形状も含む)のうち少なくとも1
つを変更することで、同様に処理負荷と精度が高い画像
生成との最適化を図ることができる。
【0258】なお、所与のイベント発生や、処理負荷に
応じて、このような流れ場のサイズ等の変更を行うよう
にしてもよい。
【0259】2.6 場の外への情報の引継ぎ 本実施形態では、上述した2次元の流れ場のサイズを有
限のサイズとすることで、流体シミュレーションの処理
負荷を軽減する。より具体的には、オブジェクト空間内
に配置されるプリミティブのうち、オブジェクト空間に
設定された場(流れ場又は流れ場の影響を受けた仮想
場)の中に位置するプリミティブに当該場を反映させ
る。さらに、本実施形態では、オブジェクト空間に設定
された場の外に位置するプリミティブにも当該場を反映
させることで、流体シミュレーション対象の流れ場のサ
イズを大きくすることなく、処理負荷を軽減し、流体シ
ミュレーションのリアルタイム処理を可能としている。
【0260】以下この点について、パーティクルを例に
説明する。
【0261】場の状態を参照するパーティクル(パーテ
ィクル・プリミティブ)については、場の中と外のパー
ティクルに対して、以下のように取り扱うことで、処理
負荷の軽減を実現し、位置や状態(寿命、色、透明度な
どパーティクルに関連付けられる情報)の変化が不自然
とならないようにすることができる。
【0262】すなわち、オブジェクト空間に設定された
場内のパーティクルに対しては、場の情報又は該場の影
響を受けた情報に基づいて、パーティクルの位置や状態
を変化させる。一方、オブジェクト空間に設定された場
の外に出たパーティクルに対しては、場の外に出た時点
の場の情報又は該場の影響を受けた情報(例えば速度ベ
クトル)に従って、位置や状態を変化させる。
【0263】この場合、場の中と外のパーティクルは、
発生地点からの発生時間に応じた寿命計算が行われる
が、その位置や状態の変化に場の情報又は該場の影響を
受けた情報が用いられるか否かが異なる。
【0264】図19(A)、(B)に、流れ場HFの外
に出たパーティクルについて説明するための図を模式的
に示す。
【0265】上述したように、パーティクルPT0は、
所与のパーティクル発生地点からの発生時間に従って寿
命計算が行われるが、流れ場HFの中ではパーティクル
PT 0は流れ場の情報に基づいて、位置や状態が変化す
る。そして、流れ場HFの外に出た時点の流れ場情報に
基づいて決まるパーティクルPT0の情報(例えば速度
ベクトルFV0)を引き継ぐ。したがって、流れ場HF
の外では流れ場情報を参照することなく、例えば速度ベ
クトルFV0に従ってパーティクルPT0の位置を変化さ
せる。この際、パーティクルPT0の寿命が尽きたとき
には、パーティクルPT0を消滅させる。
【0266】或いは、例えば流れ場HFの最寄りの格子
点の流れ場情報を参照して、パーティクルPT0の位置
や状態を変化させる場合には、図19(B)に示すよう
に、流れ場HFの外に出たパーティクルPT0は、流れ
場HFの外に出た時点の流れ場情報に基づいて決まるパ
ーティクルPT0の情報(例えば速度ベクトルFV0)を
引き継ぎ、流れ場HFの外では最寄りの格子点GPM
流れ場情報のみを参照して求められた速度ベクトルFV
0´により、次の瞬間(フレーム)の位置や情報を定め
るようにしてもよい。また、最寄りの格子点GPM-1
GPM、GPM+1の3点の流れ場情報の比を参照して求め
られた速度ベクトルFV0´により、位置や状態を定め
るようにしてもよい。
【0267】図20に、流れ場HFを離れたパーティク
ルによるオブジェクト画像の一例を示す。
【0268】例えば、焚き火の炎を表現する場合、流れ
場HFを離れたパーティクルPTは、流れ場HFを離れ
た時点の速度ベクトルに従って移動する。このとき、パ
ーティクルPTに配置されるスプライトポリゴンは、黒
い煙を表したポリゴンがマッピングされ、やがて寿命が
尽きたときに消滅するようになっている。
【0269】こうすることで、流体シミュレーションに
より得られた流れ場内では、流れ場の各格子点ごとに求
められた流れ場情報に基づいてパーティクルの位置や状
態を変化させることができ、流れ場外では流れ場内の情
報を引き継いでそのままパーティクルの位置や状態を変
化させることができる。したがって、流れ場のサイズを
小さくし、この流れ場に基づいて表されるパーティクル
による自然現象を表す画像生成のリアルタイム処理の処
理負荷を、軽減することができるようになる。
【0270】ここでは、流れ場の情報を反映させるもの
として説明したが、該流れ場の影響を受けた情報を反映
させる場合も同様である。
【0271】2.6.1 流れ場の情報の引継ぎの処理
例 図21に、パーティクルの位置や状態を変化させる処理
の一例を示す。
【0272】まず、プリミティブ処理部120は、パー
ティクル(パーティクル・プリミティブ)の寿命や、発
生個数などパーティクル・プリミティブに付随する情報
を初期化する(ステップS90)。
【0273】次に、所与の発生地点から、パーティクル
を発生させる(ステップS91)。焚き火の炎を表現す
る場合、焚き火の炎の中心をパーティクルの発生位置と
することができる。
【0274】パーティクルがオブジェクト空間内に設定
された流れ場HF内にあるとき(ステップS92:
Y)、パーティクルに流れ場の情報を与え、パーティク
ルの位置及び状態を更新する(ステップS93)。より
具体的には、各格子点の流れ場情報に基づいて、パーテ
ィクルの速度ベクトルや色、透明度を更新する。
【0275】また、パーティクルが流れ場HF外にある
とき(ステップS92:N)、パーティクルが流れ場H
Fの外に出た時点の流れ場情報を用いて、パーティクル
の位置及び状態を更新する(ステップS94)。より具
体的には、パーティクルが流れ場HFの外に出たとき
は、流れ場HFの流れ場情報を参照することなく、パー
ティクルが流れ場HFの外に出た時点の流れ場情報のみ
をもって、例えばパーティクルの速度ベクトルや色、透
明度を更新する。
【0276】なお、ここでは流れ場HFの外に出たパー
ティクルは、流れ場の情報を参照することなく位置や状
態が更新されるものとしているが、例えば図19(B)
に示したように流れ場HFの最寄りの格子点の流れ場情
報を参照して、その位置や状態を更新するようにしても
よく、表現しようとするものに応じて適宜選択されるも
のである。
【0277】ステップS93或いはステップS94にお
いて、位置及び状態が更新されたパーティクルは、寿命
判定が行われて、寿命が更新される(ステップS9
5)。
【0278】寿命が尽きたと判定されたとき(ステップ
S96:Y)、当該パーティクルを消滅させる処理を行
い、寿命が尽きていないと判定されたとき(ステップS
96:N)、ステップS92に戻って再びパーティクル
の位置及び状態の更新が行われる。
【0279】以上のようにすることで、流体シミュレー
ションにより得られた流れ場内では、流れ場の各格子点
ごとに求められた流れ場情報に基づいてパーティクルの
位置や状態を変化させることができ、流れ場外では流れ
場内の情報を引き継いでそのままパーティクルの位置や
状態を変化させることができる。したがって、図20に
示すように流れ場に基づいて表されるパーティクルによ
る自然現象を表す画像生成のリアルタイム処理の処理負
荷を、さらに軽減することができるようになる。
【0280】なお、上記したパーティクルについては、
流れ場を適用する場合について説明したが、これに限定
されるものではなく、例えば該流れ場の影響を受けた仮
想場を適用する場合も同様である。
【0281】2.7 本実施形態の適用例 これまで説明したような本実施形態における流れ場につ
いては、例えばオブジェクト空間の移動オブジェクトに
追従して設定し、インタラクティブに発生する外因を反
映させたエフェクト効果を与えることができる。
【0282】図22に、このような本実施形態における
移動オブジェクトに追従して設定される流れ場について
説明するための図を示す。
【0283】ここでは、移動オブジェクトとしての車オ
ブジェクトCOBJMに追従して、車オブジェクトCO
BJMの後輪の後方側の地面上に、流れ場HFM又は該
流れ場の影響を受けた仮想場を設定するようにしてい
る。より具体的には、2次元の流れ場HFM又は該流れ
場の影響を受けた仮想場を、地面オブジェクト表面上
に、移動オブジェクトの後方側にマッピングする。
【0284】車オブジェクトCOBJMが前方に進む
と、車オブジェクトCOBJMの後方側に車体の移動や
タイヤの回転などによって砂埃や土煙などが舞い上がる
様子を表現する場合を考える。
【0285】この場合、流れ場HFMにおいて、流体シ
ミュレーションにより、車体の移動方向、移動速度等に
よる外因を反映させることで、場の情報を更新し、例え
ば砂埃オブジェクトSOBJの速度ベクトルが得られ
る。
【0286】このとき、2次元のXY平面上について
は、流体シミュレーションにより求められた場の情報を
用いて、砂埃オブジェクトSOBJの位置や状態を変化
させ、高さ方向については別個の計算式(例えば、重力
を加味した自由落下の計算式)で砂埃オブジェクトSO
BJがゆっくり地面に落ちるように設定することができ
る。
【0287】したがって、流れ場HFMの場の情報に基
づき、例えば砂埃オブジェクトSOBJ等の位置若しく
は色情報等を変化させることができ、これまで表現がで
きなかった車の走行風により舞い上がる砂埃や落ち葉を
表現する画像を、リアルタイムに生成することができ
る。
【0288】この場合、常に車オブジェクトCOBJM
の後方側に流れ場が設定されるように、車オブジェクト
COBJMの位置に応じて設定する流れ場のサイズを変
更した流れ場HFM´を設定するようにしてもよい。
【0289】これにより、移動する車オブジェクトCO
BJMの移動方向、移動速度に応じた砂埃等のエフェク
ト画像の生成を実現することができる。
【0290】なお、車オブジェクトCOBJMが走行す
る地面の性質(アスファルトの道路や、砂利道といった
道路の性質)に応じて流れ場を変更したり、地面の形状
(道路の凸凹)に合わせて流れ場を設定することもでき
る。
【0291】このように、本実施形態によれば、単調な
砂埃等の表現を回避し、移動オブジェクトの移動の仕方
や、地面の性質の影響を反映した移動オブジェクトの後
方に発生する砂埃等を表現する画像をリアルタイムで生
成することができる。
【0292】3. ハードウェア構成 次に、本実施形態を実現できるハードウェアの構成の一
例について図23を用いて説明する。
【0293】メインプロセッサ900は、CD982
(情報記憶媒体)に格納されたプログラム、通信インタ
ーフェース990を介して転送されたプログラム、或い
はROM950(情報記憶媒体の1つ)に格納されたプ
ログラムなどに基づき動作し、ゲーム処理、画像処理、
音処理などの種々の処理を実行する。
【0294】コプロセッサ902は、メインプロセッサ
900の処理を補助するものであり、高速並列演算が可
能な積和算器や除算器を有し、マトリクス演算(ベクト
ル演算)を高速に実行する。例えば、オブジェクトを移
動させたり動作(モーション)させるための物理シミュ
レーションに、マトリクス演算などの処理が必要な場合
には、メインプロセッサ900上で動作するプログラム
が、その処理をコプロセッサ902に指示(依頼)す
る。
【0295】ジオメトリプロセッサ904は、座標変
換、透視変換、光源計算、曲面生成などのジオメトリ処
理を行うものであり、高速並列演算が可能な積和算器や
除算器を有し、マトリクス演算(ベクトル演算)を高速
に実行する。例えば、座標変換、透視変換、光源計算な
どの処理を行う場合には、メインプロセッサ900で動
作するプログラムが、その処理をジオメトリプロセッサ
904に指示する。
【0296】データ伸張プロセッサ906は、圧縮され
た画像データや音データを伸張するデコード処理を行っ
たり、メインプロセッサ900のデコード処理をアクセ
レートする処理を行う。これにより、オープニング画
面、インターミッション画面、エンディング画面、或い
はゲーム画面などにおいて、所与の画像圧縮方式で圧縮
された動画像を表示できるようになる。なお、デコード
処理の対象となる画像データや音データは、ROM95
0、CD982に格納されたり、或いは通信インターフ
ェース990を介して外部から転送される。
【0297】描画プロセッサ910は、ポリゴンや曲面
などのプリミティブ面で構成されるオブジェクトの描画
(レンダリング)処理を高速に実行するものである。オ
ブジェクトの描画の際には、メインプロセッサ900
は、DMAコントローラ970の機能を利用して、オブ
ジェクトデータを描画プロセッサ910に渡すととも
に、必要であればテクスチャ記憶部924にテクスチャ
を転送する。すると、描画プロセッサ910は、これら
のオブジェクトデータやテクスチャに基づいて、Zバッ
ファなどを利用した陰面消去を行いながら、オブジェク
トをフレームバッファ922に高速に描画する。また、
描画プロセッサ910は、痺uレンディング(半透明処
理)、デプスキューイング、ミップマッピング、フォグ
処理、トライリニア・フィルタリング、アンチエリアシ
ング、シェーディング処理なども行うことができる。そ
して、1フレーム分の画像がフレームバッファ922に
書き込まれると、その画像はディスプレイ912に表示
される。
【0298】サウンドプロセッサ930は、多チャンネ
ルのADPCM音源などを内蔵し、BGM、効果音、音
声などの高品位のゲーム音を生成する。生成されたゲー
ム音は、スピーカ932から出力される。
【0299】ゲームコントローラ942からの操作デー
タや、メモリカード944からのセーブデータ、個人デ
ータは、シリアルインターフェース940を介してデー
タ転送される。
【0300】ROM950にはシステムプログラムなど
が格納される。なお、業務用ゲームシステムの場合に
は、ROM950が情報記憶媒体として機能し、ROM
950に各種プログラムが格納されることになる。な
お、ROM950の代わりにハードディスクを利用する
ようにしてもよい。
【0301】RAM960は、各種プロセッサの作業領
域として用いられる。
【0302】DMAコントローラ970は、プロセッ
サ、メモリ(RAM、VRAM、ROM等)間でのDM
A転送を制御するものである。
【0303】CDドライブ980は、プログラム、画像
データ、或いは音データなどが格納されるCD982
(情報記憶媒体)を駆動し、これらのプログラム、デー
タへのアクセスを可能にする。
【0304】通信インターフェース990は、ネットワ
ークを介して外部との間でデータ転送を行うためのイン
ターフェースである。この場合に、通信インターフェー
ス990に接続されるネットワークとしては、通信回線
(アナログ電話回線、ISDN)、高速シリアルバスな
どを考えることができる。そして、通信回線を利用する
ことでインターネットを介したデータ転送が可能にな
る。また、高速シリアルバスを利用することで、他のゲ
ームシステムとの間でのデータ転送が可能になる。
【0305】なお、本発明の各手段は、その全てを、ハ
ードウェアのみにより実行してもよいし、情報記憶媒体
に格納されるプログラムや通信インターフェースを介し
て配信されるプログラムのみにより実行してもよい。或
いは、ハードウェアとプログラムの両方により実行して
もよい。
【0306】そして、本発明の各手段をハードウェアと
プログラムの両方により実行する場合には、情報記憶媒
体には、本発明の各手段をハードウェアを利用して実行
するためのプログラムが格納されることになる。より具
体的には、上記プログラムが、ハードウェアである各プ
ロセッサ902、904、906、910、930等に
処理を指示するとともに、必要であればデータを渡す。
そして、各プロセッサ902、904、906、91
0、930等は、その指示と渡されたデータとに基づい
て、本発明の各手段を実行することになる。
【0307】図24(A)に、本実施形態を業務用ゲー
ムシステムに適用した場合の例を示す。プレーヤは、デ
ィスプレイ1100上に映し出されたゲーム画像を見な
がら、レバー1102、ボタン1104等を操作してゲ
ームを楽しむ。内蔵されるシステムボード(サーキット
ボード)1106には、各種プロセッサ、各種メモリな
どが実装される。そして、本発明の各手段を実行するた
めの情報(プログラム或いはデータ)は、システムボー
ド1106上の情報記憶媒体であるメモリ1108に格
納される。以下、この情報を格納情報と呼ぶ。
【0308】図24(B)に、本実施形態を家庭用のゲ
ームシステムに適用した場合の例を示す。プレーヤはデ
ィスプレイ1200に映し出されたゲーム画像を見なが
ら、ゲームコントローラ1202、1204を操作して
ゲームを楽しむ。この場合、上記格納情報は、本体シス
テムに着脱自在な情報記憶媒体であるCD1206、或
いはメモリカード1208、1209等に格納されてい
る。
【0309】図24(C)に、ホスト装置1300と、
このホスト装置1300とネットワーク1302(LA
Nのような小規模ネットワークや、インターネットのよ
うな広域ネットワーク)を介して接続される端末130
4-1〜1304-nとを含むシステムに本実施形態を適用
した場合の例を示す。この場合、上記格納情報は、例え
ばホスト装置1300が制御可能な磁気ディスク装置、
磁気テープ装置、メモリ等の情報記憶媒体1306に格
納されている。端末1304-1〜1304-nが、スタン
ドアロンでゲーム画像、ゲーム音を生成できるものであ
る場合には、ホスト装置1300からは、ゲーム画像、
ゲーム音を生成するためのゲームプログラム等が端末1
304-1〜1304-nに配送される。一方、スタンドア
ロンで生成できない場合には、ホスト装置1300がゲ
ーム画像、ゲーム音を生成し、これを端末1304-1〜
1304-nに伝送し端末において出力することになる。
【0310】なお、図24(C)の構成の場合に、本発
明の各手段を、ホスト装置(サーバ)と端末とで分散し
て実行するようにしてもよい。また、本発明の各手段を
実行するための上記格納情報を、ホスト装置(サーバ)
の情報記憶媒体と端末の情報記憶媒体に分散して格納す
るようにしてもよい。
【0311】またネットワークに接続する端末は、家庭
用ゲームシステムであってもよいし業務用ゲームシステ
ムであってもよい。そして、業務用ゲームシステムをネ
ットワークに接続する場合には、業務用ゲームシステム
との間で情報のやり取りが可能であるとともに家庭用ゲ
ームシステムとの間でも情報のやり取りが可能な携帯型
情報記憶装置(メモリカード、携帯型ゲーム装置)を用
いることが望ましい。
【0312】なお本発明は、上記実施形態で説明したも
のに限らず、種々の変形実施が可能である。
【0313】例えば、本実施形態では流体シミュレーシ
ョン演算を主に例にとり説明したが、本発明のシミュレ
ーション演算は流体シミュレーション演算に限定されな
い。また、流れ場に限定されず、本発明は種々の物理量
に関する場に適用できる。
【0314】また、シミュレーション演算の手法も図2
〜図6で説明した手法に限定されず、Navier-Stokes方
程式とは異なる方程式に基づいてシミュレーション演算
を行ってもよい。
【0315】また本実施の形態ではベクトル場に属する
点として格子点を例にとり説明したがこれに限られな
い。格子状に並んでいない点でもよい。
【0316】さらに、本実施形態において、流れ場(流
れ場情報)を適用できるものは、同様の手法で該流れ場
の影響を受けた仮想場(該流れ場の影響を受けた情報)
を適用することができる。また、流れ場の影響を受けた
仮想場(流れ場の影響を受けた情報)を適用できるもの
は、同様の手法で該流れ場(該流れ場の情報)を適用す
ることができる。
【0317】また、本発明のうち従属請求項に係る発明
においては、従属先の請求項の構成要件の一部を省略す
る構成とすることもできる。また、本発明の1の独立請
求項に係る発明の要部を、他の独立請求項に従属させる
こともできる。
【0318】また本発明は種々のゲーム(格闘ゲーム、
シューティングゲーム、ロボット対戦ゲーム、スポーツ
ゲーム、競争ゲーム、ロールプレイングゲーム、音楽演
奏ゲーム、ダンスゲーム等)に適用できる。
【0319】また本発明は、業務用ゲームシステム、家
庭用ゲームシステム、多数のプレーヤが参加する大型ア
トラクションシステム、シミュレータ、マルチメディア
端末、ゲーム画像を生成するシステムボード等の種々の
画像生成システム(ゲームシステム)に適用できる。
【図面の簡単な説明】
【図1】本実施形態の画像生成システムの機能ブロック
図の例である。
【図2】流体シミュレーションを行う際の手順について
説明するための模式図である。
【図3】流体シミュレーションを行う際の手順について
説明するためのフローチャートである。
【図4】図4(A)、(B)、(C)は、流れ場に対し
て外力に対応した速度ベクトルを与えた場合の場の状態
変化を模式的に表した図である。
【図5】境界条件について説明するための図である。
【図6】図6(A)、(B)、(C)は、具体的な計算
例としてキャビティ問題について説明するための図であ
る。
【図7】本実施形態における2次元の流れ場と3次元の
オブジェクト空間との関係を模式的に示す説明図であ
る。
【図8】2次元の流れ場を焚き火の炎の表現に適用した
場合のオブジェクト画像の一例を示す図である。
【図9】本実施形態における流れ場を、オブジェクトの
法線ベクトルの向きや大きさに反映させる場合について
説明するための模式図を示す。
【図10】本実施形態におけるスプライトポリゴンと仮
想カメラとの関係を模式的に示す説明図である。
【図11】本実施形態におけるスプライトポリゴンが配
置されたオブジェクト空間の画像の一例を示す図であ
る。
【図12】本実施形態におけるスプライトポリゴンの配
置の一例を模式的に示す説明図である。
【図13】本実施形態における2次元の流れ場を3次元
に適用する処理の一例を示すフローチャートである。
【図14】本実施形態におけるパーティクルに配置され
るスプライトポリゴンの配置処理の一例を示すフローチ
ャートである。
【図15】本実施形態において、オブジェクトにマッピ
ングされる場を模式的に示す説明図である。
【図16】本実施形態において、オブジェクトに対して
行われる2次元の流れ場のUVマッピングについて説明
するための図である。
【図17】オブジェクト表面に流れ場HFがマッピング
されたオブジェクト画像の一例を示す図である。
【図18】本実施形態における流れ場の可変制御につい
て説明するための説明図である。
【図19】図19(A)、(B)は、流れ場の外に出た
パーティクルについて模式的に示す説明図である。
【図20】本実施形態における流れ場を離れたパーティ
クルによるオブジェクト画像の一例を示す図である。
【図21】本実施形態におけるパーティクルの位置や状
態を変化させる処理の一例を示すフローチャートであ
る。
【図22】本実施形態において移動オブジェクトに追従
して流れ場を設定する処理の一例を示すフローチャート
である。
【図23】本実施形態を実現できるハードウェアの構成
の一例を示す図である。
【図24】図24(A)、(B)、(C)は、本実施形
態が適用される種々の形態のシステムの例を示す図であ
る。
【符号の説明】
100 処理部 110 シミュレーション演算部 115 場設定部 120 プリミティブ処理部 125 処理監視部 140 画像生成部 150 音生成部 160 操作部 170 記憶部 180 情報記憶媒体 190 表示部 192 音出力部 194 携帯型情報記憶装置 196 通信部 EFV 外力(速度ベクトル) HF、HFM、HFX1〜HFX3 流れ場
フロントページの続き Fターム(参考) 2C001 AA03 AA06 AA11 AA14 AA16 BA02 BA04 BA05 BA06 BB01 BB02 BB03 BB04 BC01 BC03 BC04 BC05 BC06 CA02 CB01 CB02 CB04 CB06 CB08 CC01 CC08 DA04 5B050 BA08 BA09 BA11 EA24

Claims (19)

    【特許請求の範囲】
  1. 【請求項1】 画像生成を行う画像生成システムであっ
    て、 2次元のシミュレーション空間の各点での流体の動作又
    は状態を示す流れ場情報をシミュレーション演算により
    求めるシミュレーション演算手段と、 前記流れ場情報を用いて、3次元のオブジェクト空間に
    配置されるプリミティブの位置及び前記プリミティブに
    関連付けられる情報のうち少なくとも1つを求めて該プ
    リミティブに反映させるプリミティブ処理手段と、 前記オブジェクト空間の所与の視点から見える前記プリ
    ミティブの画像を生成する手段と、 を含むことを特徴とする画像生成システム。
  2. 【請求項2】 請求項1において、 前記プリミティブ処理手段は、 前記流れ場情報を用いて、前記オブジェクト空間に配置
    されるプリミティブの構成点又は制御点の位置、及び前
    記構成点又は制御点に関連付けられる情報のうち少なく
    とも1つを求めて該プリミティブに反映させることを特
    徴とする画像生成システム。
  3. 【請求項3】 請求項1において、 前記プリミティブ処理手段は、 前記流れ場情報を用いて、前記オブジェクト空間に配置
    されるプリミティブに関連付けられた法線ベクトルの向
    き及び大きさのうち少なくとも1つを求めて該プリミテ
    ィブに反映させることを特徴とする画像生成システム。
  4. 【請求項4】 請求項1において、 前記プリミティブ処理手段は、 前記流れ場情報を用いて、前記オブジェクト空間に配置
    されるパーティクルの位置及び前記パーティクルに関連
    付けられる情報のうち少なくとも1つを求めて該プリミ
    ティブに反映させることを特徴とする画像生成システ
    ム。
  5. 【請求項5】 請求項4において、 所与の視点を向くプリミティブ面を、パーティクルに割
    り当てる手段を含むことを特徴とする画像生成システ
    ム。
  6. 【請求項6】 請求項5において、 各パーティクルに割り当てたプリミティブ面の奥行き情
    報を、互いにずらして設定することを特徴とする画像生
    成システム。
  7. 【請求項7】 請求項1乃至6のいずれかにおいて、 オブジェクト空間内に設定された前記流れ場の外のプリ
    ミティブに対し、前記流れ場に基づいて前記プリミティ
    ブの位置及び前記プリミティブに関連付けられる情報の
    うち少なくとも1つを求める手段を含むことを特徴とす
    る画像生成システム。
  8. 【請求項8】 請求項7において、 前記流れ場を離れたプリミティブに対し、流れ場を離れ
    る際の流れ場情報を用いて、前記プリミティブの位置及
    び前記プリミティブに関連付けられる情報のうち少なく
    とも1つを求めて該プリミティブに反映させることを特
    徴とする画像生成システム。
  9. 【請求項9】 請求項7において、 オブジェクト空間内に設定された前記流れ場の外のプリ
    ミティブに対し、前記プリミティブから最寄りの前記シ
    ミュレーション空間の点に設定された流れ場情報を用い
    て、前記プリミティブの位置及び前記プリミティブに関
    連付けられる情報のうち少なくとも1つを求めて該プリ
    ミティブに反映させることを特徴とする画像生成システ
    ム。
  10. 【請求項10】 2次元のシミュレーション空間の各点
    での流体の動作又は状態を示す流れ場情報をシミュレー
    ション演算により求めるシミュレーション演算手段と、 前記流れ場情報を用いて、3次元のオブジェクト空間に
    配置されるプリミティブの位置及び前記プリミティブに
    関連付けられる情報のうち少なくとも1つを求めるプリ
    ミティブ処理手段と、 前記オブジェクト空間の所与の視点から見える前記プリ
    ミティブの画像を生成する手段としてコンピュータを機
    能させることを特徴とするプログラム。
  11. 【請求項11】 請求項10において、 前記プリミティブ処理手段は、 前記流れ場情報を用いて、前記オブジェクト空間に配置
    されるプリミティブの構成点又は制御点の位置、及び前
    記構成点又は制御点に関連付けられる情報のうち少なく
    とも1つを求めて該プリミティブに反映させることを特
    徴とするプログラム。
  12. 【請求項12】 請求項10において、 前記プリミティブ処理手段は、 前記流れ場情報を用いて、前記オブジェクト空間に配置
    されるプリミティブに関連付けられた法線ベクトルの向
    き及び大きさのうち少なくとも1つを求めて該プリミテ
    ィブに反映させることを特徴とするプログラム。
  13. 【請求項13】 請求項10において、 前記プリミティブ処理手段は、 前記流れ場情報を用いて、前記オブジェクト空間に配置
    されるパーティクルの位置及び前記パーティクルに関連
    付けられる情報のうち少なくとも1つを求めて該プリミ
    ティブに反映させることを特徴とするプログラム。
  14. 【請求項14】 請求項13おいて、 所与の視点を向くプリミティブ面を、パーティクルに割
    り当てる手段を含むことを特徴とするプログラム。
  15. 【請求項15】 請求項14において、 各パーティクルに割り当てられたプリミティブ面の奥行
    き情報を、互いにずらして設定することを特徴とするプ
    ログラム。
  16. 【請求項16】 請求項10乃至15のいずれかにおい
    て、 オブジェクト空間内に設定された前記流れ場の外のプリ
    ミティブに対し、前記流れ場に基づいて前記プリミティ
    ブの位置及び前記プリミティブに関連付けられる情報の
    うち少なくとも1つを求めて該プリミティブに反映させ
    る手段としてコンピュータを機能させることを特徴とす
    るプログラム。
  17. 【請求項17】 請求項16において、 前記流れ場を離れたプリミティブに対し、流れ場を離れ
    る際の流れ場情報を用いて、前記プリミティブの位置及
    び前記プリミティブに関連付けられる情報のうち少なく
    とも1つを求めて該プリミティブに反映させることを特
    徴とするプログラム。
  18. 【請求項18】 請求項16において、 オブジェクト空間内に設定された前記流れ場の外のプリ
    ミティブに対し、前記プリミティブから最寄りの前記シ
    ミュレーション空間の点に設定された流れ場情報を用い
    て、前記プリミティブの位置及び前記プリミティブに関
    連付けられる情報のうち少なくとも1つを求めて該プリ
    ミティブに反映させることを特徴とするプログラム。
  19. 【請求項19】 コンピュータにより読み取り可能な情
    報記憶媒体であって、請求項10乃至18のいずれかの
    プログラムを記憶することを特徴とする情報記憶媒体。
JP2001282146A 2001-09-17 2001-09-17 画像生成システム、プログラム及び情報記憶媒体 Withdrawn JP2003091738A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001282146A JP2003091738A (ja) 2001-09-17 2001-09-17 画像生成システム、プログラム及び情報記憶媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001282146A JP2003091738A (ja) 2001-09-17 2001-09-17 画像生成システム、プログラム及び情報記憶媒体

Publications (1)

Publication Number Publication Date
JP2003091738A true JP2003091738A (ja) 2003-03-28

Family

ID=19105840

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001282146A Withdrawn JP2003091738A (ja) 2001-09-17 2001-09-17 画像生成システム、プログラム及び情報記憶媒体

Country Status (1)

Country Link
JP (1) JP2003091738A (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101170909B1 (ko) 2010-01-28 2012-08-03 (주)에프엑스기어 이동 그리드를 이용한 유체 시뮬레이션 시스템 및 방법
JP2013061882A (ja) * 2011-09-14 2013-04-04 Fujitsu Ltd 描画装置、描画方法及び描画プログラム
JP2014044596A (ja) * 2012-08-27 2014-03-13 Toppan Printing Co Ltd 画像生成装置、及び画像生成プログラム
KR20140051035A (ko) * 2012-10-19 2014-04-30 연세대학교 산학협력단 영상 부호화 방법 및 장치
KR20160114818A (ko) * 2015-03-25 2016-10-06 (주) 지오씨엔아이 홍수 범람 시뮬레이션을 위한 실시간 카메라 시점 이동에 따른 3차원 모델링 및 렌더링 자동화 방법
JP2017148208A (ja) * 2016-02-24 2017-08-31 株式会社カプコン ゲームプログラムおよびゲームシステム
JP2017148206A (ja) * 2016-02-24 2017-08-31 株式会社カプコン ゲームプログラムおよびゲームシステム
CN110008387A (zh) * 2019-04-16 2019-07-12 成都四方伟业软件股份有限公司 流场可视化实现方法、装置及电子设备

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101170909B1 (ko) 2010-01-28 2012-08-03 (주)에프엑스기어 이동 그리드를 이용한 유체 시뮬레이션 시스템 및 방법
JP2013061882A (ja) * 2011-09-14 2013-04-04 Fujitsu Ltd 描画装置、描画方法及び描画プログラム
US9324187B2 (en) 2011-09-14 2016-04-26 Fujitsu Limited Visualization apparatus and method
JP2014044596A (ja) * 2012-08-27 2014-03-13 Toppan Printing Co Ltd 画像生成装置、及び画像生成プログラム
KR20140051035A (ko) * 2012-10-19 2014-04-30 연세대학교 산학협력단 영상 부호화 방법 및 장치
KR102091860B1 (ko) 2012-10-19 2020-03-20 연세대학교 산학협력단 영상 부호화 방법 및 장치
KR20160114818A (ko) * 2015-03-25 2016-10-06 (주) 지오씨엔아이 홍수 범람 시뮬레이션을 위한 실시간 카메라 시점 이동에 따른 3차원 모델링 및 렌더링 자동화 방법
KR101674378B1 (ko) 2015-03-25 2016-11-10 (주) 지오씨엔아이 홍수 범람 시뮬레이션을 위한 실시간 카메라 시점 이동에 따른 3차원 모델링 및 렌더링 자동화 방법
JP2017148208A (ja) * 2016-02-24 2017-08-31 株式会社カプコン ゲームプログラムおよびゲームシステム
JP2017148206A (ja) * 2016-02-24 2017-08-31 株式会社カプコン ゲームプログラムおよびゲームシステム
CN110008387A (zh) * 2019-04-16 2019-07-12 成都四方伟业软件股份有限公司 流场可视化实现方法、装置及电子设备

Similar Documents

Publication Publication Date Title
JP4651435B2 (ja) プログラム、情報記憶媒体及び画像生成システム
JP4771821B2 (ja) プログラム、情報記憶媒体、及び画像生成システム
EP2158948A2 (en) Image generation system, image generation method, and information storage medium
JP4527853B2 (ja) ゲームシステム及び情報記憶媒体
JP2003091738A (ja) 画像生成システム、プログラム及び情報記憶媒体
JP4734137B2 (ja) プログラム、情報記憶媒体及び画像生成システム
JP4776017B2 (ja) プログラム、情報記憶媒体、及び画像生成システム
JP2003091740A (ja) 画像生成システム、プログラム及び情報記憶媒体
JP2002222435A (ja) 画像生成システム、プログラム及び情報記憶媒体
US7106324B1 (en) Image generating system and program
JP3576126B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP4743733B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP4408681B2 (ja) プログラム、情報記憶媒体、及び画像生成システム
JP2003091739A (ja) 画像生成システム、プログラム及び情報記憶媒体
JP3420985B2 (ja) ゲームシステム及び情報記憶媒体
JP2002222434A (ja) ゲームシステム、プログラム及び情報記憶媒体
JP2006285510A (ja) プログラム、情報記憶媒体及び画像生成システム
JP4488346B2 (ja) プログラム、情報記憶媒体、及び画像生成システム
JP4592087B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP2003091741A (ja) 画像生成システム、プログラム及び情報記憶媒体
JP2007226575A (ja) プログラム、情報記憶媒体及び画像生成システム
JP3431562B2 (ja) ゲームシステム及び情報記憶媒体
JP6863678B2 (ja) プログラム及びゲーム装置
JP3442336B2 (ja) ゲームシステム及び情報記憶媒体
JP4803909B2 (ja) 画像生成システム、プログラム及び情報記憶媒体

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20081202