Unity++blog.

UnityやC#とかについて学習したことを書いてます

ノーマルマップ一枚とシェーダグラフで水面を描く

自分で作成したノーマルマップで水面を作成してみました。

 

ノーマルマップはPhotoshopで「描画:雲」をしただけのめっちゃ簡単なものです。

そこからノーマルマップへの変換したのですがそれは以下記事に書きました。

これまた簡単です!

nabesi777.hatenablog.com

 

これを使ってこんな感じにシェーダグラフで水面を描きます。

穏やかな湖といったところでしょうか。

f:id:nabesi777:20181020191727g:plain

 

ノーマルマップのインスペクターの数値など、Bumpinessを好みで変えて水面の揺らぎの強弱を調整します。

f:id:nabesi777:20181021113632j:plain

 

シェーダグラフ全体像とシェーダグラフプロパティ(インスペクターで調整できるノード)と作成したシェーダグラフがアタッチされたマテリアルのインスペクター↓

 

▶全体像 上部分が色に関するノードで下半分が水面の揺らぎについてのノードです

f:id:nabesi777:20181021114603j:plain

 

▶シェーダグラフプロパティ(インスペクターで調整するのでインスペクターと数値の違いはあります。)

f:id:nabesi777:20181021114813j:plain

 

▶インスペクター

f:id:nabesi777:20181021115201j:plain

 

 

▶シェーダグラフの詳細 色部分

色は深みを出すために2つ用意して下図のように融合させています。

f:id:nabesi777:20181021115611j:plain

 

▶シェーダグラフの詳細 揺らぎ部分

こちらも単調にならないようにノーマルマップを拡大したものと2つ用意して組み合わせて使用しています。

f:id:nabesi777:20181021115934j:plain

 

 最後にインスペクターで細かく設定をして出来上がりです。color_1,color_2はそれぞれ白に近い薄い青色と、濃い緑色を設定しました。

f:id:nabesi777:20181021120256j:plain

 

f:id:nabesi777:20181021120623g:plain

 

 

できました!