Unity で Shader Graph を作ってみる
※ これは 2020/05/22 時点の Unity 2019.3.14f1 の情報です
最新版では動作が異なる可能性がありますのでご注意ください
CSS はここまでにして、ちょっと自作アプリで必要になったので以前ちょっとだけ触った Unity の Shader Graph を、とりあえず使えるようにするところまで改めて試したい
Shader とはもともとオブジェクトの陰影を描画するために利用されていたらしいが、現状だと GPU を使った大量で並列な単純演算をするような処理を得意とするイメージ
当然グラフィカルな描画処理とか演出エフェクトとかにはもってこいというわけで・・・
Shader Graph はそれまでの ShaderLab によるコーディングとはちがって、ノードをつなぐグラフ構造で記述できるらしい
通常のコーディングに比べてコンパクトに記述する情報密度は損なわれるものの、途中の処理経過をグラフィカルに確認できるのでシェーダー初心者にも学習しやすそう
というわけでとりあえずこの機能を使えるようにする!
まずは Unity で新規プロジェクト作成
Shader Graph を使うには Scriptable Render Pipeline によるビルドが必要なので、作成するプロジェクトは High Definition Render Pipeline か Universal Render Pipeline プロジェクトのどちらかを選択
High Definition RP は PC とかハイエンド向けで、Universal Render Pipeline の方はスマホとかローエンド向け、今回は Universal を選択した
あとで Scriptable Render Pipeline の設定を追加することもできるけど、最初からある程度入ってる方がかんたんなのでこうした方がよい
プロジェクトが開いたら Package Manager のウィンドウを開き、Sahder Graph が最新版でない場合は更新
※ Shader Graph が表示されない場合は左上のコンボボックスから「All packages」を選べば出るはず!
パッケージの更新が終わったらさっそく Shader Graph を作成
Assets/Materials
のディレクトリを開き、右クリックメニューで [Create] - [ Shader] - [Unlit Graph] を選択
※ Unlit Graph
以外にも上記のようにいろいろ Shader Graph はあり、用途によって使い分ける・・・今回はライティングを考慮しないシンプルな Unlit Graph
にしてみた
とりあえず Unlit
という名前で Shader Graph を作成
ダブルクリックすると下記のような編集ペインが開いた
入力プロパティが並ぶ領域、プレビューが表示されるウィンドウ、最終出力を行う Unlit Master
ノードがあって、これで編集できる状態になったみたい