前回ShaderGraphを導入してみましたが、今回ShaderGraphをもう少し使用しながら理解していきます。
〇プロパティの作成
前回ShaderGpaphを使用して初めてのShaderを作成しました。
しかし前回作成したShaderの色などをUnity側のマテリアルから変更しようとしてもできません。
ShaderLabでいうとProperties{}の中身が記述されず、色などがすべてSubShader{}内で定数として処理されていることになります。
ここではUnityのマテリアルから変更できるようにします。
ShaderGraphウィンドウでマテリアルで変数として扱いたいプロパティからD&Dでノードを引きます。
[Input]→[Basic]→[Vector1]を選択し新しいノードを作成します。
作成したVector1のノードで右クリックから[Convert To Property]を選びます。
これでUnityのマテリアル側で値を変更することができるようになりました。
次にVector1のままでは何の変数なのかわからないので名前を変えます。
ShaderGraphに戻り[Convert To Property]を行うことで表示されるダイアログをクリックします。
これで名前の変更が行えるようになりました。
ここでは[NoiseScale]という名前を付けました。
[SaveAsset]を押しShaderGraphを保存してUnityへ戻ります。
これでShaderGraphで作成したShaderの変数をUnityのマテリアル側から変更できるようになりました。