VRFieldOfView
已棄用:此特性不再推薦。雖然某些瀏覽器可能仍然支援它,但它可能已經從相關的網路標準中刪除,可能正在刪除過程中,或者可能僅為相容性目的而保留。請避免使用它,如果可能,請更新現有程式碼;請參閱本頁底部的相容性表格以指導您的決策。請注意,此特性可能隨時停止工作。
非標準:此特性未標準化。我們不建議在生產環境中使用非標準特性,因為它們瀏覽器支援有限,並且可能會更改或被移除。但是,在沒有標準選項的特定情況下,它們可以是合適的替代方案。
WebVR API 的 VRFieldOfView 介面代表一個視場,該視場由 4 個不同的角度值定義,描述了從一箇中心點看到的檢視。
注意: 此介面是舊版 WebVR API 的一部分。它已被 WebXR Device API 取代。
例項屬性
VRFieldOfView.upDegrees已棄用 只讀 非標準-
視場向上延伸的角度。
VRFieldOfView.rightDegrees已棄用 只讀 非標準-
視場向右延伸的角度。
VRFieldOfView.downDegrees已棄用 只讀 非標準-
視場向下延伸的角度。
VRFieldOfView.leftDegrees已棄用 只讀 非標準-
視場向左延伸的角度。
示例
js
const info = document.querySelector("p");
const list = document.querySelector("ul");
let vrDisplay;
if (navigator.getVRDisplays) {
reportFieldOfView();
} else {
info.textContent = "WebVR API not supported by this browser.";
}
function reportFieldOfView() {
navigator.getVRDisplays().then((displays) => {
vrDisplay = displays[0];
const lEye = vrDisplay.getEyeParameters("left");
const rEye = vrDisplay.getEyeParameters("right");
// lEye and rEye are VREyeParameters objects
const lFOV = lEye.fieldOfView;
const rFOV = rEye.fieldOfView;
// lFOV and rFOV are VRFieldOfView objects
const listitem1 = document.createElement("li");
const listitem2 = document.createElement("li");
listitem1.innerText = `
Offset: ${lEye.offset}
Render width: ${lEye.renderWidth}
Render height: ${lEye.renderHeight}
Up degrees: ${lFOV.upDegrees}
Right degrees: ${lFOV.rightDegrees}
Down degrees: ${lFOV.downDegrees}
Left degrees: ${lFOV.leftDegrees}`;
listitem1.insertBefore(
document.createElement("strong"),
listitem1.firstChild,
).textContent = "Left eye parameters";
listitem2.innerText = `
Offset: ${rEye.offset}
Render width: ${rEye.renderWidth}
Render height: ${rEye.renderHeight}
Up degrees: ${rFOV.upDegrees}
Right degrees: ${rFOV.rightDegrees}
Down degrees: ${rFOV.downDegrees}
Left degrees: ${rFOV.leftDegrees}`;
listitem2.insertBefore(
document.createElement("strong"),
listitem2.firstChild,
).textContent = "Right eye parameters";
list.appendChild(listitem1);
list.appendChild(listitem2);
});
}
規範
此介面是舊的 WebVR API 的一部分,該 API 已被 WebXR Device API 取代。它已不再是標準的制定方向。
在所有瀏覽器都實現新的 WebXR API 之前,建議依靠 A-Frame、Babylon.js 或 Three.js 等框架,或 polyfill 來開發可在所有瀏覽器上執行的 WebXR 應用程式。有關更多資訊,請閱讀 Meta 的從 WebVR 移植到 WebXR 指南。
瀏覽器相容性
載入中…