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 | 
始终需要 | — |