Skip to content

Type Alias: WorldOptions ​

WorldOptions = object

Defined in: packages/core/src/init/world-initializer.ts:128

Options for initializeWorld / World.create.

Remarks ​

Defaults are tuned for VR; camera and renderer behavior can be customized through WorldOptions.render.

Properties ​

assets? ​

optional assets: AssetManifest

Defined in: packages/core/src/init/world-initializer.ts:130

Asset manifest to preload before the first frame.


components? ​

optional components: ComponentManifest

Defined in: packages/core/src/init/world-initializer.ts:133

Application components registered before the initial level is loaded.


features? ​

optional features: object

Defined in: packages/core/src/init/world-initializer.ts:174

Opt‑in feature systems.

camera? ​

optional camera: boolean

Camera access for video streaming.

Default Value ​
ts
false

environmentRaycast? ​

optional environmentRaycast: boolean

Environment Raycast (hit-test against real-world surfaces).

Default Value ​
ts
false

gaze? ​

optional gaze: object

Tuning for gaze + pinch input. GazeSystem registration is driven by the xr.features.gazeTracking session feature, not by this entry — this only overrides the system's defaults when gaze is already active.

gaze.coneAngle? ​

optional coneAngle: number

Half-angle of the gaze selection cone, in degrees.

Default Value ​
ts
5
gaze.dwellWindowSeconds? ​

optional dwellWindowSeconds: number

Dwell consensus window in seconds; 0 disables it.

Default Value ​
ts
0.15
gaze.filterBeta? ​

optional filterBeta: number

1€ filter beta.

Default Value ​
ts
0.05
gaze.filterMinCutoff? ​

optional filterMinCutoff: number

1€ filter min cutoff.

Default Value ​
ts
1.5
gaze.logDiagnostics? ​

optional logDiagnostics: boolean

Emit [iwsdk][gaze] console diagnostics.

Default Value ​
ts
true
gaze.maxRayLength? ​

optional maxRayLength: number

Maximum gaze cone distance in meters.

Default Value ​
ts
30
gaze.pointerTransformFollowsHand? ​

optional pointerTransformFollowsHand: boolean

Drag from the pinching hand's ray space once selected.

Default Value ​
ts
true
gaze.showDebugReticle? ​

optional showDebugReticle: boolean

Show a developer-only gaze hit reticle.

Default Value ​
ts
false
gaze.suppressWhenDirectPointerActive? ​

optional suppressWhenDirectPointerActive: boolean

Yield to near touch/grab pointers when they're active.

Default Value ​
ts
true
gaze.trackingLossGraceSeconds? ​

optional trackingLossGraceSeconds: number

Keep gaze mode active briefly after tracking becomes invalid.

Default Value ​
ts
5

grabbing? ​

optional grabbing: boolean | { useHandPinchForGrab?: boolean; }

Grabbing (one/two‑hand, distance).

Default Value ​
ts
false

locomotion? ​

optional locomotion: boolean | { browserControls?: BrowserLocomotionControls; comfortAssistLevel?: number; enableJumping?: boolean; initialPlayerPosition?: [number, number, number]; turningMethod?: TurningMethod; useWorker?: boolean; }

Locomotion (teleport/slide/turn). Boolean or config.

Type Declaration ​

boolean

{ browserControls?: BrowserLocomotionControls; comfortAssistLevel?: number; enableJumping?: boolean; initialPlayerPosition?: [number, number, number]; turningMethod?: TurningMethod; useWorker?: boolean; }

Default Value ​
ts
false

physics? ​

optional physics: boolean | { interpolation?: boolean; updateFrequency?: number; useWorker?: boolean; }

Physics simulation (Havok). Boolean or config.

Type Declaration ​

boolean

{ interpolation?: boolean; updateFrequency?: number; useWorker?: boolean; }

Default Value ​
ts
false

sceneUnderstanding? ​

optional sceneUnderstanding: boolean | { showWireFrame?: boolean; }

Scene Understanding (planes/meshes/anchors). Boolean or config.

Default Value ​
ts
false

spatialUI? ​

optional spatialUI: boolean | { componentSets?: UIKitMLComponentSet[]; forwardHtmlEvents?: boolean; kit?: UIKitMLKit; preferredColorScheme?: ColorScheme; }

Spatial UI systems (PanelUI/ScreenSpace/Follow). Boolean or config.

Type Declaration ​

boolean

{ componentSets?: UIKitMLComponentSet[]; forwardHtmlEvents?: boolean; kit?: UIKitMLKit; preferredColorScheme?: ColorScheme; }

Default Value ​
ts
true

input? ​

optional input: object

Defined in: packages/core/src/init/world-initializer.ts:165

Browser input and pointer interaction configuration.

canvasPointerEvents? ​

optional canvasPointerEvents: CanvasPointerEventsOption

Forward DOM pointer events from the renderer canvas into the Three scene.

Default Value ​
ts
true

level? ​

optional level: { url?: string; } | string

Defined in: packages/core/src/init/world-initializer.ts:136

Native scene JSON level to load after initialization. Accepts a URL string or an object with a url field.


render? ​

optional render: object

Defined in: packages/core/src/init/world-initializer.ts:146

Renderer & camera configuration.

camera? ​

optional camera: object

Initial local camera pose under world.player.

camera.lookAt? ​

optional lookAt: [number, number, number]

camera.position? ​

optional position: [number, number, number]

camera.quaternion? ​

optional quaternion: [number, number, number, number]

camera.rotation? ​

optional rotation: [number, number, number]

far? ​

optional far: number

Far clipping plane.

Default Value ​
ts
200

fov? ​

optional fov: number

Camera field of view in degrees.

Default Value ​
ts
50

near? ​

optional near: number

Near clipping plane.

Default Value ​
ts
0.1

stencil? ​

optional stencil: boolean

Enable stencil buffer.

Default Value ​
ts
false

xr? ​

optional xr: false | XROptions & object

Defined in: packages/core/src/init/world-initializer.ts:143

XR session options and offer behavior. Set to false for browser-only worlds. Set launchOnSessionGranted to handle immersive browser entry that grants a session before or after asynchronous world initialization.

Privacy | Terms