夜風のMixedReality

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

Unityプロジェクトをアップグレードした際に発生するURPのエラーの解消

本日はUnityトラブルシューティング枠です。

Unityでは様々なバージョンが提供されています。

 あるバージョンで作成したプロジェクトを別のバージョンにアップグレードする際、パッケージなどでエラーが発生することがあります。

 今回はUniversal RenderPipelineでエラーが発生していたので解消します。

〇現象

Unity2021.1.10f1で作成したプロジェクトをUnity2021.1.19f1にアップグレードしました。

この際以下のようなエラーが発生しました。

f:id:Holomoto-Sumire:20210904094103p:plain

Library\PackageCache\com.unity.render-pipelines.universal@11.0.0\Editor\ShaderGraph\AssetCallbacks\CreateLitShaderGraph.cs(2,19): error CS0234: The type or namespace name 'ShaderGraph' does not exist in the namespace 'UnityEditor' (are you missing an assembly reference?)

UniversalRenderPipelineに関連してエラーが発生していることがわかります。

〇エラーの原因とUnityバージョンとURPの関係

Univarsal Render PipelineはUnity2019以降Unityのバージョンに依存して提供されています。

つまり、あるバージョンのUnityではそのバージョンに対応しているバージョンのURPが使用できるということになります。

 UnityをアップデートしたことでURPパッケージがそのUnityバージョンの対応パッケージ外になり、発生したと思われます。

〇エラーの解消

 エラーはURPを再インストールすることで解消できます。[PackageManager]から[Universal RP]を削除します。

 f:id:Holomoto-Sumire:20210904100238p:plain

URPパッケージが削除されたためシェーダーなどURP関連のグラフィックエラーが発生していますが、Unityのプロジェクトを実行できるようになりました。(エディタが実行できないほどのエラーが解消されました。)

f:id:Holomoto-Sumire:20210904103118p:plain

[PackageManager]を開きなおし、[UniversalRP]を再インストールします。

 f:id:Holomoto-Sumire:20210904112321p:plain

以上で作業は完了です。