Help us understand the problem. What is going on with this article?

OculusQuest ハンドトラッキングをとりあえず試す

ついにハンドトラッキングのSDKが実装!

2019年12月20日に待望のOculusQuestのハンドトラッキングのSDKが公開されたのでとりあえずハンドトラッキングを試したい人向け
より詳しい情報は公式のリファレンスを読んだりすることをお勧めします

この記事は以下の環境での実装です
Unity 2018.4.14f1
OculusIntegration ver 12.0 ( Unityの対象バージョンは 2017.4.30 以上 )

AssetStoreのバージョン情報がバグってる?
既にOculusIntegrationを導入してるプロジェクトだとアップデートするか否かのダイアログに 1.44 とかって書いてあったからこっちが本来のバージョンと思われる

また本記事はOculusQuestのアプリビルドができることを前提としています
参考記事
0から始めるQuestビルド
Unityで作ったアプリをOculus Questで動かす

とりあえず実装完了しててより詳しい情報を知りたい方は↓の参考ページより
OculusQuest ハンドトラッキングSDKから、指Boneの情報を取得し分析する
Unity Oculus Quest ハンドトラッキングで5本の指でインタラクションさせる
OculusQuestのハンドトラッキングについて色々調べてみた

導入手順

シーンへの配置

  • 先ずは空のプロジェクトを作成し、適当なシーンを作成
  • OVRCameraRigをシーン上に配置
  • OVRCamerarig > TrackingSpace > LeftHandAnchor, RightHandAnchorにOVRHandPrefabを配置する

OVRHandPrefabの場所は下記画像のとおり、OVRCameraRig等のプレハブがあるところに置いてあるので右手、左手それぞれのAnchorにOVRHandPrefabを配置する
image.png
image.png

パラメータの設定

次にOVRHandPrefabのInspectorを見てみる
image.png

以下の三つのコンポーネント
OVRHandHandType
OVRSkeletonSkeletonType
OVRMeshMeshType
をそれぞれ左手なら Hand Left、右手なら Hand Right に設定する

次にOVRCameraRigを選択
OVRManagerHand Tracking Support のドロップダウンを Controllers And Hands または Hands Only に設定する
当記事ではHands Onlyに設定
image.png

それぞれの設定での動作の違い

Hands Only
コントローラ設定でアプリを起動することが出来、その時はコントローラのトラッキングのみ行わる
ハンドトラッキングアプリとして動く、コントローラはトラッキングされない
アプリ中にコントローラのボタンを押下してもハンドトラッキングからコントローラに切り替わることは無い

Controllers And Hand
基本的にハンドトラッキングのアプリとして動く、アプリ起動中にコントローラを操作するとコントローラを認識し、以後ハンドトラッキングが切れる( ボタン押下、コントローラ動かしただけでは特に反応しなかった )
アプリを閉じるとコントローラ操作の状態になっており設定から再度手を使うを選択する必要がある

Controllers Only
手を使う設定でアプリを起動しようとするとコントローラが必要ですというダイアログが開きアプリを起動できない
アプリ中は当然ハンドトラッキングは行われない

これらの動作は今後のOculusIntegrationの更新で変わると思われるのであくまで現時点での動作ということで...

ビルド、そして実機へ...

handtracking.gif

良し、いい感じ

とりあえず駆け足気味だったがこれでハンドトラッキングをとりあえず試すことが出来た

感想

遅延も言われなきゃ気づかないくらいだしトラッキングが切れる時は割と思い切りのいい感じにトラッキングが切れるから不快感はない
トラッキング切れるか否かの境目らへんで手がぐちゃぐちゃになるのが一番いやだからね

コントローラ設定の時にアプリを起動すると初めからコントローラ操作になる、今のところハンドトラッキング -> コントローラは遷移するがコントローラ -> ハンドトラッキングへの遷移はないと思われるてかできるようにしてほしい、うっかりコントローラ操作しちゃったときにホームの設定を直すのは手間なので

ハンドトラッキングのアプリの時はアプリを閉じる方法が特にない、ジェスチャとか何かしらのメニューを自作する必要があると思われる

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした