diff --git a/examples/js/vr/WebVR.js b/examples/js/vr/WebVR.js index db6fc9fe6bda62e2e359d61deb194b7521f26c9f..95d020cb0f26c96ab83e8d02c33179a97ff7084b 100644 --- a/examples/js/vr/WebVR.js +++ b/examples/js/vr/WebVR.js @@ -7,7 +7,7 @@ var WEBVR = { - createButton: function ( renderer ) { + createButton: function ( renderer, options ) { function showEnterVR( device ) { @@ -38,9 +38,12 @@ var WEBVR = { function onSessionStarted( session ) { + if ( options === undefined ) options = {}; + if ( options.frameOfReferenceType === undefined ) options.frameOfReferenceType = 'stage'; + session.addEventListener( 'end', onSessionEnded ); - renderer.vr.setSession( session ); + renderer.vr.setSession( session, options ); button.textContent = 'EXIT XR'; currentSession = session; diff --git a/src/renderers/webvr/WebXRManager.js b/src/renderers/webvr/WebXRManager.js index aaf971bebe3fad71af2c1aae74fae4f9a5b28a9d..048495d6b6093179e6554bf60ef8eaa016944e77 100644 --- a/src/renderers/webvr/WebXRManager.js +++ b/src/renderers/webvr/WebXRManager.js @@ -58,7 +58,7 @@ function WebXRManager( renderer ) { // - this.setSession = function ( value ) { + this.setSession = function ( value, options ) { session = value; @@ -72,7 +72,7 @@ function WebXRManager( renderer ) { } ); session.baseLayer = new XRWebGLLayer( session, gl ); - session.requestFrameOfReference( 'stage' ).then( function ( value ) { + session.requestFrameOfReference( options.frameOfReferenceType ).then( function ( value ) { frameOfRef = value;