XRSession: requestLightProbe() method
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Experimental:This is anexperimental technology
Check theBrowser compatibility table carefully before using this in production.
Secure context: This feature is available only insecure contexts (HTTPS), in some or allsupporting browsers.
TherequestLightProbe() method of theXRSession interface returns aPromise that resolves with anXRLightProbe object that estimates lighting information at a given point in the user's environment.
In this article
Syntax
requestLightProbe()requestLightProbe(options)Parameters
optionsOptionalAn object containing configuration options, specifically:
reflectionFormatThe internal reflection format indicating how the texture data is represented, either
srgba8(default value) orrgba16f. See alsoXRSession.preferredReflectionFormat.
Return value
APromise that resolves with anXRLightProbe object.
Exceptions
Rather than throwing true exceptions,requestLightProbe() rejects thereturned promise with aDOMException, specifically, one of the following:
NotSupportedErrorDOMExceptionThrown if
lighting-estimationis not an enabled feature inXRSystem.requestSession()or if thereflectionFormatis notsrgb8or thepreferredReflectionFormat.InvalidStateErrorDOMExceptionThrown if the session has already ended.
Examples
>Requesting a light probe with the system's preferred format
The default format issrgb8, however, some rendering engines may use other (high dynamic range) formats. You can request the light probe withXRSession.preferredReflectionFormat which reports the preferred internal format.
const lightProbe = await xrSession.requestLightProbe({ reflectionFormat: xrSession.preferredReflectionFormat,});Specifications
| Specification |
|---|
| WebXR Lighting Estimation API Level 1> # dom-xrsession-requestlightprobe> |