XRLightEstimate: sphericalHarmonicsCoefficients 属性

可用性有限

此特性不是基线特性,因为它在一些最广泛使用的浏览器中不起作用。

实验性: 这是一项实验性技术
在生产中使用此技术之前,请仔细检查浏览器兼容性表格

安全上下文: 此功能仅在安全上下文(HTTPS)中可用,且支持此功能的浏览器数量有限。

XRLightEstimate 接口的只读 sphericalHarmonicsCoefficients 属性返回一个 Float32Array,其中包含 9 个球面谐波系数。

球面谐波照明是一种使用球面函数而不是标准照明方程的技术。有关更多信息,请参阅 Wikipedia

一个包含 9 个球面谐波系数的 Float32Array。该数组总共有 27 个元素,每 3 个元素定义一个系数的红色、绿色和蓝色分量。

前 3 个元素必须是有效的照明估计分量;其余元素可能由于隐私设置或设备提供更多数据的限制而为 0。

示例

XRFrame 循环中,您可以使用 sphericalHarmonicsCoefficients 属性来照亮场景。

js
const lightProbe = await xrSession.requestLightProbe();

// frame loop
function onXRFrame(time, xrFrame) {
  let lightEstimate = xrFrame.getLightEstimate(lightProbe);

  // Render lights using lightEstimate.sphericalHarmonicsCoefficients
}

规范

规范
WebXR 光照估算 API Level 1
# dom-xrlightestimate-sphericalharmonicscoefficients

浏览器兼容性

另见