W3cubDocs

/DOM

VRLayerInit.leftBounds

This is an experimental technology
Check the Browser compatibility table carefully before using this in production.

The leftBounds property of the VRLayerInit interface (dictionary) defines the left texture bounds of the canvas whose contents will be presented by the VRDisplay.

Syntax

var myVRLayerInit = { };
myVRLayerInit.leftBounds = [0.0, 0.0, 0.5, 1.0];

Value

An array of four floating point values, which can take values from 0.0–1.0:

  • The left offset of the bounds.
  • The top offset of the bounds.
  • The width of the bounds.
  • The height of the bounds.

If leftBounds is not specified in the dictionary, the default value used is [0.0, 0.0, 0.5, 1.0].

Examples

// currently returns an empty array
var layers = vrDisplay.getLayers();

if(navigator.getVRDisplays) {
  console.log('WebVR 1.1 supported');
  // Then get the displays attached to the computer
  navigator.getVRDisplays().then(function(displays) {
    // If a display is available, use it to present the scene
    if(displays.length > 0) {
      vrDisplay = displays[0];
      console.log('Display found');
      // Starting the presentation when the button is clicked: It can only be called in response to a user gesture
      btn.addEventListener('click', function() {
        vrDisplay.requestPresent([{ source: canvas }]).then(function() {
          console.log('Presenting to WebVR display');

          // Here it returns an array of VRLayerInit objects
          var layers = vrDisplay.getLayers();

          ...
        });
      });
    }
  });
}

VRLayerInit objects look something like this:

{
  leftBounds : [ ... ],
  rightBounds: [ ... ],
  source: canvasReference
}

Note: The canvasReference refers to the <canvas> element itself, not the WebGL context associated with the canvas. The other two members are arrays

Specifications

Specification Status Comment
WebVR 1.1
The definition of 'leftBounds' in that specification.
Editor's Draft Initial definition

Browser compatibility

Feature Chrome Edge Firefox Internet Explorer Opera Safari
Basic support Yes1 2 Yes

553

584

No ? ?
Feature Android webview Chrome for Android Edge mobile Firefox for Android IE mobile Opera Android iOS Safari
Basic support No Yes5 ? ? No ? ?

1. Only works on desktop in an experimental version of Chrome (other builds won't return any devices when Navigator.getVRDisplays() is invoked).

2. This feature is behind the WebVR preference. To change preferences in Chrome, visit chrome://flags.

3. Windows support was enabled in Firefox 55.

4. macOS support was enabled in Firefox 58.

5. Currently supported only by Google Daydream.

See also

© 2005–2018 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/VRLayerInit/leftBounds