files/en-us/web/api/vreyeparameters/index.md
{{APIRef("WebVR API")}}{{Deprecated_Header}}{{Non-standard_Header}}
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.
[!NOTE] This interface was part of the old WebVR API. It has been superseded by the WebXR Device API.
This interface is accessible through the {{domxref("VRDisplay.getEyeParameters()")}} method.
[!WARNING] The values in this interface should not be used to compute view or projection matrices. In order to ensure the widest possible hardware compatibility use the matrices provided by {{domxref("VRFrameData")}}.
navigator.getVRDisplays().then((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", () => {
vrDisplay.requestPresent([{ source: canvas }]).then(() => {
console.log("Presenting to WebVR display");
// Set the canvas size to the size of the vrDisplay viewport
const leftEye = vrDisplay.getEyeParameters("left");
const rightEye = vrDisplay.getEyeParameters("right");
canvas.width = Math.max(leftEye.renderWidth, rightEye.renderWidth) * 2;
canvas.height = Math.max(leftEye.renderHeight, rightEye.renderHeight);
drawVRScene();
});
});
});
This interface was part of the old WebVR API that has been superseded by the WebXR Device API. It is no longer on track to becoming a standard.
Until all browsers have implemented the new WebXR APIs, it is recommended to rely on frameworks, like A-Frame, Babylon.js, or Three.js, or a polyfill, to develop WebXR applications that will work across all browsers. Read Meta's Porting from WebVR to WebXR guide for more information.
{{Compat}}