Shader Graphでリムライトエフェクト【Unity】

前に作ったPBRマテリアルのシェーダーグラフにリムライトエフェクトを重ねがけする作り方をまとめました。
リムライトはオブジェクトのふちを光らせるエフェクトで、選択中のオブジェクトを目立たせたりキャラクターに特殊効果がかかっているのを表現したりするのに使えます。
定番のエフェクトなので、作っておくと色々な場面で活用できます!

事前準備

まずリムライトをかけたいLitのシェーダーグラフを用意します。
今回は、以前の記事で作ったスタンダードシェーダー風のシェーダーを使います。

追加エフェクトがない素の状態のシェーダーは今後いろいろ使えるので、前回のシェーダーはサブグラフに変換しておきました。
サブグラフからの出力とFragmentの間に追加のエフェクトを作っていくことになります。

シェーダーの設定

まず、プロパティにリムライトの幅用のFloatと光の色用のColorを追加します。
幅用のFloatはスライダーで値を0~1にしておきます。
光の色はHDRカラーにすると華やかで目立つのでオススメです。

ノードの配置

まず、Normal VectorとView Directionを配置します。両方ともSpaceをObjectにしてからDot Productノードにつなぎます。

Dot Productからの出力をSmoothStepのInに接続します。Edge1は0、Edge2はRimWidthにします。
その値をOneMinusノードで逆転させてからMultiplyノードで色を乗算します。

Multiplyノードの出力をBase ColorとEmissionにAddノードで加算します。
ここは好みで、Base Colorだけに加算・Emissionだけに加算・加算ではなく乗算…などやりたい表現に合わせて変えると良いかと思います。

完成!

定番のエフェクトですが視認性がよくてインパクトがあります!
リムライトは他のエフェクトと組み合わせても見栄えがするので、ノードのリムライト部分をサブグラフにしておいて使い回すのもオススメです。

シェアする

「Unity」の記事

もっと読む>>

最新記事

もっと読む>>