Develop

Immersive Web SDK

Updated: Sep 24, 2026|
Version
v1.0

Version v1.0 Release Notes

New Features

  • Added gaze-and-pinch interaction through world.xr.features.gazeTracking so applications can target with gaze and select or manipulate with a pinch from either hand. IWSDK documentation
  • Integrated gaze with the existing RayInteractable, Hovered, Pressed, pointer-event, and grabbing systems so targets do not require gaze-specific components or handlers. IWSDK documentation
  • Added configurable filtering, dwell, selection-cone, tracking-loss, diagnostics, and developer-reticle settings so teams can tune gaze behavior and diagnose input quality. IWSDK documentation
  • Added continuous gaze emulation through IWER 2.5 and the Gaze + Hands DevUI workflow so developers can test gaze-and-pinch interactions on desktop. IWSDK documentation
  • Added a development-only target-device preview with head-directed test gaze and a field-of-view mask while preserving native viewer, hand, and controller tracking for on-headset integration testing. IWSDK documentation
  • Added --native-xr-control to connect IWSDK XR and ECS automation to a browser-owned immersive session on Meta Quest. IWSDK documentation
  • Added a gaze-and-pinch interaction lab that demonstrates card targeting, UIKit selection, color changes, distance grabbing, hand-delta movement, release, and return-to-rest behavior. IWSDK documentation
  • Added a managed browser with explicit lifecycle, target routing, runtime ownership, status, wait, recovery, and screenshot tools so development agents can run repeatable WebXR workflows. IWSDK documentation
  • Added held-key browser interactions with bounded automatic cleanup so keyboard-driven tests do not leave input state behind after failures. IWSDK documentation
  • Added live UIKitML element inspection for text, layout, interaction, property, and effective visibility state so developers can diagnose UI behavior without manual scene traversal. IWSDK documentation
  • Added isolated multi-view model previews with authored-material and clay modes, named-part focus, and deterministic geometry diagnostics to make 3D asset review more reliable. IWSDK documentation
  • Added the npm create @iwsdk@latest scaffold so developers can create a new IWSDK application with one command. IWSDK documentation
  • Changes & Improvements

  • Direct touch and active grabs now take priority over gaze, while hand and controller rays resume automatically when tracked gaze becomes unavailable, preserving familiar input fallbacks. IWSDK documentation
  • gazeTracking: true requests gaze as an optional feature, while { "required": true } is available for experiences that cannot operate without gaze. IWSDK documentation
  • Havok physics now runs in a Web Worker at a fixed 60 Hz by default with transferable state and render interpolation, reducing main-thread work while retaining a main-thread compatibility mode. IWSDK documentation
  • Native XR layers now provide more reliable transforms, visibility, sizing, teardown, and fallback behavior. IWSDK documentation
  • Applications, IWSDK, and UIKit now share one optimized Three.js runtime to avoid duplicate rendering dependencies. IWSDK documentation
  • Generated projects now use deterministic package overrides and portable npm and pnpm lifecycle scripts for reproducible setup across environments. IWSDK documentation
  • The starter UI now uses the bundled UIKit default font, removing the runtime dependency on Google Fonts. IWSDK documentation
  • Development servers can now use an explicit local example-asset directory without exposing unrelated files. IWSDK documentation
  • Existing projects should use "three": "npm:super-three@0.181.0" with the matching npm or pnpm override so the application and IWSDK share one supported Three.js instance. IWSDK documentation
  • Breaking: A configured Vite server.port now fails clearly when occupied instead of silently moving to another port. Free the configured port or choose a new one before starting the development server. IWSDK documentation
  • Breaking: Development startup may return before browser commands are ready. Check browserCommandReady or run iwsdk runtime wait before sending automation commands. IWSDK documentation
  • The CLI and Vite plugin should now be upgraded together after active development processes are stopped, preventing mixed-version runtime state. IWSDK documentation
  • Deprecations & Removals

  • Deprecated: The eyeTracking compatibility alias is now deprecated. Use gazeTracking for new and updated projects. IWSDK documentation
  • Bug Fixes

  • Fixed depth-session cleanup, scene mesh updates and bounds, camera lifecycle, pointer visibility, distance-grab handoffs, locomotion wake-up, jumping, and stalled-frame interpolation to improve runtime stability across immersive sessions. IWSDK documentation