Parallels Desktop 35%OFF セール

Unityエディタとプロジェクトのアップグレードをしてみた

Unityエディタとプロジェクトのアップグレードをしてみた

Unityを触り始めてから1年ちょっとが経過したのですが、今までUnityエディタのアップグレードをしていなかったことをここに懺悔します。アーメン。

というわけで、Unityエディタを 2022.3 から 6.2(6000.2) にアップグレードして、今までに作成したプロジェクトもUnity 6.2で開けるようにしてみました。

目次

手順

ご存知かと思いますが、Unityエディタは今インストールされているものをアップグレードするということができません。古いバージョンを残したまま、新しいバージョンのUnityエディタをもう1個インストールすることになります。

でーもー、Unityエディタってサイズがでかいんですよね。1個20GBくらいあります。これを何個もインストールするなんて、アラブの富豪にしかできないんです(断言)。

というわけで、以下の手順でUnityエディタのアップグレードをしたいと思います。

  1. 最新版のUnityエディタをインストールする。
  2. 古いUnityエディタをアンインストールする。
  3. 既存のプロジェクトを最新版のUnityエディタに対応させる。

プロジェクトのアップグレードで何らかのトラブルが発生する匂いがします。ワクワクしますね。

新しいUnityエディタのインストール

STEP

Unity Hubを起動して、サイドバーの「インストール」を選択します。そして右上の「エディターをインストール」ボタンを押します。

Unityエディタのアップデート01
STEP

「Unityエディターをインストール」画面が開くので、インストールするバージョンの「インストール」ボタンを押します。ここでは Unity 6.2 をインストールします。

Unityエディタのアップデート02
STEP

次の画面では、追加するモジュールを選択します。ここではプラットフォームのAndroid, iOS, Webを選択しました。必要最小限です。ディスク容量がカツカツなので!必要ならばあとから追加することもできます。

「続行する」ボタンを押します。

Unityエディタのアップデート03
STEP

Androidソフトウェア開発キットのライセンス規約が表示されるので「上記の利用規約を理解し、同意します」にチェックを入れて「インストール」ボタンを押します。

Unityエディタのアップデート04

理解してほしいなら日本語で書けよ。なんて言いません。私、オトナなので。

STEP

インストールが始まります。20分弱で終わりました。ここでいう「20分弱」とは18分とか19分のことです。最近の若者は20分弱というと21分とか22分のことを指すと思うらしいです。気持ち悪いですね。

Unityエディタのアップデート05

古いUnityエディタのアンインストール

無事に最新版Unityエディタがインストールできたので、古いバージョンのUnityエディタをアンインストールします。

Unity Hubのサイドバーの「インストール」で、削除したいバージョンのUnityの「管理 > アンインストール」を選択します。

Unityエディタのアップデート06

以上で古いUnityエディタのアンインストールは完了です。

プロジェクトのアップグレード

Unity Hubのプロジェクトリストを見ると、黄色いおにぎりが並んでいます。これは、このプロジェクトに対応するバージョンのUnityエディタが見つからないよという警告です。そりゃそうです。さっきアンインストールしたからね。

Unityエディタのアップデート07

これらのプロジェクトを新しいUnityエディタに対応させましょう。

プロジェクトのアップグレードをする前に、念のためプロジェクトのデータをバックアップしておきましょう。プロジェクトの保存ディレクトリを複製しておくだけでOKです。

STEP

黄色いおにぎりが表示されている状態でプロジェクトを開こうとすると、警告が表示されます。ここでプロジェクトに対応したバージョンのエディタをインストールするか、インストール済みのエディタで無理やり開くかを選択します。

今回はインストール済みのバージョンを選択して「6000.2.2f1 で開く」ボタンをクリックします。

Unityエディタのアップデート08
STEP

確認画面が表示されます。

これを読むと、必要に応じてスクリプトの変更を自動でしてくれるっぽいですね。親切設計。

Unityエディタのアップデート09
STEP

ここからはUnityエディタのダイアログなので英語になります(英語版のUnityエディタを使っているため)。

Unityエディタの規約へのリンクが表示されるので、チェックボックスをチェックして「Accept and Continue」ボタンを押します。

Unityエディタのアップデート10
親切な日本語訳

あなたは、このバージョンの Unity の Unity エディターのソフトウェア規約に同意していません。 続行するには、同意してください。

Unity エディターのソフトウェア規約

お客様による Unity エディターソフトウェアの使用は、Unity と別途合意している場合を除き、Unity サービス規約 (https://unity3d.com/legal/terms-of-service) を補完し、それに組み込まれている Unity エディターソフトウェア規約 (https://unity.com/legal/editor-terms-of-service/software) に従うものとします。

「同意して続行」をクリックするか、Unity エディターをインストールして使用することにより、お客様は Unity エディターソフトウェア規約および Unity サービス規約を読み、理解したことを認め、それらに拘束されることに同意します。

STEP

プロジェクトのアップグレードに関するダイアログが表示されるので「Continue」をクリックします。

Unityエディタのアップデート11
親切な日本語訳

プロジェクトのアップグレードが必要です

このプロジェクトは、現在使用している Unity のバージョン(6000.2.2f1)よりも古いバージョン(2022.3.36f1)で保存されています。

Continue(続行)を選択すると、プロジェクトが自動的にバージョン 6000.2.2f1 にアップグレードされます。

これにより、アセットの再インポートが発生する可能性があります。また、プロジェクト内のパッケージやその他の設定もアップグレードされる場合があります。

アップグレードの詳細については、以下の場所にあるエディターのログを参照してください。 /Users/********/Library/Logs/Unity/Editor.log

STEP

以下のダイアログが出ました。「Enter Safe Mode」をクリックして、セーフモードでプロジェクトを開きます。なんだなんだ、怖いよ。

Unityエディタのアップデート12
親切な日本語訳

セーフモードに入りますか?

開こうとしているプロジェクトにコンパイルエラーが含まれています。

セーフモードに入ると、プロジェクトの残りの部分がインポートされるのを待つことなく、これらのエラーを解決できます。

Ignore (無視)を選択した場合(非推奨)、プロジェクトのインポートは続行されますが、破損した、または使用できない状態になる可能性があります。

STEP

セーフモードでプロジェクトが開きました。コンソールでエラーを確認してみると、すべてTextMesh Pro関連のエラーでした。TextMesh Proをインポートし直せば解消しそうです。

というわけで、右上の「Exit Safe Mode」をクリックして、セーフモードから抜けます。

Unityエディタのアップデート13
STEP

脅しのダイアログが表示されますが、気にせず「Exit Anyway」します。

Unityエディタのアップデート14
親切な日本語訳

セーフモードを終了します

本当に終了してもよろしいですか?

コンパイルエラーが残ったままセーフモードを終了すると、プロジェクトが不完全な状態になったり、破損したりする可能性があります。たとえば、プロジェクト内のパッケージがロードに失敗したり、アセットが正しくインポートされなかったりすることがあります。

STEP

セーフモードを抜けると、TextMesh Proを再インポートするためのダイアログが表示されました。気が利くじゃん。

というわけで「Import TMP Essentials」「Import TMP Examples & Extras」をクリックして再インポートします。

Unityエディタのアップデート15
親切な日本語訳

TMP Essentials (TMPの必須アセット)

TextMesh Pro の必須アセットが更新されました。正常に機能させるには、これらのアセットをプロジェクトに再インポートする必要があります。更新されたアセットは、プロジェクト内の「TextMesh Pro」フォルダのルートに配置されます。

[Import TMP Essentials]

TMP Examples & Extras (TMPのサンプルと追加アセット)

この「Examples & Extras」パッケージには、TextMesh Pro の強力な機能をより簡単に発見し、学習するための追加のアセットとサンプルが含まれています。これらの追加アセットは、TMP の必須アセットと同じフォルダに配置されます。

[Import TMP Examples & Extras]

Examples & Extras はそもそもインポートしなくてもいいのですが、初心者だった私はよくわからずにインポートしていました。再インポートせずに、ごっそり削除でもOKですね。

STEP

TMP関連のエラーは出なくなりました。

以上でプロジェクトのアップグレードは完了です。楽勝でしたね。

その他のダイアログ

上記は私が初めてUnityで作った紙芝居アプリのアップグレード顛末記で、エラーはTMP関連だけでした。以下で他のプロジェクトをアップグレードしたときに表示されたダイアログボックスを紹介します。

スクリプト更新の同意

以下のようなダイアログが表示されることが何度かありました。スクリプトを自動的に更新してくれているみたいですね。

Unityエディタのアップデート16
親切な日本語訳

スクリプト更新の同意

このプロジェクトのいくつかのソースファイルは、変更された API を参照しています。これらは自動的に更新できます。更新する前に、プロジェクトのバックアップを作成することをお勧めします。これらのファイルを更新しますか?

  • Assets/Scripts/BallController.cs
  • Assets/Scripts/ItemController.cs

[これらのファイル、および今後見つかる可能性のある他のファイルもすべて更新します]
[更新しません]
[リストにあるこれらのファイルのみを更新します]

で、どこが更新されたのか確認したところ、Rigidbody.velocityRigidbody.lenearVelocityに修正されていました。変数名が変わったんですね。

URPマテリアルのアップグレード

URPを使ったプロジェクトで以下の警告が出ました。

Unityエディタのアップデート17
親切な日本語訳

URP マテリアルのアップグレード

プロジェクト内のマテリアルは、Universal Render Pipeline (URP) の古いバージョンを使用して作成されています。Unity は、現在使用しているバージョンの URP と互換性を持たせるために、これらのマテリアルをアップグレードする必要があります。Unity は、プロジェクト内のすべてのマテリアルを再インポートし、アップグレードされたマテリアルをディスクに保存し、必要に応じてソース管理でチェックアウトします。

詳細については、URP ドキュメントの「マテリアルアップグレードガイド」を参照してください。

これは自動修正してくれないみたいです。Unityエディタのほうで何かしないといけないみたいだけど、どうすればいいんだ。そもそもURPってなんだっけ。

ゲームは警告が出るもののちゃんと動くので、放っておこう。

さいごに

というわけで、思ったよりも楽勝でした。いえい。

でわでわ

Unityエディタとプロジェクトのアップグレードをしてみた

この記事が気に入ったら
いいね または フォローしてね!

シェアしてね

コメント

コメントする

目次