【Unity】【Oculus Quest2】Oculus Integrationのイテレーションタイムを減らす方法
目次
イテレーションタイムとはなにか
イテレーションタイムとは、ビルド->デプロイ->ランのリピートにかかる時間のことです。
Oculusデバイスでの開発時のイテレーションタイムを減らすために、Oculus Integration
でどのような方法が用意されているのかをご紹介します。
注意
これらの機能で作成したapkファイルは、最終的なリリースのファイルとして使用しないようにしてください。リリースファイルは、UnityのBuildで作った.apkファイルを使用するようにしてください。
macOSはサポートしていません。Windowsを使用してください。
OVR Build APK and Run
OVR Build APK and Runツールは、gradleのキャッシュを利用してビルドプロセスを高速化するコマンドを実行します。
最初のBuildで作成されたgradle
のキャッシュを利用して、ビルド間の差分のみを更新するようになります。(インクリメントビルド)
使い方
OVRを使用するには、APKをビルドして実行します。
- メニューの「ファイル」→「ビルド設定」→「ビルドしたいシーン」を選択します。
- ビルド先のプラットフォームがAndroidであることを確認します。そうでない場合は、Android を選択して「Switch Platform」をクリックします。
- メニューの[Oculus]>[OVR Build]>[OVR Build APK and Run]を選択します。
OVR Scene Quick Preview
OVR Scene Quick Previewは、UnityのAsset Bundleシステムを利用して、変更点をホットリロードすることでデプロイ時間を短縮しています。
最初に.apkファイルをビルドすると、そのファイルにはプロジェクトのコードとアセットバンドルローダーのスクリプトが含まれています。
使い方
- メニューの「ファイル」→「ビルド設定」→「ビルドしたいシーン」を選択します。
- ビルド先のプラットフォームがAndroidであることを確認します。そうでない場合は、Android を選択して「Switch Platform」をクリックします。
- メニューの[Oculus]>[OVR Build]>[OVR Scene Quick Preview]を選択します。
- (初回)
Build and Deploy App
を選択 - (2回目以降)
Build and Deploy Scene(s)
を選択
その他の機能
- Delete Device Bundles : デバイスにデプロイされたすべての Asset Bundles を削除します。
- Delete Local Bundles : ローカルにビルドされたすべてのAsset Bundlesを削除します。
- Use optional APK package name : チェックした場合、Transition APKのパッケージ名をcom.your.project.transitionに変更します。
- Launch App : デバイス上でアプリを起動します。
- Open Build Settings : Unityのビルド設定を開きます。
- Uninstall APK : デバイスからTransition APKを削除します。
- Clear Log : ツール内のログを消去します。
2つの機能の何が違うのか、どう使い分けるのか
- OVR Build APK and Run : インクリメントビルドすることで、ビルド時間を短縮できる機能なので、最終確認前の本番アプリに近い環境でテストしたいときはこっちを使うのがいいかと思います。
- OVR Scene Quick Preview :
アプリを終了せずに変更点の変更を実機で確認できる
ので、開発中はこれを多用したほうがいい気がします。 - Build SettingsからのBuild : リリース時はこのビルド方法で行うことが推奨されている、一番丁寧なビルド方法
参考
発生したエラー集
Multiple ADB devices connected. Cannot perform OVR Build and Run.
現象
Oculus Quest2 1台しかつないでないはずなのに、複数台つないでいることになっている
原因
Oculus Developer Hub
でADB over Wi-Fi
をOnにした状態でUSBも繋いでいたのが原因らしい- また、ADB over Wi-Fiモードだと、
OVR Scene Quick Preview
はうまく動かなかったので、有線でデプロイしたほうがいい気がする
解決方法
Oculus Developer Hub
でADB over Wi-Fi
をOFFにする
【Unity】【Oculus Quest2】Oculus Integrationのイテレーションタイムを減らす方法
https://blog.djima.net/2021/07/22/【Unity】【Oculus-Quest2】イテレーションタイムを減らす方法/