Veraltet: Diese Funktion wird nicht mehr empfohlen. Obwohl einige Browser sie möglicherweise noch unterstützen, könnte sie bereits aus den relevanten Webstandards entfernt worden sein, in Kürze entfernt werden oder nur noch aus Kompatibilitätsgründen bestehen. Vermeiden Sie die Verwendung und aktualisieren Sie vorhandenen Code, falls möglich; siehe die Kompatibilitätstabelle am Ende dieser Seite, um Ihre Entscheidung zu unterstützen. Beachten Sie, dass diese Funktion jederzeit aufhören könnte zu funktionieren.
Nicht standardisiert: Diese Funktion ist nicht standardisiert. Wir raten davon ab, nicht-standardisierte Funktionen auf produktiven Webseiten zu verwenden, da sie nur von bestimmten Browsern unterstützt werden und sich in Zukunft ändern oder entfernt werden können. Unter Umständen kann sie jedoch eine geeignete Option sein, wenn es keine standardisierte Alternative gibt.
Hinweis: Die WebVR API wurde durch die WebXR API ersetzt. Die WebVR wurde nie als Standard ratifiziert, in sehr wenigen Browsern implementiert und standardmäÃig aktiviert und unterstützte nur eine geringe Anzahl von Geräten.
Die WebVR-API bietet Unterstützung für die Darstellung von Virtual-Reality-Geräten â zum Beispiel Head-Mounted Displays wie Oculus Rift oder HTC Vive â in Webanwendungen. Dadurch können Entwickler Positions- und Bewegungsinformationen vom Display in Bewegung innerhalb einer 3D-Szene übersetzen. Dies hat zahlreiche interessante Anwendungen, von virtuellen Produktführungen und interaktiven Schulungs-Apps bis hin zu immersiven Ego-Shootern.
Konzepte und VerwendungAlle an Ihren Computer angeschlossenen VR-Geräte werden von der Methode Navigator.getVRDisplays()
zurückgegeben; jedes wird durch ein VRDisplay
-Objekt repräsentiert.
VRDisplay
ist die zentrale Schnittstelle der WebVR API â über ihre Eigenschaften und Methoden können Sie auf folgende Funktionen zugreifen:
Eine typische (einfache) WebVR-App würde so funktionieren:
Navigator.getVRDisplays()
erhalten Sie eine Referenz zu Ihrem VR-Display.VRDisplay.requestPresent()
beginnen Sie, auf dem VR-Display zu präsentieren.VRDisplay.requestAnimationFrame()
von WebVR wird verwendet, um die Rendering-Schleife der App mit der richtigen Bildwiederholrate für das Display auszuführen.VRDisplay.getFrameData()
), zeichnen die dargestellte Szene zweimal â einmal für die Ansicht in jedem Auge, und dann überreichen Sie die gerenderte Ansicht an das Display, um sie dem Benutzer zu zeigen (VRDisplay.submitFrame()
).Darüber hinaus fügt WebVR 1.1 eine Reihe von Ereignissen am Window
-Objekt hinzu, um es JavaScript zu ermöglichen, auf Statusänderungen des Displays zu reagieren.
Hinweis: Erfahren Sie mehr darüber, wie die API funktioniert, in unseren Artikeln Verwendung der WebVR-API und WebVR-Konzepte.
API-VerfügbarkeitDie WebVR API, die nie als Web-Standard ratifiziert wurde, wurde zugunsten der WebXR API veraltet, die gut auf dem Weg ist, den Standardisierungsprozess abzuschlieÃen. Daher sollten Sie versuchen, bestehenden Code zu aktualisieren, um stattdessen die neuere API zu verwenden. In der Regel sollte der Ãbergang ziemlich schmerzlos sein.
Zudem erfordert WebVR auf einigen Geräten und/oder Browsern, dass die Seite in einem sicheren Kontext über eine HTTPS-Verbindung geladen wird. Wenn die Seite nicht vollständig sicher ist, sind die WebVR-Methoden und -Funktionen nicht verfügbar. Sie können dies leicht testen, indem Sie prüfen, ob die Navigator
-Methode getVRDisplays()
NULL
ist:
if (!navigator.getVRDisplays) {
console.error("WebVR is not available");
} else {
/* Use WebVR */
}
Verwendung von Controllern: Kombination von WebVR mit der Gamepad-API
Viele WebVR-Hardware-Setups verfügen über Controller, die mit dem Headset verwendet werden. Diese können in WebVR-Apps über die Gamepad-API und insbesondere die Gamepad Extensions API verwendet werden, die API-Funktionen zum Zugriff auf Controller-Posen, haptische Aktuatoren und mehr hinzufügt.
Hinweis: Unser Artikel Verwendung von VR-Controllern mit WebVR erklärt die Grundlagen, wie man VR-Controller mit WebVR-Apps verwendet.
WebVR-SchnittstellenVRDisplay
Stellt jedes von dieser API unterstützte VR-Gerät dar. Es enthält generische Informationen wie Geräte-IDs und Beschreibungen sowie Methoden zum Starten der Präsentation einer VR-Szene, zum Abrufen von Augenparametern und Display-Fähigkeiten und anderer wichtiger Funktionen.
VRDisplayCapabilities
Beschreibt die Fähigkeiten eines VRDisplay
â seine Funktionen können verwendet werden, um die Fähigkeiten eines VR-Geräts zu testen, zum Beispiel ob es Positionsinformationen zurückgeben kann.
VRDisplayEvent
Repräsentiert das Ereignisobjekt von WebVR-bezogenen Ereignissen (siehe die unten aufgeführten Fensterereignisse).
VRFrameData
Stellt alle Informationen bereit, die benötigt werden, um einen einzelnen Frame einer VR-Szene zu rendern; erstellt durch VRDisplay.getFrameData()
.
VRPose
Repräsentiert den Positionszustand zu einem gegebenen Zeitstempel (einschlieÃlich Orientierung, Position, Geschwindigkeit und Beschleunigung).
VREyeParameters
Bietet Zugriff auf alle Informationen, die erforderlich sind, um eine Szene für jedes Auge korrekt zu rendern, einschlieÃlich Informationen zur Sichtfeld.
VRFieldOfView
Stellt ein Sichtfeld dar, das durch vier verschiedene Gradwerte beschrieben wird, die die Sicht von einem Mittelpunkt aus beschreiben.
VRLayerInit
Stellt eine Ebene dar, die in einem VRDisplay
präsentiert werden soll.
VRStageParameters
Stellt die Werte dar, die den Bühnenbereich für Geräte beschreiben, die RaummaÃstab-Erfahrungen unterstützen.
Die WebVR-API erweitert die folgenden APIs, indem sie die aufgeführten Funktionen hinzufügt.
GamepadGamepad.displayId
Schreibgeschützt
Gibt die VRDisplay.displayId
des zugehörigen VRDisplay
zurück â das VRDisplay
, das die vom Gamepad gesteuerte Szene anzeigt.
Navigator.activeVRDisplays
Schreibgeschützt
Gibt ein Array zurück, das jedes VRDisplay
-Objekt enthält, das gerade präsentiert (VRDisplay.isPresenting
ist true
).
Navigator.getVRDisplays()
Gibt ein Versprechen zurück, das mit einem Array von VRDisplay
-Objekten aufgelöst wird, die alle verfügbaren VR-Displays repräsentieren, die an den Computer angeschlossen sind.
vrdisplaypresentchange
Wird ausgelöst, wenn sich der Präsentationsstatus eines VR-Displays ändert â das heiÃt, vom Präsentieren zum Nichtpräsentieren oder umgekehrt.
vrdisplayconnect
Wird ausgelöst, wenn ein kompatibles VR-Display mit dem Computer verbunden wurde.
vrdisplaydisconnect
Wird ausgelöst, wenn ein kompatibles VR-Display vom Computer getrennt wurde.
vrdisplayactivate
Wird ausgelöst, wenn ein Display präsentiert werden kann.
vrdisplaydeactivate
Wird ausgelöst, wenn ein Display nicht mehr präsentiert werden kann.
Sie finden eine Reihe von Beispielen an diesen Orten:
Diese API wurde in der alten WebVR API spezifiziert, die durch die WebXR Device API ersetzt wurde. Sie ist nicht mehr auf dem Weg, ein Standard zu werden.
Bis alle Browser die neuen WebXR-APIs implementiert haben, wird empfohlen, sich auf Frameworks wie A-Frame, Babylon.js oder Three.js oder auf ein Polyfill zu verlassen, um WebXR-Anwendungen zu entwickeln, die in allen Browsern funktionieren. Lesen Sie das Leitfaden von Meta zur Portierung von WebVR auf WebXR für weitere Informationen.
Browser-Kompatibilität Siehe auchRetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4