XRSession: visibilityState 屬性
XRSession 介面的 **visibilityState** 屬性是隻讀的,它是一個字串,表示 WebXR 內容當前是否對使用者可見,如果可見,是否是主要焦點。
每次可見狀態發生變化時,都會在 XRSession 物件上觸發一個 visibilitychange 事件。
值
一個字串,指示 XR 內容是否對使用者可見,如果可見,是否是當前的主要焦點。
visibilityState 的可能值為:
-
由
XRSession生成的虛擬場景當前對使用者不可見,因此直到visibilityState更改之前,其requestAnimationFrame()回撥函式不會被執行。該會話的輸入控制器不會被處理。 visible-
由
XRSession渲染的虛擬場景當前對使用者可見,並且是使用者注意力的主要焦點。為此,該會話的requestAnimationFrame()回撥函式將以 XR 裝置的本機重新整理率進行處理,輸入控制器也將正常處理。 visible-blurred-
儘管由
XRSession渲染的虛擬場景當前可能對使用者可見,但它並不是使用者當前的主要焦點;會話也可能根本不可見。為了最佳化資源利用,使用者代理可能會以節流速率處理該會話的requestAnimationFrame()回撥函式。該會話的輸入控制器不會被處理。
用法說明
需要注意的是,由於沉浸式 WebXR 會話可能使用與執行它的 HTML 文件不同的顯示器(例如,在頭顯上顯示時),因此會話的 visibilityState 的值不一定與其所屬的document 的 visibilityState 相同。例如,如果檢視者正在使用連線到計算機的頭顯,並且沉浸式場景被配置 UI 遮擋,使用者可以從頭顯後面窺視,仍然可以在他們計算機的顯示器上看到文件本身。
規範
| 規範 |
|---|
| WebXR Device API # dom-xrsession-visibilitystate |
瀏覽器相容性
載入中…