はじめに
先ほどUnity2019の正式版が公開されました。Unityのメジャーバージョンアップがそろそろ暑くなってくるなーと感じる風物詩になってきますね。
前回のUnity2018.3→2018.2へのダウングレードも一癖ありましたが、今回も2019.1→2018.3へのダウングレードに一癖あったので軽く書いておきます。
忙しい人向けのまとめ
Unity2018.3からは参照出来ないUnityPackageへの参照が付与されるので、
Package/manifest.json
の中身を削除してからダウングレードを行えばOK。
アップグレード方法
今回は例としてUnity2018.3.12で適当なプロジェクトを作成しました。
それを2019.1(UnityHub)で開きます。そしてアップグレードを聞かれるのでUpgradeを行います。
シンプルなプロジェクトであればいつも通り問題無くアップグレードできます。
ダウングレード方法
続いてダウングレードしてみます。UnityHub上で2018.3.12で開こうとすると「ダウングレードが非対応」という文言とともにダウングレードを行うか聞かれます。
このまま「Downgrade Anyway」を選択するとエラーが起きてダウングレードできません。
エラーの文言どおり2018.3からは参照できないPackageがあるのが理由です。
Logs/Packages-Update.log
にアップグレード時に記録されたログがあるのでこれを見ながら
Package/manifest.json
を編集して元に戻します。
今回の場合は以下のようなログになっていました。
\=== Tue Apr 16 21:57:16 2019
Packages were changed. Update Mode: updateDependencies
The following packages were added: [email protected] [email protected] [email protected] The following packages were updated: com.unity.analytics from version 3.2.2 to 3.3.2 com.unity.collab-proxy from version 1.2.15 to 1.2.16 com.unity.package-manager-ui from version 2.0.7 to 2.1.2 com.unity.purchasing from version 2.0.3 to 2.0.6 com.unity.textmeshpro from version 1.3.0 to 2.0.0
勿論Gitなどで管理していればmanifest.jsonを復元してもいいですし、修正作業が面倒くさいならmanifest.jsonを削除してしまえば初期設定になります。(自分でPackageを追加していたのであればもう一度再追加する必要がありますが)
manifest.jsonの問題がなくなるといつも通りのダウングレード警告がでてくるのでContinueでダウングレードできます。
2018.2以前にダウングレードする場合
Unity2018.3以降、Prefabの構造が変わったため2018.2以前にダウングレードするとPrefabが破損します。
下記、notargsさんの記事を参考に作業すると直すことができます。
Unity2018.3から2018.2へのダウングレードで壊れたPrefabをなんとかする方法
あとがき
今回2019のβ版をほぼ触っていなかったのでこれから触っていきますが、デフォルトでPackagesが賑やかになりましたね。
2018.3
2019.1
Unityのコア機能が徐々にPackageに分離されていって疎結合いいぞ!って思います。
ただ、Packageを使用してる場合、GitからCloneしたからと安心して、そのまま不感地帯に行ってプロジェクト開けない!
という悲劇が起きる可能性があるのでちゃんと開けること確認してから移動しましょう。(まじで)