Unity: Shader Graphがピンク色になって使えない問題の解消法
【Unite Tokyo 2018】新機能Shader Graphを使えばプログラミング無しにシェーダーが作れるようになります!
Shader Graphを使って、この動画で紹介されていたシェーダーを実際に作ってみようと思ったのですが、何故かマスターノードがピンク色になって使えませんでした。
使用した環境
OS: macOS High Sierra
Unity: 2018.1.0f2
Shader Graph: 1.1.9 - preview
調べてみると、Unityがデフォルトで使用している描画パイプラインが、Shader Graphに対応していないことが原因のようでした。
参考:
The Lightweight Render Pipeline: Optimizing Real Time Performance – Unity Blog
Scriptable Render Pipeline: What You Need To Know - YouTube
なので、描画パイプラインを変更しましょう。
今回はLightweight Render Pipelineという描画パイプラインを使用します。
問題を解消する
Window > Package Managerを選択して、Lightweight Render Pipelineをインストールします。
インストールが完了したら、
ProjectビューのCreateから、Renderer > Lightweight Pipeline Assetを選択し、適当な名前をつけて作成します。
その後、Edit > Project Settings > Graphicsを開き、先ほど作成したAssetを割り当てます。
これで、描画パイプラインが変更されたので、正常にシェーダーが動作するようになりました。
簡単ですね!
以下、実際に作ってみたシェーダーを適用してみたものです。
Shader Graphを使って、変わった形のゲージを作った。簡単に作れるし、一回作ったら使い回せるから便利。 pic.twitter.com/DltL6Cw4zW
— きり (@KiliWare) 2018年6月3日
今度は既に作成済みのシェーダーがおかしくなった!
これで描画パイプラインを変更すると、Shader Graphで作成されたシェーダーは正しく動作するようになるのですが、今まで使われていたシェーダーである、Shader Labで作成されたシェーダーが動作しなくなります。
これを解消するには、こちらの記事が参考になります。
shadergraphとかパイプラインを変更して、ピンクになったときの修正方法
思ったこと
以前Shader Graphを使ったときは、特に設定を変えなくても使用できた気がするのですが、バージョンが上がって仕様が変更されたのでしょうか...
こちら、以前に書いた記事です。
kiliware.hateblo.jp
そして、動画内で紹介されていた、高橋さんのプロジェクトとブログの記事はこちらです。
github.com
blogs.unity3d.com
Shader Graphは今後のゲーム開発において、大活躍しそうな機能ですので、今のうちに習得しちゃいましょう!