Unity 2017 で作成したプロジェクトを Unity 2018 へ移行すると、TextMesh Pro まわりでいろいろとエラーが出たので、そのときに参考にさせていただいた記事のリンク集です。
試行環境:Unity 2017.4.10f1 → Unity 2018.3.0f2
Unity 2018 での TextMesh Pro
TextMesh Pro といえば、Unity 2017 以前では外部アセットだったのですが、Unity 2018 以降(Unity 2018.2 以降?)では、Unity Project に最初から内臓されているようになりました。
そのため、Unity 2017 で TextMesh Pro を使用していたプロジェクトを Unity 2018 へ持っていくと、
- Unity 2017 で外部アセットとしてインポートした TextMesh Pro
- Unity 2018 として内臓されている TextMesh Pro
の2つが重複してしまい、エラーが起こるようです。
重複によるエラーへの対策
下記の記事の通りにすれば直ります。
【Unity】起動時に「The call is ambiguous between the following methods or properties」というエラー
やっていることは、
- 重複エラーを避けるため、Unity 2017 でインポートした方の『外部アセット版 TextMesh Pro』を削除
- 『外部アセット版 TextMesh Pro』の参照情報をスキャンし、『内蔵版 TextMesh Pro』へ紐づけを変換
という感じかと思います。
重複対策後に起こるコードエラーへの対策
重複対策後、いくつかのエラーが発生しました。
using TMPro の箇所で謎のエラー
using TMPro の箇所で,なぜか怒られてコンパイルが通らなくなります。
対策としては、下記の記事の通りです。
TMProをusingできない時 – Raspberlyのブログ
メニューバーの Window → TextMeshPro → Import TMP Examples and Extras から、色々インポートすると良いようです。
なぜかデバッグできないエラー
これで Unity の実行は出来るようになったのですが、デバッグがなぜか実行できません。
これは困ります。その対策が以下の記事です。
続・Unity2018でTextMeshProが使えない時 – Raspberlyのブログ
VisualStudio の最新版を入れましょう!という簡単なお話。
自分の環境では、以上で正常に手順で動くようになりました。