Meta Quest Developer Hubをかじってみたらいい感じだった

# 初めに
こんにちは！Iwaken Lab.のサックーです！
普段はUnityでのVR開発や、VRChatワールド作成などをしています。
本記事は、[Iwaken Lab.アドベントカレンダー2023](https://qiita.com/advent-calendar/2023/iwakenlab)の4日目の記事になります。
昨日は[さきやまさんの技術本の表紙デザインについての記事](https://qiita.com/sakiyama0/items/1c4b61590672f93d3afd)でした。

さて、ここではMeta Questシリーズを使って開発するときに便利なツールである、[__Meta Quest Developer Hub(MQDH)__](https://developer.oculus.com/documentation/native/android/ts-odh/)について紹介していこうと思います。自分もまだ使い始めたばかりで使いこなせていない機能も多いですが、便利な機能がたくさんあるので、それらをざっとお伝えしていきます。
# 準備編
まず[こちら](https://developer.oculus.com/downloads/package/oculus-developer-hub-win)からツールをダウンロードします。[(Macはこちら)](https://developer.oculus.com/downloads/package/oculus-developer-hub-mac)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2341187/3cb03447-1b4b-a04b-dc62-ad8581058ad9.png)

展開するとインストーラーがあるので実行してインストールします。
インストールできたら開いてみましょう。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2341187/152f3f97-8b93-7f71-546e-2f57c4223700.png)
ダイアログを進むとログインが求められるので開発者登録済みのアカウントでログインしましょう
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2341187/974e42fb-0f20-374a-46d2-6869ab32e673.png)
これでMQDH側の設定ができました
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2341187/c2fd1e0e-0506-40e5-6b1c-7e40b352f690.png)

もしこの時にADBが重複して存在している旨の警告が出た場合は、設定のADB Pathから既存のadb.exeを指定することで解消できます。（無視しても問題ない？）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2341187/9ba6a8fb-b503-7081-bb24-d504952e1dd4.png)

そしてQuestをPCと有線で接続し、Quest側でUSBデバッグを許可すると __Device Manager__ のところにいろいろと項目が出てきます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2341187/293a7631-f638-d327-584b-fb8f36837fa4.png)

これで準備ができました。

# 機能紹介
## apkのインストールと実行
開発をしているとビルドしたapkをインストールする機会は多いと思います。自分は以前SideQuestを使ったりしていましたが、微妙に感じていた不便な点がMQDHでいい感じに解消されていました。
MQDHの場合apkファイルを上記画面にD&Dでインストールができます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2341187/50f3b489-e3b5-5229-7080-33b06311c914.png)
さらにインストールされたapkを、この画面から実行することができます！
アプデで階層が深くなった提供元不明の一覧を、HMD側で操作する必要が無いのはとても便利です。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2341187/0f3f35c0-300c-1464-d7d6-4159f5e6e5ef.png)
ちなみに同じところからアンインストールができるのも地味に便利ですね。

## スクショ＆動画撮影＆ミラーリング
HMD側のスクショや動画撮影をMQDH側から行い、直接PCに保存することができます。ミラーリングもここからワンクリックで行えます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2341187/12ece6c1-b2f4-43f3-57ff-1fa0f3cf37e8.png)

## ウェブサイトをHMD内で開く
ここにURLを貼り付けることでHMD内のブラウザでそのサイトを表示させることができます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2341187/53eec1b6-8b08-3b5b-3c6c-c2506511583c.png)
標準ブラウザに対応しているかなどが確認できて良いですね。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2341187/c6c08bef-96ba-1f18-6bf9-0d670497ee06.png)

## 実行時のログを見る
ここを押すことでHMDの実行時ログを見ることができます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2341187/46e26b79-bc44-998c-6f5f-5e0f7453a8f1.png)
自分のアプリに関するものだけ見たい場合は検索欄でUnityと打つと見やすいです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2341187/03899357-6dfc-718e-5b0b-9c96ac10790b.png)

## OVR Metrics Toolを使う
OVR Metrics Toolの設定もここから行えます。HMDにインストールしていない場合はここから入れられるはずです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2341187/881e8838-a792-ef4d-29dd-e618ba0df064.png)
HMD内にオーバーレイとして各種使用状況などが表示されます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2341187/9fe106e9-3bb1-03e7-0ff4-9e35631954d2.png)
何を表示するかなどのカスタマイズもできますが、表示位置の調整はHMD側でしかできないようです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2341187/bdc7026b-0f14-ac1c-ef65-4ce94931a4d0.png)

## PerformanceAnalyzerを使う
Metricsツールより詳細なものを見たい場合はMQDH側で見ることができます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2341187/91627070-2717-2ad4-21b7-cc5f4a8a883b.png)


## 接顔センサーの無効化
ここをオフにすることで、HMDを外してもスリープにならないようになります。ただHMD本体を再起動するとオンの状態に戻ってしまいます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2341187/0cd84490-cfe9-b7a3-7c49-83eb117ce240.png)


## 無線接続
そしてこれらの操作を全て無線で行えるオプションがあります。ここをオンにした後、有線のケーブルから取り外せばよいです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2341187/50778f63-051d-efc8-3f3d-c5e6cf9f13f1.png)
apkのインストール等も無線で行うことができるようになり非常に便利です。
ただPC側をスリープなどにすると接続が解除されてしまい、再度有線でつなぎなおす必要があります。

# 終わりに
ここまでいろいろな機能を紹介してきましたが、絶妙に痒い所に手が届く機能群がそろっているかなと思います。紹介しなかった機能もまだまだたくさんあるようなので、もっと使いこなして快適なQuest開発ライフを送りたいですね。

さて、明日は[きょうすけさん](https://twitter.com/kyo_chan1357)によるHololensの記事のようです。ぜひご覧ください～！