Class: World 
Defined in: packages/core/src/ecs/world.ts:67
World is the root ECS container, Three.js scene/renderer owner, and XR session gateway.
Remarks 
- Construct a world with World.create (recommended) which wires the renderer, scene, default systems (Input, UI, Audio, Level) and starts the render loop.
 - The world exposes convenience handles like input (XRInputManager), player (XROrigin), and World.assetManager.
 - Feature systems (Grabbing, Locomotion) are opt‑in via WorldOptions.features.
 
Example 
import { World, SessionMode } from '@iwsdk/core';
const container = document.getElementById('scene-container') as HTMLDivElement;
const world = await World.create(container, {
  xr: { sessionMode: SessionMode.ImmersiveVR },
  features: { enableLocomotion: true, enableGrabbing: true },
  level: '/glxf/Composition.glxf'
});Extends 
World
Constructors 
Constructor 
new World():
World
Defined in: packages/core/src/ecs/world.ts:84
Returns 
World
Overrides 
ElicsWorld.constructor
Properties 
_resolveLevelLoad() 
_resolveLevelLoad: () =>
void
Defined in: packages/core/src/ecs/world.ts:80
Returns 
void
activeLevel 
activeLevel:
Signal<Entity>
Defined in: packages/core/src/ecs/world.ts:73
activeLevelId 
activeLevelId:
string='level:default'
Defined in: packages/core/src/ecs/world.ts:74
assetManager 
assetManager: typeof
AssetManager
Defined in: packages/core/src/ecs/world.ts:70
camera 
camera:
PerspectiveCamera
Defined in: packages/core/src/ecs/world.ts:75
input 
input:
XRInputManager
Defined in: packages/core/src/ecs/world.ts:68
player 
player:
XROrigin
Defined in: packages/core/src/ecs/world.ts:69
renderer 
renderer:
WebGLRenderer
Defined in: packages/core/src/ecs/world.ts:76
requestedLevelUrl 
requestedLevelUrl:
string
Defined in: packages/core/src/ecs/world.ts:79
scene 
scene:
Scene
Defined in: packages/core/src/ecs/world.ts:71
sceneEntity 
sceneEntity:
Entity
Defined in: packages/core/src/ecs/world.ts:72
session 
session:
XRSession
Defined in: packages/core/src/ecs/world.ts:77
visibilityState 
visibilityState:
Signal<VisibilityState>
Defined in: packages/core/src/ecs/world.ts:78
xrDefaults 
xrDefaults:
XROptions
Defined in: packages/core/src/ecs/world.ts:82
Default XR options used when calling World.launchXR without overrides.
Methods 
createEntity() 
createEntity():
Entity
Defined in: packages/core/src/ecs/world.ts:96
Returns 
Entity
Overrides 
ElicsWorld.createEntity
createTransformEntity() 
createTransformEntity(
object?,parentOrOptions?):Entity
Defined in: packages/core/src/ecs/world.ts:100
Parameters 
object? 
Object3D
parentOrOptions? 
Entity | { parent?: Entity; persistent?: boolean; }
Returns 
Entity
exitXR() 
exitXR():
void
Defined in: packages/core/src/ecs/world.ts:161
Returns 
void
getActiveRoot() 
getActiveRoot():
Object3D
Defined in: packages/core/src/ecs/world.ts:174
Returns 
Object3D
getPersistentRoot() 
getPersistentRoot():
Object3D
Defined in: packages/core/src/ecs/world.ts:178
Returns 
Object3D
launchXR() 
launchXR(
xrOptions?):void
Defined in: packages/core/src/ecs/world.ts:149
Parameters 
xrOptions? 
Partial<XROptions>
Returns 
void
loadLevel() 
loadLevel(
url?):Promise<void>
Defined in: packages/core/src/ecs/world.ts:154
Request a level change; LevelSystem performs the work and resolves.
Parameters 
url? 
string
Returns 
Promise<void>
registerComponent() 
registerComponent(
component):this
Defined in: packages/core/src/ecs/world.ts:169
Parameters 
component 
Component
Returns 
this
Overrides 
ElicsWorld.registerComponent
update() 
update(
delta,time):void
Defined in: packages/core/src/ecs/world.ts:165
Parameters 
delta 
number
time 
number
Returns 
void
Overrides 
ElicsWorld.update
create() 
staticcreate(container,options?):Promise<World>
Defined in: packages/core/src/ecs/world.ts:203
Initialize a new WebXR world with renderer, scene, default systems, and optional level.
Parameters 
container 
HTMLDivElement
HTML container to which the renderer canvas will be appended.
options? 
Runtime configuration, see WorldOptions.
Returns 
Promise<World>
A promise that resolves to the initialized World.
Remarks 
- This call enables the Input, UI and Audio systems by default.
 - Use WorldOptions.features to enable Locomotion or Grabbing.
 - If WorldOptions.level is provided, the LevelSystem will load it after assets are preloaded.
 
See 
/getting-started/01-hello-xr