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: Dieses Feature ist verfügbar in Web Workers.
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
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*
undgl.blitFramebuffer
verwendet. gl.READ_FRAMEBUFFER
-
Wird als Quelle für Leseoperationen wie
gl.readPixels
undgl.blitFramebuffer
verwendet.
framebuffer
-
Ein
WebGLFramebuffer
-Objekt zum Binden, odernull
zum Binden des mit dem Rendering-Kontext verbundenenHTMLCanvasElement
oderOffscreenCanvas
-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
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.
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