WebXR Device API
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.
Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.
WebXR ist eine Gruppe von Standards, die zusammen verwendet werden, um das Rendern von 3D-Szenen auf Hardware zu unterstützen, die für die Darstellung virtueller Welten (Virtual Reality, oder VR) ausgelegt ist, oder um grafische Bilder zur realen Welt hinzuzufügen (Augmented Reality, oder AR). Die WebXR Geräte-API implementiert den Kern des WebXR-Feature-Sets, indem sie die Auswahl der Ausgabegeräte verwaltet, die 3D-Szene dem ausgewählten Gerät mit der angemessenen Bildrate darstellt und Bewegungsvektoren verwaltet, die mit Eingabegeräten erstellt werden.
Zu den mit WebXR kompatiblen Geräten gehören vollständig immersive 3D-Headsets mit Bewegungs- und Orientierungserfassung, Brillen, die Grafiken über die durch die Rahmen laufende reale Szene legen, und tragbare Mobiltelefone, die die Realität erweitern, indem sie die Welt mit einer Kamera erfassen und diese Szene mit computergenerierten Bildern ergänzen.
Um diese Aufgaben zu erfüllen, bietet die WebXR Geräte-API die folgenden wesentlichen Funktionen:
- Finden kompatibler VR- oder AR-Ausgabegeräte
- Eine 3D-Szene auf dem Gerät bei einer angemessenen Bildrate rendern
- (Optional) Spiegeln der Ausgabe auf ein 2D-Display
- Erstellen von Vektoren, die die Bewegungen von Eingabesteuerungen darstellen
Auf der grundlegendsten Ebene wird eine Szene in 3D präsentiert, indem die Perspektive berechnet wird, die auf die Szene angewendet werden soll, um sie aus dem Blickwinkel jedes Auges des Benutzers zu rendern, indem die Position jedes Auges berechnet und die Szene von dieser Position aus gerendert wird, indem in die Richtung geschaut wird, in die der Benutzer gerade schaut. Jedes dieser beiden Bilder wird in ein einzelnes Framebuffer gerendert, wobei das Bild für das linke Auge links und das Bild für das rechte Auge in die rechte Hälfte des Puffers gerendert wird. Sobald die Perspektiven beider Augen auf die Szene gerendert wurden, wird das resultierende Framebuffer dem WebXR-Gerät geliefert, um es dem Benutzer durch ihr Headset oder ein anderes geeignetes Anzeigegerät zu präsentieren.
Während die ältere WebVR API ausschließlich für die Unterstützung von Virtual Reality (VR) entwickelt wurde, bietet WebXR Unterstützung sowohl für VR als auch für Augmented Reality (AR) im Web. Die Unterstützung für AR-Funktionalität wird durch das WebXR Augmented Reality-Modul hinzugefügt.
Ein typisches XR-Gerät kann entweder 3 oder 6 Freiheitsgrade haben und kann über einen externen Positionssensor verfügen oder nicht.
Die Ausrüstung kann auch ein Beschleunigungsmesser, ein Barometer oder andere Sensoren umfassen, die verwendet werden, um zu erfassen, wann sich der Benutzer durch den Raum bewegt, seinen Kopf dreht oder ähnliches.
WebXR Referenzdokumente
Initialisierung
navigator.xr
XRSystem
XRPermissionStatus
Permissions-Policy
:xr-spatial-tracking
Sitzung
Frame-Schleife
Räume
Ansichten
Geometrische Primitive
Pose
Eingabe
Ebenen
XRLayer
XRLayerEvent
XRCompositionLayer
XRCubeLayer
XRCylinderLayer
XREquirectLayer
XRProjectionLayer
XRQuadLayer
XRMediaBinding
WebGL-Verbindung
Anker
Tiefenerfassung
Objekterkennungstest
Lichtschätzung
Leitfäden und Tutorials
Die folgenden Leitfäden und Tutorials sind großartige Ressourcen, um zu lernen, wie man WebXR und die zugrunde liegenden 3D- sowie VR/AR-Grafikkonzepte versteht.
Grundlagen und Basics
Erstellen einer Mixed-Reality-Erfahrung
- Starten und Beenden einer WebXR-Sitzung
- Geometrie und Referenzräume in WebXR
- Räumliche Verfolgung in WebXR
- Rendern und der WebXR-Frame-Animations-Callback
- Standpunkte und Betrachter: Simulation von Kameras in WebXR
- Eine Perspektiven-Retrospektive für WebXR-Entwickler
- Beleuchtung einer WebXR-Umgebung
- Verwendung von begrenzten Referenzräumen
Interaktiv gestalten
- Bewegung, Orientierung und Bewegungsbeispiele: Ein WebXR-Beispiel
- Eingaben und Eingabequellen
- Zielen und Objekterkennung
Leistung und Sicherheit
Spezifikationen
Browser-Kompatibilität
BCD tables only load in the browser
Siehe auch
- Grafiken zeichnen
- WebGL API: Beschleunigte 2D- und 3D-Grafiken im Web
- Canvas API: 2D-Zeichnung für das Web
- Canvas-Tutorial