【Unity】Amplify Shader EditorをLWRPプロジェクトで使う方法(ver.2018.3.2f1)

f:id:Effect-Lab:20190120154608p:plain

 こんにちは。

 

今回はAmplify Shader EditorをLWRPプロジェクトで使う方法です。


いいなーと思ってアセットを買ってみたはいいんですが、そのままだとシェーダーが正しく描画されずに大分とまどってしまったので直す方法を残しておきたいと思います。

 

Unityのバージョンは「2018.3.2f1」です。

 

アセットはこちら↓

assetstore.unity.com

 

 

アセットをインストールしてLWRP用のシェーダーを作成できるようにする

まずはアセットストアからアセットをインポートしましょう。
インポートが終わると、Assetsフォルダ配下に「AmplifyShaderEditor」というフォルダが追加されます。
f:id:Effect-Lab:20190120161515j:plain

 

  次にLWRP用のシェーダーテンプレートを追加しましょう。
下図のように、「Assets > AmplifyShaderEditor > Plugins > EditorResources > Templates > SRP」フォルダに入り、「LWSRPTemplates」ファイルをダブルクリックします。f:id:Effect-Lab:20190120161709j:plain

 

開いたダイアログで「Import」をクリックします。f:id:Effect-Lab:20190120161741j:plain

 

これでLWRP用のシェーダーが作成できるようになりました!

f:id:Effect-Lab:20190120162622j:plain

 

 

サンプルデータのピンクシェーダーを解消する方法

「Assets > AmplifyShaderEditor > Examples > Official」に公式のサンプルシェーダーが沢山入っています。
f:id:Effect-Lab:20190120162851j:plain

ただし、シーンを開いてもシーンに配置されているオブジェクトがピンクシェーダーになっている事があるので、その場合は以下の対応を行うと解消されます。

 全てのオブジェクトがピンクシェーダーの場合は、
「Edit > Render Pipeline > Upgrade Project Materials to LightweightRP Materials」を実行します。

f:id:Effect-Lab:20190120163002j:plain

 

すると、壁だけは正しく描画されるようになります。
Amplifyシェーダーがアサインされているオブジェクトはまだピンクのままです。

f:id:Effect-Lab:20190120163028j:plain


  次に、Amplifyシェーダー自体をLWRP用に変更しましょう。
今回は「Offical > AnimatedFire」フォルダにある「AnimatedFire」シェーダーを使ってみます。
シェーダーをエディタで開いて、Output NodeのShader Typeを「Lightweight PBR」に変更します。

f:id:Effect-Lab:20190120163114j:plain

 

するとBaseノードへの各ノードの接続が切れてしまうので、下図のように繋ぎ直します。

f:id:Effect-Lab:20190120163156j:plain


 繋ぎ終わったらセーブボタンを押します。f:id:Effect-Lab:20190120163244j:plain

 

これでサンプルのAmplifyシェーダーがLWRP環境下で正しく描画されるようになりました!

f:id:Effect-Lab:20190120163309j:plain



以上で設定は完了です!

 

 

今回参考にさせていただいたサイトはこちら↓の2つですです。

www.slideshare.net

 

wiki.amplify.pt