Unity (C#): Shader.Find(“Particles/Additive”) を使用した場合の実行時エラーを解決する

Build して Run した場合、以下の実行時エラー (Development Build) が出る場合があります。

NullReferenceException
> UnityEngine.Material..ctor (UnityEngine.Shader shader) ...

Shader.Find("Particles/Additive") などを使ってビルトインシェーダーを使用したい場合、シェーダーをインクルードするかどうかを Project Settings で指定しておかなければならないところを、インクルードしていないためです。

 

解決法

1. Edit -> Projects Settings -> Graphics で Graphics 設定ビューを開く
2. Always Included Shaders に Particles/Additive を追加
3. 再度 Build & Run して実行してエラーが出なければ成功です

こんな感じで設定します。
unity_graphics_settings