This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The source
property of the VRLayerInit
interface (dictionary) defines the canvas whose contents will be presented by the VRDisplay
.
Syntax
var myVRLayerInit = { }; myVRLayerInit.source = myCanvas;
Value
An HTMLCanvasElement
or OffscreenCanvas
object.
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 'source' in that specification. |
Draft | Initial definition |
Browser compatibility
Update compatibility data on GitHub
Desktop | Mobile | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Basic support | Chrome No support No | Edge Full support Yes | Firefox
Full support
55
| IE No support No | Opera ? | Safari ? | WebView Android No support No | Chrome Android
Full support
56
| Edge Mobile ? | Firefox Android Full support 55 | Opera Android ? | Safari iOS ? | Samsung Internet Android Full support 6.0 |
Legend
- Full support
- Full support
- No support
- No support
- Compatibility unknown
- Compatibility unknown
- Experimental. Expect behavior to change in the future.
- Experimental. Expect behavior to change in the future.
- See implementation notes.
- See implementation notes.
- User must explicitly enable this feature.
- User must explicitly enable this feature.
See also
- WebVR API homepage
- MozVr.com — demos, downloads, and other resources from the Mozilla VR team.
Document Tags and Contributors
Tags:
Contributors to this page:
fscholz,
chrisdavidmills
Last updated by:
fscholz,