本日はMetaQuestの学習枠です。
MetaHorizonの開発ドキュメントを読みながら実際に開発を行ってみました。
MetaHorizonの開発ドキュメント
MetaHorizonの開発ドキュメントを実際に手を動かしながら実行時のキャプチャをしていきます。
developers.meta.com
本記事は以下の「ハンドセットアップ」の記事の後半を試します。
developers.meta.com
ハンドスケルトンのバージョンについて
バージョン71よりCore SDKは新しいタイプのハンドスケルトンである「OpenXR Hand Skeleton」をサポートしています。
このスケルトンはハンドスケルトンに関するOpenXR規格に準拠しており、従来の「OVR Hand Skeleton」とはボーン構成や配置が異なります。
OpenXRスケルトンは業界標準であるため、これに切り替えることでプラットフォーム間での互換性が向上します。
なお従来のOVR Hand Skeletonも引き続きサポートされています。
HierarchyタブでOVRCameraRigを選択し、InspectorタブのOVR Manager内にある[Hand Skeleton Version]を[OVR Hand Skeleton]に設定することで使用可能です。

手のスケルトンはOVRManagerの[Hand Skeleton Version]ドロップダウンから変更できます。
ハンドバージョンの違いはMeta Core SDKの関数内で自動的に処理されますが、特定のボーンやその配置を直接参照している場合ハンドスケルトンのバージョンによって挙動が変わる可能性があります。
OVRハンドスケルトンとOpenXRスケルトンの具体的な違いについては以下の通りです。
| OpenXR Hand Skeleton | OVR Hand Skeleton | |
|---|---|---|
| 前腕 | 含まれない | 含まれる |
| 手のひら | 含まれる | 含まれない |
| 親指 | 中手骨、基節骨、末節骨、指先 | 大菱形骨、中手骨、基節骨、末節骨、指先 |
| 人差し指 | 中手骨、基節骨、中節骨、末節骨、指先 | 基節骨、中節骨、末節骨、指先 |
| 中指 | 中手骨、基節骨、中節骨、末節骨、指先 | 基節骨、中節骨、末節骨、指先 |
| 薬指 | 中手骨、基節骨、中節骨、末節骨、指先 | 基節骨、中節骨、末節骨、指先 |
| 小指 | 中手骨、基節骨、中節骨、末節骨、指先 | 中手骨、基節骨、中節骨、末節骨、指先 |
| 合計 | 26関節 | 24関節 |
OpenXR Hand Skeletonの配置
両手とも関節はZ軸が前方、Y軸が上方を向くように配置されます。
OVR Hand Skeletonの配置
右手はX軸が前方、Y軸が上方を向くように配置され、左手はそれを鏡像反転させた配置になります。