Particleシステムによる炎の表現

菅 香織

 コンピュータ・グラフィックスでモデルを作成する際、プリミテ ィブ面(単純な面)の作成や操作が必要になる。モデルは通常、単 純な面(多角形、球、円柱など)からできており、そのような面を 組み合わせて複雑な対象物ができる。この面には、大きく分けると 2種類あり、開いた面と閉じた面である。開いた面には上と下(ま たは表と裏、左と右など)、閉じた面には外側と内側だけがあり、 閉じた面は、より小さな開いた面を集めて作成する事ができる。  しかし、対象物の中には、当然の事ながら、開いた面と閉じた面 のどちらの分類にも属さないものが存在する。そのひとつが自然現 象である。雲や滝、炎など、面に属さない自然をシミュレートする のは、非常に困難である。なんとか対象物と言えるような複雑なも のを数多く作り、しかもモデリングをほとんど手作業で行っている のが現状である。
 そこで、本研究では面によって構成されていないものを表現する ために、パーティクルシステムと呼ばれる粒子の集合により物体を 表現する手法を取り入れることにした。選んだ対象は炎であるが、 よりリアルな表現を行うためには対象物について文献を調べ、形状 や動きの様子を調べる必要がある。しかし、こうした努力の結果、 一度リアルなモデルが作成されれば、次にそのモデルが必要なとき に始めから骨を折って描く必要はなくなる。
 炎はふつう、燃料ガスと酸素との反応から発生した高温ガスが上 昇するために、上方になびいた流線型をしている。また、燃料ガス が空気中に流出する時に生じる燃料ガスや空気の乱れが、炎の乱れ (揺らぎ)に影響を与えていると言われている。そこで、パーティ クルに対し、軌道、寿命、色の変化の情報を与え、炎の形状や揺ら ぎを表現しようと考えた。また、個々のパーティクルの動きが同じ であると不自然になってしまうので、軌道を決める際には、ランダ ム関数を用いてそれぞれのパーティクルが違った動きをみせるよう にし、さらに、炎の揺らぎの効果を取り入れた。また、点の色を変 化させる際には、高さだけに比例するわけではないので、ウィンド ウを分割し、炎の幅にも対応して変化させている
。  問題点として、実行時間の遅さからなるコマ送りのようなぎこち なさが挙げられるが、パーティクルの色が黒の時はそれを描かない ように条件を与えれば、ある程度解消されるのではないかと思う。 また、本来の目的である3次元での表現などが改良点として挙げら れる。
BACK