XRFrame: getLightEstimate() method
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.
The getLightEstimate()
method of the XRFrame
interface returns an XRLightEstimate
object containing estimated lighting values for a given XRLightProbe
.
Syntax
getLightEstimate(lightProbe)
Parameters
lightProbe
-
An
XRLightProbe
object containing the current lighting state for the frame.
Return value
An XRLightEstimate
object or null
if the device cannot estimate lighting for this frame.
Examples
Getting light estimates for each frame
Given a session's XRLightProbe
, the getLightEstimate()
method gets an XRLightEstimate
object containing the lighting values for each frame.
const lightProbe = await xrSession.requestLightProbe();
// frame loop
function onXRFrame(time, xrFrame) {
let lightEstimate = xrFrame.getLightEstimate(lightProbe);
// Use light estimate data to light the scene
// Available properties
lightEstimate.sphericalHarmonicsCoefficients;
lightEstimate.primaryLightDirection;
lightEstimate.primaryLightIntensity;
}
Specifications
Specification |
---|
WebXR Lighting Estimation API Level 1 # dom-xrframe-getlightestimate |
Browser compatibility
BCD tables only load in the browser