XRWebGLBinding: getReflectionCubeMap() Methode
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.
Die getReflectionCubeMap() Methode der XRWebGLBinding Schnittstelle gibt ein WebGLTexture Objekt zurück, das eine Reflection-Cube-Map-Textur enthält.
Das Texturformat wird durch das reflectionFormat der Session spezifiziert. Weitere Details finden Sie im options Parameter von XRSession.requestLightProbe() und XRSession.preferredReflectionFormat. Standardmäßig wird das srgba8-Format verwendet. Bei Verwendung des rgba16f Formats müssen Sie sich in einem WebGL 2.0 Kontext befinden oder die OES_texture_half_float Erweiterung innerhalb von WebGL 1.0 Kontexten aktivieren.
Syntax
getReflectionCubeMap(lightProbe)
Parameter
lightProbe-
Ein
XRLightProbeObjekt, das durch den Aufruf vonXRSession.requestLightProbe()zurückgegeben wird.
Rückgabewert
Ein WebGLTexture Objekt.
Beispiele
Sie rufen getReflectionCubeMap() typischerweise immer dann auf, wenn das reflectionchange Ereignis bei einer Lichtsonde ausgelöst wird, um eine aktualisierte Cube-Map abzurufen. Dies ist weniger aufwendig, als Beleuchtungsinformationen bei jedem XRFrame abzurufen.
Wenn das rgba16f Format verwendet wird, aktivieren Sie die OES_texture_half_float Erweiterung innerhalb von WebGL 1.0 Kontexten.
const glBinding = new XRWebGLBinding(xrSession, gl);
gl.getExtension("OES_texture_half_float"); // if rgba16f is the preferredReflectionFormat
xrSession.requestLightProbe().then((lightProbe) => {
lightProbe.addEventListener("reflectionchange", () => {
glBinding.getReflectionCubeMap(lightProbe);
});
});
Spezifikationen
| Specification |
|---|
| WebXR Lighting Estimation API Level 1> # dom-xrwebglbinding-getreflectioncubemap> |
Browser-Kompatibilität
Loading…