ShaderGraphではDirectional Light取得できないので自前で用意する必要がある
使うノードはCustom Function
これを使うと自分で作ったシェーダーファイルを適応させたり、ノード上でコードを書くことができるようになる
今回は軽いのでノード上で書いてみる
設定はこんな感じ
コードは下に記載
ifdef SHADERGRAPH_PREVIEW
Direction = half3(0.5, 0.5, 0);
Color = 1;
else
Light light = GetMainLight();
Direction = light.direction;
Color = light.color;
endif
#ifdefで区切ってるのはpreview上だとLightがないので確認ができなくなるので仮数値を設定
GetMainLightでライト取得できる
ただ、これだとLightは1つだけしか取れてないし、毎ノードこれを設定する必要があるので拡張性も低い
SubGraph化やらしないといけないけど、そこらへんのネタは次の機会で