プロシージャルテクスチャで作る炎のアニメーションの作り方を紹介する。
シミュレーションで作らない分平面ぽくなるが、簡易的には使いやすい。
作り方としては、輪郭用マスクと模様用ノイズテクスチャを合成する。
もくじ
マスク
縦グラデーションと位置を調整した円状の放射グラデーションでマスクを作る。
グラデーション(縦)
炎が下から上に消えていくようにマスクを作る。
UV座標のYのみを分離することで、縦のグラデーションを得ることができる。
グラデーション(放射)
炎の輪郭を調整するマスクを作る。
グラデーションテクスチャの[放射]を使う。
これでは円状のグラデーションを使うことができる。
UV座標にすると左下に配置されるので、中央・下に動かす。
さらに、縦にスケールを付けることで、引き伸ばす。
これと縦グラデーションをRGBミックス[乗算]で合成する。
炎の模様を作る
炎の模様をノイズテクスチャで作る。
ノイズテクスチャの歪み値を加えたりすると炎ぽくなる。
RGBミックス[覆い焼きカラー]でマスクと重ねると上画像のようになる。
アニメーションさせる
ノイズテクスチャのマッピングノードの位置Yに以下のようなドライバーを設定することで、アニメーションさせることができる。
- #frame/4
色をつける・透過させる
作ったマスクを利用して、カラーランプで放射シェーダー用のカラーと透過シェーダー用マスクを作る。
画像のように下にも縦グラデーションを追加するとよりよい。
メッシュ
メッシュは、印象に合うように形状調整する。
同じメッシュを十字や「*」のように複製して配置すると、様々な角度から見てもある程度ポリゴン感がなくなる。
より炎をゆらゆらとさせたいのであれば、ディスプレイスメントモディファイアでメッシュに揺らぎを加えるのもよい。