VRDisplay
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 und befindet sich nicht auf dem Weg zur Standardisierung. Verwenden Sie sie nicht auf Produktionsseiten, die dem Web ausgesetzt sind: Sie funktioniert nicht für alle Benutzer. Es kann auch große Inkompatibilitäten zwischen Implementierungen geben, und das Verhalten kann sich in Zukunft ändern.
Das VRDisplay
Interface der WebVR API repräsentiert jedes VR-Gerät, das von dieser API unterstützt wird. Es umfasst generische Informationen wie Geräte-IDs und Beschreibungen sowie Methoden zum Starten der Darstellung einer VR-Szene, zum Abrufen von Augenparametern und Anzeigeeigenschaften und anderer wichtiger Funktionen.
Hinweis: Dieses Interface war Teil der alten WebVR API. Es wurde durch die WebXR Device API ersetzt.
Ein Array aller angeschlossenen VR-Geräte kann durch Aufrufen der Methode Navigator.getVRDisplays()
zurückgegeben werden.
Instanz-Eigenschaften
VRDisplay.capabilities
Schreibgeschützt Veraltet Nicht standardisiert-
Gibt ein
VRDisplayCapabilities
Objekt zurück, das die verschiedenen Fähigkeiten desVRDisplay
anzeigt. VRDisplay.depthFar
Veraltet Nicht standardisiert-
Ermittelt und setzt die z-Tiefe, die die Fernebene des Blickfelds definiert, d.h. die am weitesten sichtbare Grenze der Szene.
VRDisplay.depthNear
Veraltet Nicht standardisiert-
Ermittelt und setzt die z-Tiefe, die die Nahebenene des Blickfelds definiert, d.h. die nächstgelegene sichtbare Grenze der Szene.
VRDisplay.displayId
Schreibgeschützt Veraltet Nicht standardisiert-
Gibt eine Kennung für dieses spezielle VRDisplay zurück, die auch als Assoziationspunkt in der Gamepad API verwendet wird (siehe
Gamepad.displayId
). VRDisplay.displayName
Schreibgeschützt Veraltet Nicht standardisiert-
Gibt einen lesbaren Namen zurück, um das
VRDisplay
zu identifizieren. VRDisplay.isConnected
Schreibgeschützt Veraltet Nicht standardisiert-
Gibt einen booleschen Wert zurück, der angibt, ob das
VRDisplay
mit dem Computer verbunden ist. VRDisplay.isPresenting
Schreibgeschützt Veraltet Nicht standardisiert-
Gibt einen booleschen Wert zurück, der angibt, ob das
VRDisplay
derzeit Inhalte präsentiert. VRDisplay.stageParameters
Schreibgeschützt Veraltet Nicht standardisiert-
Gibt ein
VRStageParameters
Objekt zurück, das Raummaßstab-Parameter enthält, wenn dasVRDisplay
in der Lage ist, Erfahrungen im Raummaßstab zu unterstützen.
Instanz-Methoden
VRDisplay.getEyeParameters()
Veraltet Nicht standardisiert-
Gibt das
VREyeParameters
Objekt zurück, das die Augenparameter für das angegebene Auge enthält. VRDisplay.getFrameData()
Veraltet Nicht standardisiert-
Akzeptiert ein
VRFrameData
Objekt und füllt es mit den Informationen, die zum Rendern des aktuellen Frames erforderlich sind. VRDisplay.getImmediatePose()
Veraltet Nicht standardisiert-
Gibt ein
VRPose
Objekt zurück, das die aktuelle Pose desVRDisplay
definiert, ohne Vorhersage angewendet. Dies wird nicht mehr benötigt und wurde aus der Spezifikation entfernt. VRDisplay.getLayers()
Veraltet Nicht standardisiert-
Gibt die Schichten zurück, die derzeit vom
VRDisplay
dargestellt werden. VRDisplay.getPose()
Veraltet Nicht standardisiert-
Gibt ein
VRPose
Objekt zurück, das die vorhergesagte zukünftige Pose desVRDisplay
definiert, wie sie sein wird, wenn der aktuelle Frame tatsächlich präsentiert wird. Diese Methode ist veraltet — stattdessen sollten SieVRDisplay.getFrameData()
verwenden, das ebenfalls einVRPose
Objekt bereitstellt. VRDisplay.resetPose()
Veraltet Nicht standardisiert-
Setzt die Pose für dieses
VRDisplay
zurück und behandelt dessen aktuelleVRPose.position
undVRPose.orientation
als "Ursprung/Null"-Werte. VRDisplay.cancelAnimationFrame()
Veraltet Nicht standardisiert-
Eine spezielle Implementierung von
Window.cancelAnimationFrame
, die es erlaubt, Rückrufe, die mitVRDisplay.requestAnimationFrame()
registriert wurden, abzumelden. VRDisplay.requestAnimationFrame()
Veraltet Nicht standardisiert-
Eine spezielle Implementierung von
Window.requestAnimationFrame
, die eine Rückruffunktion enthält, die jedes Mal aufgerufen wird, wenn ein neuer Frame derVRDisplay
Präsentation gerendert wird. VRDisplay.requestPresent()
Veraltet Nicht standardisiert-
Startet die Präsentation einer Szene mit dem
VRDisplay
. VRDisplay.exitPresent()
Veraltet Nicht standardisiert-
Beendet die Präsentation einer Szene mit dem
VRDisplay
. VRDisplay.submitFrame()
Veraltet Nicht standardisiert-
Erfasst den aktuellen Zustand des
VRLayerInit
, der derzeit präsentiert wird, und zeigt ihn auf demVRDisplay
an.
Beispiele
if (navigator.getVRDisplays) {
console.log("WebVR 1.1 supported");
// Then get the displays attached to the computer
navigator.getVRDisplays().then((displays) => {
// If a display is available, use it to present the scene
if (displays.length > 0) {
vrDisplay = displays[0];
// Now we have our VRDisplay object and can do what we want with it
}
});
}
Hinweis: Sie können diesen kompletten Code im raw-webgl-example sehen.
Spezifikationen
Dieses Interface war Teil der alten WebVR API, die durch die WebXR Device API ersetzt wurde. Es ist nicht mehr auf dem Weg dazu, 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 ein Polyfill zu verlassen, um WebXR-Anwendungen zu entwickeln, die auf allen Browsern funktionieren. Lesen Sie Metas Anleitung zum Portieren von WebVR zu WebXR für weitere Informationen.