-
Notifications
You must be signed in to change notification settings - Fork 50
/
chrome-support.html
134 lines (132 loc) · 5.18 KB
/
chrome-support.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
---
---
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<link rel="stylesheet" href="./main.css">
<link rel="stylesheet" href="./highlight.css">
<title>Chrome Hardware Support - Immersive Web Developer Home</title>
<meta property="og:title" content="Chrome Hardware Support - Immersive Web Developer Home">
<meta name="twitter:card" content="summary">
<meta name="twitter:site" content="@ImmersiveWebW3C">
<meta name="twitter:creator" content="@ImmersiveWebW3C">
<meta property="og:url" content="https://immersiveweb.dev/">
<meta name="description" content="Get started building XR applications through the Web with the WebXR Device API, demos, docs, samples and more.">
<meta property="og:description" content="Get started building XR applications through the Web with the WebXR Device API, demos, docs, samples and more.">
<meta property="og:image" content="https://immersiveweb.dev/images/webxrlogo.png">
</head>
<body>
<main>
<img src="./webxr-logo.svg" alt="The WebXR Device API" />
<h1>Chrome Hardware Support</h1>
<article style="grid-column: 1/-1;">
<p>Chrome supports WebXR on a variety of platforms and hardware. This page details the supported devices and required configuration (if any) to use them.</p>
</article>
<h2>
Chrome Compatibility Table
</h2>
<div class="compat-table">
<table>
<thead>
<tr>
<td>Device</td>
<td>OS</td>
<td>Runtime</td>
<td>Supported Session Modes</td>
<td>WebXR Support</td>
</tr>
</thead>
<tbody>
<tr>
<td>
Oculus,<br/>
SteamVR,<br/>
Windows Mixed Reality,<br/>
OpenXR compatible HMDs
</td>
<td>Windows</td>
<td>OpenXR</td>
<td>immersive-vr</td>
<td><a href="#getting-openxr">Enabled in Chrome 81+</a></td>
</tr>
<tr>
<td>
Cardboard<br/>
Daydream View<br/>
Lenovo Mirage Solo
</td>
<td>Android</td>
<td>Google VR</td>
<td>immersive-vr</td>
<td>Enabled in Chrome 79+</td>
</tr>
<tr>
<td>
<a href="https://developers.google.com/ar/discover/supported-devices">ARCore-compabile mobile devices</a>
</td>
<td>Android</td>
<td>ARCore</td>
<td>immersive-ar</td>
<td>Enabled in Chrome 81+</td>
</tr>
</tbody>
</table>
</div>
<h2 id='getting-openxr'>
Getting a compatible OpenXR runtime
</h2>
<p style="grid-column: 1/-1;">
Chrome uses <a href="https://www.khronos.org/openxr">OpenXR</a> to interface with VR headsets on Windows.
In order to work with Chrome the device's OpenXR runtime must support the <a href="https://www.khronos.org/registry/OpenXR/specs/1.0/html/xrspec.html#XR_EXT_win32_appcontainer_compatible">XR_EXT_win32_appcontainer_compatible</a> extension,
which ensures that the runtime can work securely with Chrome's sandboxing.
<br/><br/>
See below to learn more about enabling OpenXR support for several popular devices.
</p>
<p style="grid-column: 1/-1;">
<b>Windows Mixed Reality</b>
<br/><br/>
A compatible OpenXR runtime for Windows Mixed Reality ships with the
<a href="https://docs.microsoft.com/en-us/windows/mixed-reality/openxr-getting-started">Windows 10 May 2019 Update (1903)</a> or later.
</p>
<p style="grid-column: 1/-1;">
<b>SteamVR (HTC Vive, Valve Index, etc)</b>
<br/><br/>
A compatible OpenXR runtime for SteamVR ships with <a href="https://store.steampowered.com/news/app/250820/view/3044967019267211914">SteamVR 1.16.8</a> or later.
</p>
<p style="grid-column: 1/-1;">
<b>Oculus (Rift/Rift S/Quest via Oculus Link)</b>
<br/><br/>
A compatible OpenXR runtime for Oculus ships with <a href="https://developer.oculus.com/blog/openxr-for-oculus/">v19</a> or later.
</p>
<p style="grid-column: 1/-1;">
<b>Unsandboxed OpenXR</b>
<br/><br/>
To test Chrome with OpenXR runtimes that do not implement the <i>XR_EXT_win32_appcontainer_compatible</i> extension, WebXR sandboxing must be disabled.<br/><br/>
<b>It is not recommended that you use Chrome with the following flags for daily browsing, as it disables certain security measures around Chrome interaction with VR hardware!</b><br/><br/>
To disable Chrome's WebXR sandboxing, use the following command line option:
<pre>--disable-features=XRSandbox</pre>
</p>
<footer>
<p>CC0 Licensed, feel free to remix, Maintained by the <a href ="https://w3.org/immersive-web">W3C Immersive Web Working and Community Groups</a>
</p>
<p>
Request changes by <a href="https://github.com/adarosecannon/immersiveweb">making a pull request on github.</a>
</p>
</footer>
</main>
<script>
Array.from(document.querySelectorAll('main > h1,main > h2, main > h3')).forEach(el => {
const id = el.id || el.textContent.replace(/[^a-z0-9]/gi,'').toLocaleLowerCase();
el.setAttribute('id', id);
const linkEl = document.createElement('A');
linkEl.className = 'targetlink';
linkEl.setAttribute('href', '#' + id);
linkEl.innerHTML = '🔗︎';
el.insertAdjacentElement('afterbegin', linkEl);
});
</script>
</body>
</html>