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 des WebGL-API bindet den angegebenen Zielpunkt an die bereitgestellte WebGLFramebuffer, oder, wenn das framebuffer-Argument null ist, den standardmäßigen WebGLFramebuffer, der mit dem Canvas-Rendering-Kontext verbunden ist.

Syntax

js
bindFramebuffer(target, framebuffer)

Parameter

target

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

gl.FRAMEBUFFER

Datenspeicher für eine Sammlung von Farb-, Alpha-, Tiefen- und Stencil-Puffern, die sowohl als Ziel für Zeichnungen als auch als Quelle für das Lesen verwendet werden (siehe unten).

Wenn ein WebGL 2-Kontext verwendet wird, sind zusätzlich folgende Werte verfügbar:

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 zum Binden, oder null zum Binden des mit dem Rendering-Kontext verbundenen HTMLCanvasElement oder OffscreenCanvas-Objekts.

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

Einen 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

BCD tables only load in the browser

Siehe auch