XRRenderState: baseLayer-Eigenschaft

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.

Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.

Die schreibgeschützte baseLayer-Eigenschaft der XRRenderState-Schnittstelle gibt die XRWebGLLayer-Instanz zurück, die die Quelle für Bitmap-Bilder ist und eine Beschreibung liefert, wie das Bild auf dem Gerät gerendert werden soll.

Diese Eigenschaft ist schreibgeschützt; Sie können ihren Wert jedoch indirekt mithilfe von XRSession.updateRenderState ändern.

Wert

Ein XRWebGLLayer-Objekt, das als Quelle für die Inhalte der Welt beim Rendern jedes Bildes der Szene verwendet wird.

Sehen Sie sich die untenstehenden Beispiele an, um zu sehen, wie Sie updateRenderState() verwenden, um die aktuelle XRWebGLLayer festzulegen, die zum Rendern der Szene verwendet wird.

Beispiele

Sie können die XRWebGLLayer, die zum Rendern verwendet wird, durch Aufruf von updateRenderState() festlegen, wie folgt:

js
let canvas = document.querySelector("canvas");
gl = canvas.getContext("webgl", { xrCompatible: true });
setNewWebGLLayer();

function setNewWebGLLayer(gl) {
  if (!gl) {
    /* WebGL not available */
    return;
  }

  xrSession.updateRenderState({
    baseLayer: new XRWebGLLayer(xrSession, gl),
  });
}

Hier ist die Leinwand, die in der ersten Zeile erhalten wird, die Leinwand, in die WebGL zeichnen wird. Dieser Kontext wird in XRWebGLLayer() übergeben, um eine XRWebGLLayer zu erstellen, die die Inhalte des WebGL-Kontextes gl als Quelle des Weltbildes während der Präsentation verwendet.

Spezifikationen

Specification
WebXR Device API
# dom-xrrenderstate-baselayer

Browser-Kompatibilität

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
baseLayer
Experimental

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
No support
No support
Experimental. Expect behavior to change in the future.