VRDisplay
Deprecated
Avoid using this feature in new projects. Development of the WebVR API halted in favor of WebXR. This feature may be a candidate for removal from web standards or browsers.>
Consider using the following features instead: WebXR.>
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.
Das VRDisplay Interface der WebVR API repräsentiert jedes VR-Gerät, das von dieser API unterstützt wird. Es enthält allgemeine Informationen wie Geräte-IDs und Beschreibungen sowie Methoden zum Starten der Präsentation einer VR-Szene, Abrufen von Augenparametern und Anzeigeeigenschaften und anderen wichtigen Funktionen.
Hinweis: Dieses Interface war Teil der alten WebVR API. Es wurde durch die WebXR Device API abgelöst.
Ein Array aller angeschlossenen VR-Geräte kann durch Aufruf der Methode Navigator.getVRDisplays() zurückgegeben werden.
Instanz-Eigenschaften
VRDisplay.capabilitiesSchreibgeschützt-
Gibt ein
VRDisplayCapabilities-Objekt zurück, das die verschiedenen Fähigkeiten desVRDisplayanzeigt. VRDisplay.depthFar-
Ruft die z-Tiefe ab und legt diese fest, die die Fernebene des Frustums des Augenblicks definiert, d.h. die am weitesten sichtbare Grenze der Szene.
VRDisplay.depthNear-
Ruft die z-Tiefe ab und legt diese fest, die die Nahebene des Frustums des Augenblicks definiert, d.h. die am nächsten sichtbare Grenze der Szene.
VRDisplay.displayIdSchreibgeschützt-
Gibt einen Bezeichner für dieses spezielle
VRDisplayzurück, der auch als Verknüpfungspunkt in der Gamepad API verwendet wird (sieheGamepad.displayId). VRDisplay.displayNameSchreibgeschützt-
Gibt einen menschenlesbaren Namen zurück, um das
VRDisplayzu identifizieren. VRDisplay.isConnectedSchreibgeschützt-
Gibt einen booleschen Wert zurück, der anzeigt, ob das
VRDisplaymit dem Computer verbunden ist. VRDisplay.isPresentingSchreibgeschützt-
Gibt einen booleschen Wert zurück, der anzeigt, ob das
VRDisplayderzeit Inhalte präsentiert. VRDisplay.stageParametersSchreibgeschützt-
Gibt ein
VRStageParameters-Objekt zurück, das Raummaßstab-Parameter enthält, wenn dasVRDisplayin der Lage ist, Erlebnisse im Raummaßstab zu unterstützen.
Instanz-Methoden
VRDisplay.getEyeParameters()-
Gibt das
VREyeParameters-Objekt zurück, das die Augenparameter für das angegebene Auge enthält. VRDisplay.getFrameData()-
Akzeptiert ein
VRFrameData-Objekt und füllt es mit den Informationen, die erforderlich sind, um das aktuelle Bild darzustellen. VRDisplay.getImmediatePose()-
Gibt ein
VRPose-Objekt zurück, das die aktuelle Pose desVRDisplaydefiniert, ohne Vorhersage angewendet. Dies ist nicht mehr notwendig und wurde aus der Spezifikation entfernt. VRDisplay.getLayers()-
Gibt die aktuell vom
VRDisplaypräsentierten Ebenen zurück. VRDisplay.getPose()-
Gibt ein
VRPose-Objekt zurück, das die zukünftige vorhergesagte Pose desVRDisplaydefiniert, wie sie sein wird, wenn das aktuelle Bild tatsächlich präsentiert wird. Diese Methode ist veraltet — stattdessen sollten SieVRDisplay.getFrameData()verwenden, das ebenfalls einVRPose-Objekt bereitstellt. VRDisplay.resetPose()-
Setzt die Pose für dieses
VRDisplayzurück und behandelt dessen aktuelleVRPose.positionundVRPose.orientationals "Ursprungs-/Nullwerte". VRDisplay.cancelAnimationFrame()-
Eine spezielle Implementierung von
Window.cancelAnimationFrame, die es ermöglicht, Rückrufe, die mitVRDisplay.requestAnimationFrame()registriert wurden, abzumelden. VRDisplay.requestAnimationFrame()-
Eine spezielle Implementierung von
Window.requestAnimationFrame, die eine Rückruffunktion enthält, die jedes Mal aufgerufen wird, wenn ein neues Bild derVRDisplay-Präsentation gerendert wird. VRDisplay.requestPresent()-
Beginnt mit der Präsentation einer Szene durch das
VRDisplay. VRDisplay.exitPresent()-
Beendet die Präsentation einer Szene durch das
VRDisplay. VRDisplay.submitFrame()-
Erfasst den aktuellen Zustand des derzeit präsentierten
VRLayerInitund zeigt ihn auf demVRDisplayan.
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 vollständigen Code im raw-webgl-example einsehen.
Spezifikationen
Dieses Interface war Teil der alten WebVR API, die durch die WebXR Device API abgelöst wurde. Es ist nicht mehr auf dem Weg, ein Standard zu werden.
Bis alle Browser die neuen WebXR APIs implementiert haben, wird empfohlen, auf Frameworks wie A-Frame, Babylon.js oder Three.js oder ein Polyfill zu setzen, um WebXR-Anwendungen zu entwickeln, die in allen Browsern funktionieren. Lesen Sie den Leitfaden "Meta's Porting from WebVR to WebXR" für weitere Informationen.