HMDVRDevice: setFieldOfView()-Methode
Deprecated
Avoid using this feature in new projects. This feature may be a candidate for removal from web standards or browsers.>
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.
Die setFieldOfView()-Methode des HMDVRDevice-Interfaces kann verwendet werden, um das Sichtfeld für ein Auge oder beide Augen gleichzeitig einzustellen.
Syntax
setFieldOfView(leftFOV, rightFOV, zNear, zFar)
Parameter
leftFOVOptional-
Ein
VRFieldOfView-Objekt, das das neue Sichtfeld für das linke Auge definiert. Wenn nicht angegeben, ändert sich das Sichtfeld des linken Auges nicht. rightFOVOptional-
Ein
VRFieldOfView-Objekt, das das neue Sichtfeld für das rechte Auge definiert. Wenn nicht angegeben, ändert sich das Sichtfeld des rechten Auges nicht. zNearOptional-
Die Entfernung vom nächsten Punkt der Ansicht zu den Augen. Der nächste Punkt, der gesehen werden kann und der noch im Sichtfeld ist. Wenn nicht angegeben, wird der Standardwert verwendet —
0.01. zFarOptional-
Die Entfernung vom weitesten Punkt der Ansicht zu den Augen. Der entfernteste Punkt, der noch im Sichtfeld ist. Wenn nicht angegeben, wird der Standardwert verwendet —
10000.0.
Rückgabewert
Keiner (undefined).
Beispiele
Das folgende einfache Beispiel zeigt eine Funktion, die verwendet werden kann, um ein benutzerdefiniertes Sichtfeld mit vier angegebenen Gradwerten für oben, rechts, unten und links einzustellen. Der VRFieldOfView()-Konstruktor wird verwendet, um ein VRFieldOfView-Objekt aus den bereitgestellten Werten zu erstellen, das dann in die setFieldOfView()-Methode eingespeist wird (die Standardwerte für zNear und zFar werden in diesem Fall immer verwendet).
function setCustomFOV(up, right, down, left) {
const testFOV = new VRFieldOfView(up, right, down, left);
gHMD.setFieldOfView(testFOV, testFOV, 0.01, 10000.0);
const lEye = gHMD.getEyeParameters("left");
const rEye = gHMD.getEyeParameters("right");
console.log(lEye.currentFieldOfView);
console.log(rEye.currentFieldOfView);
}
Hinweis:
Beim Testen kann das Einstellen eines merkwürdigen/kleinen Sichtfelds wirklich Ihre Sicht durcheinander bringen. Es ist eine gute Idee, das aktuelle Sichtfeld zuerst abzurufen (durch Verwendung von VREyeParameters.fieldOfView), bevor Sie drastische Änderungen vornehmen, damit Sie es bei Bedarf zurücksetzen können.