JavaScripture
Contribute via GitHub Feedback

XRSession : EventTarget

Provides state for a current Augmented Reality (AR) or Virtual Reality (VR) session. Created through navigator.xr.requestSession().

Instance Properties

inputSources : Array<XRInputSource>  

renderState : XRRenderState  

visibiltyState : String  

Will be one of 'visible', 'visible-blurred', or 'hidden'.

Instance Methods

cancelAnimationFrame(handle : Number) : undefined

end() : Promise<undefined>

requestAnimationFrame(callback : Function) : Number
callback(time : Number, frame : XRFrame) : undefined

Schedules callback to be called before the next time the browser renders a frame to the screen. The time parameter to callback is the number of milliseconds since the page loaded. Returns a unique handle that can be passed to cancelAnimationFrame() to stop callback from being called.

Example:

Run

Results:

 

requestReferenceSpace(type : String) : Promise<XRReferenceSpace>

type must be one of 'viewer', 'local', 'local-floor', 'bounded-floor', or 'unbounded'.

updateRenderState([state : Object]) : undefined
state : {
depthNear :Number
depthFar :Number
inlineVerticalFieldOfView :NumberOnly valid for 'inline' sessions.
baseLayer :XRWebGLLayer
layers :Iterable<XRLayer>
}

Instance Events

onend / 'end'  
listener(event : XRSessionEvent) : undefined

oninputsourceschange / 'inputsourceschange'  
listener(event : XRInputSourcesChangeEvent) : undefined

onselect / 'select'  
listener(event : XRInputSourceEvent) : undefined

onselectend / 'selectend'  
listener(event : XRInputSourceEvent) : undefined

onselectstart / 'selectstart'  
listener(event : XRInputSourceEvent) : undefined

onsqueeze / 'squeeze'  
listener(event : XRInputSourceEvent) : undefined

onsqueezeEnd / 'squeezeEnd'  
listener(event : XRInputSourceEvent) : undefined

onsqueezeStart / 'squeezeStart'  
listener(event : XRInputSourceEvent) : undefined

onvisibilitychange / 'visibilitychange'  
listener(event : XRSessionEvent) : undefined