Concepts
Updated: Jul 22, 2026
This section gathers the big ideas behind IWSDK — how the engine is structured and how to build XR apps that feel great and run smoothly. Jump into a topic below.
ECS (Entity–Component–System)
- Start here for the core programming model.
- How entities, components, and systems fit together; config signals; queries; lifecycle; patterns.
- Begin: /concepts/ecs.
Three.js Basics for IWSDK
- Practical Three.js concepts in the context of IWSDK: transforms, scene graph, cameras, lights, geometry/materials, raycasting, and rendering performance.
- Begin: /concepts/three-basics.
- Controllers and hands with a unified model: visuals, pointers (ray/grab), XR origin spaces, and the
StatefulGamepad helper. - Begin: /concepts/xr-input.
- High‑performance 3D UI using UIKit (Yoga‑based layout, MSDF text) with familiar authoring via UIKitML, compiled by a Vite plugin.
- Begin: /concepts/spatial-ui.
- Comfort‑first movement: slide with vignette, arc‑based teleport, snap/smooth turn — all powered by a lightweight physics engine that can run in a Worker.
- Begin: /concepts/locomotion.
ECS -> Three.js basics -> XR input -> Spatial UI -> Locomotion
You can dip into any section as needed, but this order builds intuition steadily: data model → rendering basics → input → UI → movement.