VRM+Quest+Unityでハンドトラッキングしつつ、アバター・3Dモデルを動かす 準備編:ハンドトラッキングを準備する

所用でハンドトラッキングも含めたモーションデータを.animファイルに書き出す必要があったので、Questでハンドトラッングする方法をまとめてみました。記事はいろいろとありますが、ビルドの準備など途中プロセスを飛ばしているものも多かったので、最初から書いています。Unityなんもわからんでも多少分かるようにできたハズ…

検証環境

Unity2019.2.21f1、Windows10、OculusQuest(Oculus Link・ハンドトラッキング設定済み)

Oculus Linkが動くか確認する(ケーブルが動作するか念のための確認)

1.ここからセットアップアプリをダウンロードしてインストールする https://www.oculus.com/setup/

2.デバイス設定をクリックし、Questを選択

3.ケーブルを接続して「次」へ

4.「Oculus Link(ベータ版)の設定が完了しました」という画面が出てきたらQuestをかぶる

5.メニュー画面の右上に「Oculus Link(ベータ版)をオンにする」が出てくるので、それをクリックするとOculus Link(ベータ版)になる

6.VRChat等を立ち上げ、PCと同様に動くか確認する。Steam系アプリを立ち上げたい場合は、「バーチャルデスクトップ」を選択すると自分のデスクトップが出てくるので、Steamアプリなどから立ち上げる

Questでアプリがビルドできるかチェックする

Oculus LinkはONでもOFFでもどちらでもOKです。

1.スマホのOculusアプリでつながっているQuestをタップする

2.「設定 → その他の設定 」をタップし、「開発者モード」をタップしてONにする。開発者登録をしていない場合は登録する

3.Unity2019.3以下がインストールされているか確認する

4.UnityHubの「インストール」から各バージョンの右上にある「…」をクリックし、「モジュールを加える」で「Android Build Support」「Android SDK & NDK Tools」「OpenJDK」にチェックを入れる
(この2つは「Android Build Support」の▶︎をクリックすると出てきます)

5.「次へ」を押してインストール。「Android Build Support」のみインストールされていることがあるので注意

-------次回プロジェクトファイルを作るときはここから-------

6.3DでUnityのプロジェクトを作成

7.「File」メニュー→「Build Settings」を選択する

8.「Platform」のところにある「Android」を選択し、「Switch Platform」をクリックする

9.「Player Settings」をクリックし、いちばん下の「XR Settings」から「Virtual Reality Supported」にチェックを入れる

10.「Virtual Reality SDKs」の「+」をクリックし、「Oculus」を選択する

11.「Other Settings」の「Graphics APIs 」にある「Vulkan」をクリックし、「-」を押して削除する

12.「Other Settings」の「Package Name」にある「com.なんとか.プロジェクトファイル名」の「なんとか」の部分を適当な名前にする

13.「Other Settings」の「Minimam API Level」を「Android 6.0」にする

14.「Project Settings」「Build Settings」のウィンドウを閉じてる

15.Assets Storeから「Oculus Integration」をダウンロード&インポートする。ダイアログがいろいろと出てきますが、すべて青いほうをクリックする(Unityが再起動することもありますが、気にしないでOK)

16.「Hierarchy」の「MainCamera」を右クリックして「Delete」で消す

17.「Asset」→「Oculus」→「VR」→「Prefabs」の中にある「OVRCameraRig」をHierarchyに追加

18.SceneにPlane(平面)とCubeを置く

19.「OVRCameraRig」をクリックして、「Inspector」の「Quest Features」→「Hand Tracking Supprt」を「Controllers and Hands」にする

20.さらに「Tracking origin Type」を「Eye Level」から「Floor Level」に変える

21.PCとUSBケーブルで接続し、Questの電源を入れる

22.スマホアプリでPCに接続しているQuestが開発者モードになっていることを確認する

23.「File」メニュー→「Build Settings」→「Build And Run」をクリックしてビルドする

24.パッケージファイルをどこに保存するか聞かれるので、適当なフォルダを選択する

25.平面とキューブが表示されていればOK、ハンドトラッキングはこの後設定するので手が表示されていなくてもOK

ハンドトラッキングの準備をする

1.「Hierarchy」の「OVRCameraRig」の▶︎をクリックし、「TrackingSpace」→「LeftHandAnchor」に「Assets」の「Prefab」の中にある「OVRHandPrefab」をドラッグ&ドロップする。そうすると「OVRHandPrefab」が「LeftHandAnchor」の子になる

2.同様に「RightHandAnchor」に「Assets」の「Prefab」の中にある「OVRHandPrefab」をドラッグ&ドロップする

3.「RightHandAnchor」の「OVRHandPrefab」をクリックし、「Inspector」の中の「Hand Left」と書いてあるところをすべて「Hand Right」にする
具体的には「OVR Hand」「OVR Skelton」「OVR Mesh」

4.左右それぞれの「OVRHandPrefab」をクリックし、「Inspector」→「OVR SkeltonのEnable Physics Capsules」にチェックを入れる。これで当たり判定が取れるようになる

5.一度保存して、PCとQuestを接続して立ち上げる。ハンドトラッキングがOFFになっている場合はONにして使えるようにしておく

6.「Build And Run」をクリックしてビルドすると、黒い手が出てくる





この記事が気に入ったらサポートをしてみませんか?