Interface: HandPoseSource
Defined in: packages/webxr-uiextensions/src/adapter.ts:69
Supplies a hand's pose each frame as a WebXR GRIP space, the frame
hand-menu.ts documents (-Z toward the thumb, +Y up the arm, the palm
at -X on the right hand and +X on the left). A controller's grip and a
tracked hand's gripSpace both are one; hand JOINT spaces are not, and
must be converted. Returns undefined while that hand is not tracked;
a hand menu on it is then hidden. An adapter without hands at all (a
desktop) supplies no source and falls back to body-follow placement for
hand-locked windows.
Methods
getHandPose()
getHandPose(hand: Hand): PoseTuple | undefined;
Defined in: packages/webxr-uiextensions/src/adapter.ts:70
Parameters
| Parameter | Type |
|---|---|
hand | Hand |
Returns
PoseTuple | undefined
hasHands()?
optional hasHands(): boolean;
Defined in: packages/webxr-uiextensions/src/adapter.ts:78
Whether hands can be tracked at all right now - an XR session with hand or controller input. Off (or absent from the session) means "no hands here", and hand-locked windows fall back to body-follow placement rather than staying hidden, so one page can serve a desktop and a headset. Omit it when the source is always inside a session.
Returns
boolean