夜風のMixedReality

xRと出会って変わった人生と出会った技術を書き残すためのGeekなHoloRangerの居場所

進化したShaderGraphを触ってみる。 変更点確認

本日はUnityShader枠です。

Unityではスクリプタブルレンダーパイプラインを導入したプロジェクトでShaderをノードベースに構築できる[ShaderGraph]と呼ばれる機能が使用できます。

f:id:Holomoto-Sumire:20210424210827j:plain

従来ではShaderを構築するためにはUnityのC#とは別にCg/HLSL言語やそれを使用するUnityのShader言語、ShaderLabの知識が必要とされていました。

このShaderGraphの登場によってUnity開発者はShaderの専門的な知識が無くても基礎的な知識で視覚的にShaderを作成することが可能になりました。

今回ShaderGraphのバージョン11からShaderGraphの見た目など変更点が加わりよりShaderらしく構築できるようになったため勉強もかねて見ていきます。

〇ShaderGraphの使い方

[PackageManager]から[ShaderGraph]を探しインストールします。

f:id:Holomoto-Sumire:20210509190727j:plain

[Project]ウィンドウから右クリック、[Create]→[Shader]→[Universal Render Pipeline]からShaderGraphを選択し作成します。

f:id:Holomoto-Sumire:20210509191450j:plain

作成したShaderGraphを選択することでShaderGraphの編集が可能です。 

f:id:Holomoto-Sumire:20210509191532j:plain

今回から[Vertex][Fragment]の二つのマスターノードが表示されるようになりました。

f:id:Holomoto-Sumire:20210509191822j:plain

これはそれぞれ[VertexShader]、[FragmentShader]に対応しています。

以前はShaderの区分がわからず、出力の一つのマスターノードで再現されていました。

f:id:Holomoto-Sumire:20210424210827j:plain

〇ドキュメント

バージョンアップに際しドキュメントの文献が充実するようになっています。

初めての Shader Graph | Shader Graph | 10.0.0-preview.27

と思ったのですがところどころページが用意されておらず、開発過渡期であるShaderGraphの現状をうかがえます。

https://docs.unity3d.com/ja/Packages/com.unity.shadergraph@10.0/manual/Master-Stack

便利ですがバージョンごとの変更点が大きすぎるので実務アプリなどでの使用は慎重になるべきなのかもしれません。