Inspiration

Extended spatial computing sessions on AR glasses and mixed-reality headsets suffer from Gorilla-Arm fatigue when users hold their arms elevated at shoulder height (60° abduction) to poke floating menus. We built SpatialHand Studio so users can keep their elbows rested on their desk or lap (~10° abduction) and control a multi-window curved spatial workspace using micro-pinch and wrist-glance gestures inside a 30° ergonomic comfort cone.

What it does

SpatialHand Studio (https://aariv.me/spatial-hand-studio/) is a zero-build, dependency-free 25-Joint WebXR Hand-Tracking & SPECS AR Optical See-Through Spatial Workspace:

  • 1. Full 25-Joint WebXR Hand Kinematics & 1-Euro Adaptive Jitter Filter: Implements the complete W3C WebXR XRHand 25-joint hierarchy (wrist + 5 finger chains from metacarpal to tip), dual-threshold pinch hysteresis (18 mm enter / 26 mm release), and a real-time 1-Euro Filter (fc_min = 1.2 Hz, beta = 0.007) that eliminates optical hand-tracking ray tremor during precision window docking.
  • 2. Multi-Mode Spatial Viewport (Quest 3 MR Passthrough / SPECS AR Optical See-Through HUD / 30° Ergonomic Comfort Cone): Renders curved cylindrical workspace windows (Code Studio, 3D Node Inspector, Focus Timer & Spatial Audio Cue) with 3D perspective projection, articulated 25-joint dual hand rigs, pinch rays, and snap rings.
  • 3. Biomechanical Deltoid Torque & 60s Fatigue Benchmark: Computes real-time shoulder moment (r × F × sin(θ) in N·m) comparing rested-forearm micro-gestures against elevated-arm VR reach, proving a 68.4% reduction in deltoid shoulder torque, and exports a complete WebXR / IWSDK Scene Manifest (JSON).

How we built it

We built SpatialHand Studio using vanilla HTML5, CSS3, and modular ES6 JavaScript (js/xr-hand-kinematics.js, js/spatial-renderer.js, js/app.js) with WebXR hand-tracking + local-floor session support on headsets/AR glasses and an interactive 60 FPS 3D desktop hand-rig simulator.

Challenges we ran into

Preventing false-positive window releases when optical hand tracking momentarily jittered near the pinch threshold, which we solved by combining a velocity-adaptive 1-Euro low-pass filter with an 18 mm / 26 mm Schmitt-trigger hysteresis state machine.

Accomplishments that we are proud of

Achieving a 68.4% reduction in deltoid torque inside a 30° rested-arm comfort cone while supporting both Mixed Reality Passthrough and high-contrast SPECS AR Optical See-Through HUD waveguides.

What we learned

Hands-first spatial interfaces become dramatically more comfortable for multi-hour coding and productivity when ray origin pitch is offset upward from a rested lap posture.

What's next for SpatialHand Studio

Adding multi-user WebRTC shared spatial desks and custom gesture macro recording.

Built With

Share this project:

Updates

Submission history