VREyeParameters

This is an experimental technology
Because this technology's specification has not stabilized, check the compatibility table for usage in various browsers. Also note that the syntax and behavior of an experimental technology is subject to change in future versions of browsers as the specification changes.

The VREyeParameters interface of the WebVR API represents all the information required to correctly render a scene for a given eye, including field of view information.

This interface is accessible through the VRDisplay.getEyeParameters() method.

Properties

VREyeParameters.offset  Read only
Represents the offset from the center point between the user's eyes to the center of the eye, measured in meters.
VREyeParameters.fieldOfView Read only
Describes the current field of view for the eye, which can vary as the user adjusts their interpupillary distance (IPD).
VREyeParameters.renderWidth Read only
Describes the recommended render target width of each eye viewport, in pixels.
VREyeParameters.renderHeight Read only
Describes the recommended render target height of each eye viewport, in pixels.

Examples

navigator.getVRDisplays().then(function(displays) {
  // If a display is available, use it to present the scene
  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');
      // Set the canvas size to the size of the vrDisplay viewport
      var leftEye = vrDisplay.getEyeParameters('left');
      var rightEye = vrDisplay.getEyeParameters('right');
      canvas.width = Math.max(leftEye.renderWidth, rightEye.renderWidth) * 2;
      canvas.height = Math.max(leftEye.renderHeight, rightEye.renderHeight);
      drawVRScene();
    });
  });
});

Specifications

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

Browser compatibility

Feature Chrome Edge Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Basic support No support[1] (Yes) 55 (55)[2] No support No support No support
Feature Android Edge Firefox Mobile (Gecko) IE Phone Opera Mobile Safari Mobile Chrome for Android Samsung Internet for GearVR
Basic support No support No support 55.0 (55) No support No support No support (Yes)[3] (Yes)
 

[1] API Available on all platforms behind a flag, but currently only works on desktop in an experimental version of Chrome (other builds won't return any devices when Navigator.getVRDisplays() is invoked).

[2] Currently only Windows support is enabled by default. Mac support is available in Firefox Nightly.

[3] Currently supported only by Google Daydream.

See also

Document Tags and Contributors

 Contributors to this page: jpmedley, chrisdavidmills, abbycar, Sebastianz
 Last updated by: jpmedley,