EasyAR Sense Unity Plugin 移行ガイド
このドキュメントでは、旧バージョンの EasyAR Sense Unity Plugin から新バージョンへ移行する方法について説明します。
互換性について
バージョン 4000 以降、EasyAR Sense Unity Plugin は Unity が要求する パッケージバージョン管理(Semantic Versioning の使用) に従うため、バージョン番号に基づいて互換性を判断できます。
4.7 は段階的な更新バージョンであり、任意の 2 つの 4.7 バージョン間には互換性がありません。
4.7 より前のバージョンでは、3 番目のバージョン番号のみが下位互換性を表し、最初の 2 つのバージョン番号の変更はすべて非互換を表します。例えば、4.6.2 は 4.6.1 と互換性がありますが、4.6.0 は 4.5.0 と互換性がありません。
警告
tgz ファイルを変更したり、解凍後にプラグイン全体を完全に更新しなかったりすると、互換性が失われます。
一般的な移行ガイド
新バージョンに移行するには、まず Package Manager window を使用して古いバージョンのプラグインパッケージを削除し、新しいパッケージを追加する必要があります。
以下の手順で操作することをお勧めします:
- 使用中の Unity を閉じます。
- Unity がアプリをビルドする際に生成されたプラットフォームのコンパイルディレクトリを削除します。
- Unity プロジェクトを再度開き、古いバージョンの EasyAR Sense Unity Plugin をプロジェクトから削除します。
- 新しいバージョンの EasyAR Sense Unity Plugin をインポートします。

注記
プラグインが提供するサンプルファイルは、バージョン間の互換性が保証されていません。プラグインをアップグレードした後、プロジェクトにインポートされたサンプルが正常に動作しない可能性があるため、古いバージョンのサンプルを削除してから操作することをお勧めします。
EasyAR にはネイティブライブラリファイルが含まれており、削除または置換の前にライブラリ関数が実行されている場合(ビルド時にも呼び出されます)、これらのライブラリファイルはシステムによってロックされ、削除または置換ができなくなります。
重要
古いバージョンを削除する前に、エディタでシーンを実行していないこと、またはいかなるプラットフォーム向けのアプリもビルドしていないことを確認する必要があります。通常、パッケージを削除または置換する前に Unity を閉じ、再度開いた直後に置換することをお勧めします。
新しいバージョンのプラグインを使用して再度ビルドする前に、Unity がビルドした際に生成されたプラットフォームのコンパイルディレクトリを削除する必要があります。これには、Android ビルドで生成される Gradle プロジェクトディレクトリや、iOS ビルドで生成される Xcode ディレクトリが含まれます。
ヒント
通常、これらのディレクトリは Unity プロジェクトの Library フォルダ内(例:Library/Bee/Android/Prj/IL2CPP/Gradle)にありますが、Unity のバージョンによって異なる場合があります。
ビルドを行ったが対応するプラットフォームのディレクトリが見つからない場合は、Library フォルダ全体を削除することをお勧めします。
移行後に SchemaHashNotMatched 例外が発生した場合、通常は以下の 2 つの可能性があります。
- 前述の操作が正しく行われなかったためアップグレードに失敗したか不完全であるか、あるいは Unity が生成したコンパイルディレクトリが正しく更新されていない(注意:手動で削除しない場合、エラーになる可能性が高い)。推奨される手順で操作するか、
Libraryキャッシュがないプロジェクトを使用して再コンパイルすることをお勧めします。 - EasyAR の tgz ファイルを手動で変更したか、解凍後にプラグイン全体を完全に更新しなかった。この場合、EasyAR は可用性を保証できないため、正しいパッケージを再ダウンロードしてインポートする必要があります。
重要
EasyAR Sense のライブラリファイルおよびビルド後のライブラリファイルの位置が変更される可能性があるため、Unity が生成した Gradle または Xcode プロジェクトを保持している場合は、EasyAR.aar、libEasyAR.so、easyar.framework など、EasyAR に関連するすべてのファイルを事前に削除する必要があります。
バージョン 4002 への移行
バージョン 4001 から 4002 に移行する場合、上記の一般的な移行ガイドに加え、以下の内容に注意する必要があります。
API の変更
| 機能モジュール | v4001 API | v4002 API | 使用方法 |
|---|---|---|---|
| ユーティリティ機能 | Image.Image(Buffer, PixelFormat, int, int) | Image.create |
バージョン 4001 への移行
ヒント
Mega を使用する場合のみ非互換の変更があり、その他の機能の使用には影響しません。
バージョン 4000 から 4001 に移行する場合、上記の一般的な移行ガイドに加え、以下の内容に注意する必要があります。
API の変更
| 機能モジュール | v4000 API | v4001 API | 使用方法 |
|---|---|---|---|
| Mega | MegaTrackerFrameFilter.ResultPoseType.EnableLocalization | MegaTrackerFrameFilter.EnableLocalization | Mega トラッキングプロセスの制御 |
| Mega | MegaTrackerFrameFilter.ResultPoseType.EnableStabilization | - | 機能は削除されました |
以前のバージョンからの移行
4000 より前のバージョンから移行する場合は、以下の内容を参照してください: