这是
实验性技术
检查
浏览器兼容性表格
要小心谨慎在生产中使用这之前。
VRLayerInit
interface (dictionary) of the
WebVR API
represents a content layer (an
HTMLCanvasElement
or
OffscreenCanvas
) that you want to present in a VR display.
You can retrieve
VRLayerInit
objects using
VRDisplay.getLayers()
, and present them using the
VRDisplay.requestPresent()
方法。
VRLayerInit.leftBounds
VRDisplay
.
VRLayerInit.rightBounds
VRDisplay
.
VRLayerInit.source
VRDisplay
当
VRDisplay.submitFrame()
被调用。
// 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
}
注意
:
canvasReference
refers to the
<canvas>
element itself, not the WebGL context associated with the canvas. The other two members are arrays
| 规范 | 状态 | 注释 |
|---|---|---|
|
WebVR 1.1
The definition of 'VRLayerInit' in that specification. |
草案 | 初始定义 |
| 桌面 | 移动 | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
VRLayerInit
弃用
|
Chrome No | Edge ≤18 — 79 |
Firefox
55
|
IE No | Opera ? | Safari No | WebView Android No |
Chrome Android
56 — 80
Disabled
|
Firefox Android 55 | Opera Android ? | Safari iOS ? |
Samsung Internet Android
6.0
|
leftBounds
弃用
|
Chrome No | Edge ≤18 — 79 |
Firefox
55
|
IE No | Opera ? | Safari No | WebView Android No |
Chrome Android
56 — 80
Disabled
|
Firefox Android 55 | Opera Android ? | Safari iOS ? |
Samsung Internet Android
6.0
|
rightBounds
弃用
|
Chrome No | Edge ≤18 — 79 |
Firefox
55
|
IE No | Opera ? | Safari No | WebView Android No |
Chrome Android
56 — 80
Disabled
|
Firefox Android 55 | Opera Android ? | Safari iOS ? |
Samsung Internet Android
6.0
|
source
弃用
|
Chrome No | Edge ≤18 — 79 |
Firefox
55
|
IE No | Opera ? | Safari No | WebView Android No |
Chrome Android
56 — 80
Disabled
|
Firefox Android 55 | Opera Android ? | Safari iOS ? |
Samsung Internet Android
6.0
|
完整支持
不支持
兼容性未知
实验。期望将来行为有所改变。
弃用。不要用于新网站。
见实现注意事项。
用户必须明确启用此特征。