XRSessionInit - 请求新的 XRSession 时指定必需和 / 或可选功能
XRSessionInit
是 WebXR 设备 API 的字典,表示通过调用 navigator.xr.requestSession()
方法来请求新的 XRSession
时指定必需和 / 或可选功能。
属性
以下参数都是可选的。如果不包含任何内容,则设备将对所有选项使用默认功能配置。
optionalFeatures
可选
一个数组,值标识了 XRSession
可以选择支持的功能。目前,所有功能都使用 XRReferenceSpaceType
枚举中的字符串进行标识,但是将来对 WebXR 标准的更新可能会添加更多功能。
requiredFeatures
可选
返回的 XRSession
必须支持的值数组。这些值当前必须来自枚举类型 XRReferenceSpaceType
。在将来的 WebXR 标准更新中可能会添加更多功能。
默认功能
沉浸式会话
所有沉浸式(immersive-vr
和 immersive-ar
)会话均支持 viewer
和 local
参考空间。
由于需要沉浸式会话来支持 local
参考空间,因此需要打开沉浸式 XRSession
的任何请求才能获得显式或隐式用户同意。
内联会会话
所有 inline
WebXR 会话都支持 viewer
参考空间。
安全要求
每个参考空间或要素类型都有最低的安全要求。按会话类型,这些是:
参考空间类型 | 用户同意要求 | 功能策略要求 |
---|---|---|
bounded-floor |
始终需要 | xr-spatial-tracking |
local |
内联会话始终需要 | xr-spatial-tracking |
local-floor |
始终需要 | xr-spatial-tracking |
unbounded |
始终需要 | xr-spatial-tracking |
viewer |
始终需要 | — |