はじめに
Vive Focus PlusはスタンドアロンVRHMDであり、HMDのカメラによる位置トラッキングに加え、超音波トラッキング付きのコントローラーにより、両手の位置を取得できるという特徴がある。
値段は10万円弱と高めで、エンタープライズ向けの用途が主である。
アプリケーションの開発はUnityとVive Wave SDKで行うことができ、アプリはVIVEPORT経由で配布できる。
クローズドベータ版の配布も可能なので、開発中のアプリを気軽にシェアできる。
以下にVive Focus Plusで開発するのに必要な設定、その他開発に便利な情報をまとめた。以下の作業の多くでADB(Android Debug Bridge)が必要になるので、事前にPCを設定しておくこと。
USBでのPCとの接続
USBでPCとHMDをつないだときに下の画面が出てきたら、「ファイルの転送」を選ぶ。
なぜかこの画面のときはコントローラーが使えないので、頭を動かして視線マーカーを操作する必要がある。
USBデバッグの有効化
Vive Focus Plusは出荷時にすでに開発者モードになっているが、USBデバッグを有効化する必要がある。メニュー画面から「設定」→「詳細設定」を選択。
さらに、「開発者向けオプション」を選び、「USBデバッグ」の項目のトグルスイッチを押してUSBデバッグを有効にする。
有効な状態でUSB接続がされていると、以下の画面が出てくるので、チェックボックスにチェックを入れてOKを押す。
ワイヤレスでのPCとの接続
ADB(Android Debug Bridge)が使える環境であれば、ワイヤレスでPCにつなぐことも可能。Android Studioを使ったファイルのやり取り、scrcpy(後述)による画面のキャスト、Unityでビルドしたアプリのインストールなどもワイヤレスでできるようになる。
ただし、設定の途中でUSB接続が必要になるので注意。
最初に、開発者向けオプション(上記参照)のWi-Fi Statusを選ぶ。
すると、Wi-Fiに関する情報を見る画面が出る。ここで「REFRESH STATS」のボタンを押すと情報が表示されるので、そこのIP Addressをメモっておく。
次に、コマンドラインで
adb tcpip 5555
と入力し、ケーブルを抜いて
adb connect DEVICE_IP:5555
(DEVICE_IPはさっきメモしたIP Address)
と入れることで、ワイヤレス接続できる。
開発に便利な情報
scrcpyによる画面キャスト
HMDに表示中の画面をPCにキャストできるscrcpyというアプリがあり(https://github.com/Genymobile/scrcpy), Vive Focus Plusでも使用できる。上記の方法でワイヤレス化している場合は、ワイヤレスでのキャストも可能。
普通にキャストすると複眼で表示されるので scrcpy -c 1310:1410:120:100
などと画面サイズと位置を指定して実行すると単眼にすることも可能である。
モバイル用の最適化
Wave SDKのドキュメンテーションに、モバイル向けの最適化に関する情報があるので参考にしてください。特に、Build settingでTexture CompressionをASTCに設定することに注意してください。