本日は技術調査枠です。
UnityでOculus Go向けアプリをビルドする手順を調べます。
前回記事の続きです。
bluebirdofoz.hatenablog.com
UnityのAndroid向けビルド設定
Oculus Go向けのアプリをビルドするため、Unityの新規プロジェクトを作成します。
まずはインストールしたSDKへの参照パスを設定します。
メニューから Edit -> Preferences を開きます。
Unity Preferences ダイアログが開きます。
[External Tools]のタブを開き、以下の設定を行います。
・[SDK]:Android Studioで取得した「Android SDK Location」ディレクトリ
・[JDK]:Java SE Development Kitで取得した「インストール先」ディレクトリ
次にビルドするプラットフォームを切り替えます。
メニューから File -> Build Settings を選択します。
Build Settingsダイアログが開きます。
[Platform]から[Android]を選択し、[Switch Platform]ボタンをクリックします。
これで Unity で Android 向けビルドを行う準備が整いました。
Oculus Goのサンプルシーン
次にビルドするアプリのサンプルシーンの作成です。
Asset StoreにOculus IntegrationというOculus向けの基本アセットがあります。
今回はこれを利用します。
assetstore.unity.com
Asset Storeのパネルを開き、Oculus Integrationを検索します。
ページが見つかったら[Download]ボタンをクリックしてアセットを取得します。
(画像差し込み_51)
ダウンロードが完了すると[Import]ボタンに切り替わります。
これを改めてクリックすると、Import Unity Package ダイアログが開きます。
ダイアログの[Import]ボタンをクリックします。
インポートが完了すると再起動され、Assets に Oculus フォルダが追加されています。
Oculus/VR/Scenes 配下にサンプルシーンが保存されています。
今回は Trivial シーンを開きます。
更に Oculus Go 向けの幾つかの追加設定を行います。
メニューから Edit -> Project Settings -> Player を選択します。
Inspector ビューに PlayerSettings が開きます。
[CompanyName]と[ProductName]を適当な名前に変更します。
Inspector ビューを下にスクロールして[Other Settings]のパネルを開きます。
[PackageName]を[com.(CompanyName).(ProductName)]の形式で入力します。
[MinimumAPILevel]を[Android 7.1 'Nougat' (API level 25)]に設定します。
次に[XR Settings]のパネルを開きます。
[Virtual Reality Supported]のチェックを入れます。
[Virtual Reality SDKs]の[+]ボタンをクリックして[Oculus]を追加します。
設定を行ったら、再びメニューから File -> Build Settings を選択します。
Build Settings ダイアログが開きます。以下の設定を行います。
[Add Open Scenes]をクリックして[Trivial]シーンを追加します。
[Texture Compression]を[ASTC]に変更します。
[Build System]を[Gradle]に変更します。
[Development Build]にチェックを入れます。
以上で全ての設定は完了です。
Oculus Goを開発PCにUSB接続し、[Build And Run]ボタンをクリックするとアプリがインストールされます。
※1 Oculus Goを始めてPCにUSB接続した際はOculus Go側で接続許可のダイアログが表示されます。
PC側からOculus Goを検出するにはこれを許可する必要があります。
※2 キャプチャでは誤ってUnity 2017.4.3f1で作業を実施しています。
Oculus Integrationが対応しているのはUnity 2017.4.17f1、または、2018.2.19f1です。
それ以外のバージョンだと正常に動作しない場合があります。
Oculus Integration の Unity 対応バージョンは以下で確認できます。
Compatibility and Version Requirements