はじめに
今回は彩度を変更させるシェーダーを作成していきます。
環境は Unity 2019.3.0f3
Universal Render Pipeline(テンプレートのプロジェクトです)
UnlitGraph を使用しています。
ノード作成
Saturationノードを使用することで彩度を変更できます
値は0~1内で設定します
完成
今回は彩度を変更させるシェーダーを作成していきます。
環境は Unity 2019.3.0f3
Universal Render Pipeline(テンプレートのプロジェクトです)
UnlitGraph を使用しています。
Saturationノードを使用することで彩度を変更できます
値は0~1内で設定します
今回はShaderGraphでSFでありそうなディゾルブシェーダーを作成していきます。
環境は Unity 2019.3.0f3
Universal Render Pipeline(テンプレートのプロジェクトです)
UnlitGraph を使用しています。
ノイズ部分です
オブジェクトの高さにそってディゾルブする部分です
オブジェクトの高さにそってディゾルブするやり方はこちらを参考にしました
Dissolve Shader Breakdowncyangamedev.wordpress.com
ノード完成図です
マテリアルはこんな感じです
[ ]
今回はSFにありそうなノイズシェーダーを作成していきます。
環境は Unity 2019.3.0f3
Universal Render Pipeline(テンプレートのプロジェクトです)
UnlitGraph を使用しています。
ノイズ部分です
UVにPosterizeノードを使用してそれをSimlpe Noizeにつなぐことでモザイクみたいなものが作成できます。
あとはそれを複数作成し、Subtractノードを使用することでノイズっぽいものを作成できます
ノイズをちらつかせる部分です
作成したノイズにTimeをfrac(0~1に変換)にしたものを乗算しそれにRandom Rangeでランダムな値を返すことでちらつかせる表現をしています
ノード完成図です
マテリアルの設定はこんな感じ
今回は色相を変更するシェーダーを作成していきます。
環境は Unity 2019.3.0f3
Universal Render Pipeline(テンプレートのプロジェクトです)
UnlitGraph を使用しています。
Hueノードで色相を変更できます
Hueノードは現在の色相からどのくらい変更するか指定します
今回は放射状ブラー(ラジアルブラー)を作成していきます。
環境は Unity 2019.3.0f3
Universal Render Pipeline(テンプレートのプロジェクトです)
UnlitGraph を使用しています。
放射状ブラー部分です
ブラーはCustom functionノードを使用して作成しています。
result = 0; for(int i = 0; i < Samples; i++) { float scalse = 1.0f - BlurStrength * 0.1f * (i / (float)(Samples - 1)); result += SAMPLE_TEXTURE2D(MainTex,SamplesState,(UV - Center) * scalse + Center); } result /= Samples;
マスク部分です。
Lerpノードを使用してマスクテクスチャの白い部分だけ放射状ブラーがかかります。
ノードの完成図です
マテリアルはこんな感じです