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

HandgestureTool for AppleVisionPro

HandgestureTool for AppleVisionPro

Graffity

July 22, 2024
Tweet

More Decks by Graffity

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. XRHand1.4.x からHandGesture アセットはありますが実装済みの機能は少ないです Hand Gesture Tool for Apple Vision Pro

    の紹介 指の条件設定 HandShape Asset 指の形以外の条件設定 HandPoseAsset
  9. 今回作ったライブラリはUnity公式のライブラリに 比 べて以下の改善点があります Hand Gesture Tool for Apple Vision Pro

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

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

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

    なんとVisionOS側からは取れない! • https://varrall.substack.com/p/hand-tracking-in-visionos • 下記画像の通りそもそも定義がVisionOSにはない • Unity.XRHand は様々なXR系デバイスを横断的に利 用 可能にするため このような事象が起きる • Palmの位置や 方 向はジェスチャーにはかなり重要な情報 • 対策 • 他の関節から推測する • 手首 →親指の付け根 方 向ベクトルと 手首 →中指の付け根 方 向ベクトルの外積から求める • 手 のひら周辺の関節の平均(重 心 )で代 用
  13. 定義にないはずのボーン(関節)がある! 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
  14. まとめ • HandGesture を使ったコンテンツ開発のための専 用 ツールを開発・リリースしました • https://assetstore.unity.com/packages/tools/input-management/hand-gesture-tool-for-apple-vision-pro-287273 • HandGestureをそのまま実現しようとすると関節情報をがっつり

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

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