やったこと
最低限これだけやれば Oculus Quest に Unity で作ったアプリをいれられるという手順。
最初なので、Unity で新規プロジェクトを作ってそのまま入れてみます。
使ったもの
Oculus Quest 64GB
MacPro(2013) MacOS Mojave 10.14.5
GALLERIA SG VR Ready Windows 10 Home
Unity 2018.4.0f1
Mac/Win と Oculus Quest は USB-C <-> USB-A ケーブルを使用(こういうの)
Oculus Quest 用に Unity ビルドをする
- 3Dで新規プロジェクトを作成
- Build Settings から Platform を Android に Switch Platform する。
- Player Settings... から以下の項目を変更する
2. Other Settings -> Identification の Package Name を適当に変更、同じく Minimum API Level を API level 19 にする
3. XR Settings -> Virtual Reality Supported にチェックをいれ、Virtual Reality SDKs の + を押して、Oculus を選択する
これで Build するだけ。
とりあえずは Build が通ることだけを確認する。
Android SDK をインストールしていない場合は、Android Studio をダウンロードし、インストールしてください。
インストール後に Unity を立ち上げ直して、Unity の Preferences -> External Tools の Android SDK の Browse を押すと、インストールされたパスを案内してくれるので、そのまま選択する。
Oculus Quest と Mac/Windows を開発者モードで接続する
1. スマホの Oculus アプリから Oculus Quest を開発者モードにする
Oculusの開発者登録をしていない場合は
https://dashboard.oculus.com/ ここに飛ばされるので、団体を登録する。
2. (Windows のみ) Oculus Go ADB Drivers をインストールする
[Oculus Go ADB Drivers] (https://developer.oculus.com/downloads/package/oculus-go-adb-drivers/)
ダウンロードし解凍したら、中にはいっている android_winusb.inf を右クリックしてインストール。
3. Oculus Quest と Mac/Windows を接続する
接続すると Oculus Quest 側に、PCからの接続を許可するかのダイアログがでるので、許可する。
Unity でビルドしたアプリを Oculus Quest で実行する
Unity でさきほど Build が成功している状態で
今度は、Build And Run します。
これで、Oculus Quest 上に、Unity のデフォルトの空間が表示されれば成功です。
実行したアプリの削除
Oculus Quest 内から、アプリの削除ができなかったので、adb を使う
adb の場所は、以下にあります(Android Studio をインストールしたときに入っている)
Win : C:¥Users¥ユーザー名¥AppData¥Local¥Android¥sdk¥platform-tools
Mac : /Users/ユーザー名/Library/Android/sdk/platform-tools
パッケージ名は、Unity の Player Settings で設定した Package Name です。
# インストール済みのアプリの一覧を表示
$ adb shell pm list package
# 削除
$ adb uninstall パッケージ名
Unity 2019 で 実行できなかった 実行できた
現時点で最新の Unity 2019.1.4f1 で実行できず(起動しようとしてすぐホーム画面に戻る)
こちら に記載されている対応バージョンの 2019.1.2f1 でも同様にダメでした。よく理由はわからず。
※ 2019/06/01 追記
Unity 2019 の Graphics APIs の設定の問題でした。@shiena さんコメントありがとうございます。
コンソールにも warning が出ていたのに気づきませんでした。
XR is currently not supported when using the Vulkan Graphics API
デフォルトでは Vulkan が優先になっているので
Vulkan より OpenGLES3 を優先にするか、もしくは Auto Graphics API にチェックを入れる。で実行できました。
Unity 2019.1.2f1, 1.4f1 どちらもok
さいごに
Oculus Quest と Mac を開発者モードでつなぐ部分が、少し手こずりました。
相性なのかタイミングなのかわからないが、Mac の方では何度やっても認識してもらえず
Oculus アプリ側で開発者モードのON/OFFを何度か繰り返したり、USBをさし直したり SMC/PRAMリセットしたりいろいろ試行錯誤しました。
一度つながって許可さえしてしまえば、それ以降は問題ないです。
つぎは、Oculus Integration の Assets をいれて、コントローラの操作をしたいと思います。