見出し画像

【Unity】ShaderGraphの初歩

確認環境:Unity2020.3.14f1、Universal Render Pipeline

ShaderGraphでMaterialの色設定のみできるLitシェーダーを作ります。

まずはProjectの任意のフォルダにTestLitShaderGraphという名前でLit Shader Graphファイルを作成します。

右クリック > Create > Shader > Universal Render Pipeline > Lit Shader Graph

TestLitShaderGraphという名前にしたShaderGraphのファイルをダブルクリックすると以下のようなウィンドウが開きます。

画像1

ウィンドウの何もない箇所で右クリックでCreate Nodeで Input > Basic > Colorを選ぶとColorというノードが作成されます。

画像2

ColorのOutの〇の部分からドラッグしてBaseColorでドロップしてノードを繋ぎます。これでColorのノードで設定した色が反映されます。

画像3

外部からColorを操作したいのでプロパティ化します。
Colorを右クリックして Convert To > Property で左のPropertisの箇所にColorが追加され、Colorノードの形が変わります。

画像4

ウィンドウの左上にあるSaveAssetで変更を保存します。

画像8

ShaderGraphで準備ができたので、Cubeオブジェクトを作成してそれに設定していきます。

GameObject > 3DObject > Cube でCubeを生成します。

設定するためのマテリアルをColorMaterialの名前で作成します。
Projectの任意のフォルダで Create > Material です。

作ったマテリアルのColorMaterialを選択してInspectorのShaderをShader Graph/TestLitShaderGraphに変更します。

画像5

Cubeを選択してInspectorのMesh RendererのMaterialsのElement0にColorMaterialをドラッグしてマテリアルを設定します。

画像6

最後に色を設定します。

ColorMaterialのColorで色を赤に設定したり、青に設定するとCubeの色が設定した色に変わります
※ColorはShaderGraphでプロパティ化したColor

画像7


*おまけ

ShaderGraphのウィンドウのあれこれ

画像9

Save Asset:変更を保存する

Save As ...:ファイル名を付けて保存する

Show In Project:編集中のShaderGraphのファイルをProjectから選択する

画像10

右上の3つ

Blackboard:左にあるシェーダーグラフ名やプロパティが表示されるボックスの表示非表示を切り替える

Graph Inspector:右上のGraph Inspectorの表示非表示を切り替える

Main Preview:右下のMain Previewの表示非表示を切り替える

いいなと思ったら応援しよう!