XRSession:environmentBlendMode 屬性

可用性有限

此特性不是基線特性,因為它在一些最廣泛使用的瀏覽器中不起作用。

實驗性: 這是一項實驗性技術
在生產中使用此技術之前,請仔細檢查瀏覽器相容性表格

安全上下文: 此功能僅在安全上下文(HTTPS)中可用,且支援此功能的瀏覽器數量有限。

XRSession 介面的只讀 environmentBlendMode 屬性用於標識計算機生成的影像疊加在現實世界上的程度。

這用於區分全沉浸式 VR 會話和 AR 會話,後者在現實世界的透檢視像上渲染,可能部分透明。

一個字串,用於定義虛擬渲染內容如何疊加在現實世界影像之上。

可能的值是

opaque

渲染的影像繪製時不允許任何透檢視像。這主要用於全沉浸式 VR 頭顯,它們完全遮擋了周圍環境,使用者根本看不到任何現實世界。XRSessionrenderState 屬性的 baseLayer 欄位中指定的 alpha 值將被忽略,因為渲染影像的 alpha 值都被視為 1.0(完全不透明)。

additive

主要由鏡片透明的 AR 裝置使用,這些裝置允許現實世界直接穿過使用者的眼睛。additive 混合模式設計用於裝置無法控制背景及其亮度的場景,因為背景不會被數字控制。裝置所能做的就是為影像新增更多光線;它無法使事物變暗。因此,黑色被渲染為完全透明,無法使畫素完全不透明。與 opaque 設定一樣,指定的 alpha 值將被忽略,並被視為 1.0。

alpha-blend

由使用攝像頭捕捉現實世界並在螢幕上數字顯示以供使用者檢視的內容的頭顯或護目鏡使用,這提供了一種使用 VR 裝置建立 AR 演示的方法。Alpha 混合也可由提供 AR 模式的非可穿戴裝置使用,例如使用攝像頭捕捉現實世界以用於 AR 應用的手機或平板電腦。由於現實世界以數字方式呈現,每個畫素的亮度都可以被控制,無論是現實本身還是渲染的 XR 影像,使用者的環境都可以與虛擬環境混合,每個畫素的顏色和亮度都可以精確控制。在此模式下,XRSessionrenderState.baseLayer 屬性在合成過程中提供了人工層的相對權重。alpha 值為 1.0 的畫素被渲染為完全不透明,完全遮擋現實世界,而 alpha 值為 0.0 的畫素則完全透明,允許周圍環境穿過。

規範

規範
WebXR 增強現實模組 - Level 1
# dom-xrsession-environmentblendmode

瀏覽器相容性