Skip to main content

Interface: HandPoseSource

Defined in: 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: adapter.ts:70

Parameters

ParameterType
handHand

Returns

PoseTuple | undefined


hasHands()?

optional hasHands(): boolean;

Defined in: 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