Standard Assetsのエラー “DepthOfField.cs(333,21): error CS0619” の解決方法

Unity

Unityにアセットを追加すると、よく Standard Assets 絡みで赤いエラーが発生します。中にはUnityの再起動で治るものもありますが、今回遭遇したエラーはダメでした。

コンソールには、下記の長〜いエラーメッセージが表示されていました。

Assets/Standard Assets/Effects/ImageEffects/Scripts/DepthOfField.cs(333,21): error CS0619: ‘Graphics.DrawProceduralIndirect(MeshTopology, ComputeBuffer, int)’ is obsolete: ‘Method DrawProceduralIndirect has been deprecated. Use Graphics.DrawProceduralIndirectNow instead. (UnityUpgradable) -> DrawProceduralIndirectNow(*)’

ややこしそうですが、丸ごとGoogle翻訳にかけてみると “DrawProceduralIndirect” は廃止されたから “DrawProceduralIndirectNow” を使ってねってこと。

DepthOfField.cs を開いて、 259行目と333行目を書き換えれば解決しました!

Unity