WebGLRenderingContext: bindFramebuffer()-Methode

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

Hinweis: Diese Funktion ist in Web Workers verfügbar.

Die WebGLRenderingContext.bindFramebuffer()-Methode der WebGL API bindet an das angegebene Ziel das bereitgestellte WebGLFramebuffer. Ist das framebuffer-Argument null, wird das Standard-WebGLFramebuffer gebunden, das mit dem Canvas-Rendering-Kontext verknüpft ist.

Syntax

js
bindFramebuffer(target, framebuffer)

Parameter

target

Ein GLenum, das den Bindungspunkt (Ziel) angibt. Mögliche Werte:

gl.FRAMEBUFFER

Sammlungspufferdaten für Farb-, Alpha-, Tiefen- und Stencil-Puffer, die sowohl als Ziel für das Zeichnen als auch als Quelle für das Lesen verwendet werden (siehe unten).

Bei Verwendung eines WebGL 2-Kontexts stehen zusätzlich folgende Werte zur Verfügung:

gl.DRAW_FRAMEBUFFER

Wird als Ziel für Zeichenoperationen wie gl.draw*, gl.clear* und gl.blitFramebuffer verwendet.

gl.READ_FRAMEBUFFER

Wird als Quelle für Leseoperationen wie gl.readPixels und gl.blitFramebuffer verwendet.

framebuffer

Ein WebGLFramebuffer-Objekt, das gebunden werden soll, oder null für die Bindung des HTMLCanvasElement oder OffscreenCanvas-Objekts, das mit dem Rendering-Kontext verknüpft ist.

Rückgabewert

Keiner (undefined).

Ausnahmen

Ein gl.INVALID_ENUM-Fehler wird ausgelöst, wenn target nicht gl.FRAMEBUFFER, gl.DRAW_FRAMEBUFFER oder gl.READ_FRAMEBUFFER ist.

Beispiele

Ein Framebuffer binden

js
const canvas = document.getElementById("canvas");
const gl = canvas.getContext("webgl");
const framebuffer = gl.createFramebuffer();

gl.bindFramebuffer(gl.FRAMEBUFFER, framebuffer);

Aktuelle Bindungen abrufen

Um die aktuelle Framebuffer-Bindung zu überprüfen, fragen Sie die FRAMEBUFFER_BINDING-Konstante ab.

js
gl.getParameter(gl.FRAMEBUFFER_BINDING);

Spezifikationen

Specification
WebGL Specification
# 5.14.6
WebGL 2.0 Specification
# 3.7.1

Browser-Kompatibilität

Siehe auch