おーみんブログ

C#, ASP.NET Core, Unityが大好きです。

【Unity】シェーダグラフで炎(火)を作ってみた!

f:id:bookreadkun:20190411111942p:plain

おはようございます。おーみんです。

 

 

シェーダグラフで炎を作ってみた!

 

現在Unityで芥川龍之介の「魔術」の一部をムービーで再現しようとチャレンジ中です。

 

今回の記事では、その一部シーンで用いる暖炉の火の作り方をご紹介致します。

 

シェーダグラフの解説

シェーダグラフの中身はこんな感じです。

f:id:bookreadkun:20190411112500p:plain

 

まず火のテクスチャを用意しましょう。

僕は以下の無料アセットからテクスチャを用意しました。

assetstore.unity.com

 

緑色の枠では上記掲載サイトからインポートした火のテクスチャを設定し、Tiling And Offsetノードで適切な位置に調節します(個人的にはTilingのXの値が0.25、Yの値を0.3とすると良い感じになるかと思いますが、その部分はご自身の好きな炎を選んで調節してください)。

そしてその範囲内でループするようにLerpノードを前に繋げます。

 

赤色の枠青色の枠ではそれぞれGradient NoiseノードとVoronoiノードを用いて炎の揺れを作っています。

 

Sceneビュー上でQuadオブジェクトを新規作成してマテリアルを貼りましょう。火の輝きや大きさ、揺れなどの細かなパラメータはご自身で好きなように設定してください(上写真のシェーダグラフ通りに設定するとインスペクター上にてそれらのパラメータ設定が行えるはずです)。

 

最後に

ということで、今回はシェーダグラフを用いて炎を表現しました。