Upgrade to Pro — share decks privately, control downloads, hide ads and more …

HandGestureTool for AppleVisionPro

HandGestureTool for AppleVisionPro

- Describe HandGestureTool for AppleVisionPro
- Released on UnityAssetStore

Cova8bitdots

June 26, 2024
Tweet

More Decks by Cova8bitdots

Other Decks in Programming

Transcript

  1. 登壇者情報 Graf fi ty(ג) ॴଐUnityΤϯδχΞ
 ઐ໳ྖҬɿα΢ϯυϓϩάϥϛϯά UnityΛத৺ͱͨ͠৘ใൃ৴ͳͲΛߦ͍ͬͯ·͢ɻ 2 visionOS engineer

    オンラインLT会 vol.5 著書&査読協 力 @8bitdots https://qiita.com/Cova8bitdot @cova8bit.bsky.social
  2. Apple Vision Pro 専 用 タイピングゲーム 『Ninja Gaze Typing 』

    5 プロダクト紹介 - Ninja Gaze Typing WWDCの基調講演 visionOS説明部分にて アイコンが掲載されました
  3. 目 次 1. Hand Gesture Tool for Apple Vision Pro

    の紹介 2. 製作にあたって遭遇した技術的課題
  4. 目 次 1. Hand Gesture Tool for Apple Vision Pro

    の紹介 2. 製作にあたって遭遇した技術的課題
  5. Unity のAssetStore でPolySpatial向けのハンドジェスチャーライブラリをリリースしました Hand Gesture Tool for Apple Vision Pro

    の紹介 https://assetstore.unity.com/packages/tools/input-management/hand-gesture-tool-for-apple-vision-pro-287273
  6. Unity のAssetStore でPolySpatial向けのハンドジェスチャーライブラリをリリースしました Hand Gesture Tool for Apple Vision Pro

    の紹介 https://assetstore.unity.com/packages/tools/input-management/hand-gesture-tool-for-apple-vision-pro-287273
  7. ライブラリの特徴 Hand Gesture Tool for Apple Vision Pro の紹介 Q.

    あれ?Unity公式がハンドジェスチャー ライブラリ出してませんでしたっけ?
  8. 今回作ったライブラリはUnity公式のライブラリに 比 べて以下の改善点があります Hand Gesture Tool for Apple Vision Pro

    の紹介 1. カスタム条件を作成可能 • Unity公式は現状指の曲げ具合のみ 2. ポーズを複数組み合わせてモーションの検知が可能 • Unity公式は現状シンプルなポーズ検知のみ • 製作したライブラリ • ビームの構え→発射のようなシーケンシャルな ジェスチャーを設定可能 3. UnityEditor上で設定した 手 のポーズを確認可能 • Inspector 上で設定条件を反映した 手 のモデルを表 示 します
  9. 目 次 1. Hand Gesture Tool for Apple Vision Pro

    の紹介 2. 製作にあたって遭遇した技術的課題
  10. 定義にあるはずのボーン(関節)が無い! 18 製作にあたって遭遇した技術的課題 XRHand では各種指の関節以外に以下の関節情報が取得できます • Palm( 手 のひら) •

    なんとVisionOS側からは取れない! • https://varrall.substack.com/p/hand-tracking-in-visionos • 下記画像の通りそもそも定義がVisionOSにはない • Unity.XRHand は様々なXR系デバイスを横断的に利 用 可能にするため このような事象が起きる
  11. 定義にあるはずのボーン(関節)が無い! 19 製作にあたって遭遇した技術的課題 XRHand では各種指の関節以外に以下の関節情報が取得できます • Palm( 手 のひら) •

    なんとVisionOS側からは取れない! • https://varrall.substack.com/p/hand-tracking-in-visionos • 下記画像の通りそもそも定義がVisionOSにはない • Unity.XRHand は様々なXR系デバイスを横断的に利 用 可能にするため このような事象が起きる • Palmの位置や 方 向はジェスチャーにはかなり重要な情報 • 対策 • 他の関節から推測する • 手首 →親指の付け根 方 向ベクトルと 手首 →中指の付け根 方 向ベクトルの外積から求める • 手 のひら周辺の関節の平均(重 心 )で代 用
  12. 定義にないはずのボーン(関節)がある! 21 製作にあたって遭遇した技術的課題 VisionOS 側は • 25: 手首 →肘 方

    向を 示 す .handForearmWrist • 26: 肘関節を 示 す .handForearmArm があります。 一方 XRHandにはこの定義がありません! が、PolySpatial SDKを調べると独 自 のEnumが 定義されており、これを無理やり XRHandJointID 型としてキャストして使うことでBone情報を 取得可能です。 https://docs.unity3d.com/Packages/[email protected]/api/ UnityEngine.XR.VisionOS.VisionOSHandJointID.html
  13. まとめ • HandGesture を使ったコンテンツ開発のための専 用 ツールを開発・リリースしました • https://assetstore.unity.com/packages/tools/input-management/hand-gesture-tool-for-apple-vision-pro-287273 • HandGestureをそのまま実現しようとすると関節情報をがっつり

    色 々計算しないと難しいです • 本ツールは 面 倒な計算部分を肩代わりし、 非 エンジニアでもポーズを簡単に作れるように 設計しています • 実機で動作確認しないとわからないという開発フロー改善のため Editor上でのポーズ確認が出来るのが 非 常に 大 きいです 22 最後に
  14. Hand Gesture Tool for Apple Vision Pro ぜひご活 用 ください

    最後に https://assetstore.unity.com/packages/tools/input-management/hand-gesture-tool-for-apple-vision-pro-287273