【Unity】シェーダグラフで炎(火)を作ってみた!
おはようございます。おーみんです。
シェーダグラフで炎を作ってみた!
Unityで芥川龍之介の「魔術」の一部をムービーで再現出来るかチャレンジしてみようと思います。
— 超おーみん3@Unity民族 (@Ooooooomin_365) 2019年4月10日
場面は暖炉の中の石炭を金貨に変えるシーン。とりあえず今日はシェーダグラフで炎の作成とステージ作成。
明日は会話イベントとカメラ配置をやろうと思います。#unity #shadergraph #unity3d pic.twitter.com/1QUdCLe3G5
現在Unityで芥川龍之介の「魔術」の一部をムービーで再現しようとチャレンジ中です。
今回の記事では、その一部シーンで用いる暖炉の火の作り方をご紹介致します。
シェーダグラフの解説
シェーダグラフの中身はこんな感じです。
まず火のテクスチャを用意しましょう。
僕は以下の無料アセットからテクスチャを用意しました。
緑色の枠では上記掲載サイトからインポートした火のテクスチャを設定し、Tiling And Offsetノードで適切な位置に調節します(個人的にはTilingのXの値が0.25、Yの値を0.3とすると良い感じになるかと思いますが、その部分はご自身の好きな炎を選んで調節してください)。
そしてその範囲内でループするようにLerpノードを前に繋げます。
赤色の枠と青色の枠ではそれぞれGradient NoiseノードとVoronoiノードを用いて炎の揺れを作っています。
Sceneビュー上でQuadオブジェクトを新規作成してマテリアルを貼りましょう。火の輝きや大きさ、揺れなどの細かなパラメータはご自身で好きなように設定してください(上写真のシェーダグラフ通りに設定するとインスペクター上にてそれらのパラメータ設定が行えるはずです)。
最後に
ということで、今回はシェーダグラフを用いて炎を表現しました。