WebGLRenderingContext: bindBuffer() 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.bindBuffer()
Methode der WebGL API bindet ein gegebenes
WebGLBuffer
an ein Ziel.
Syntax
bindBuffer(target, buffer)
Parameter
target
-
Ein
GLenum
, das den Bindungspunkt (target) spezifiziert. Mögliche Werte:gl.ARRAY_BUFFER
-
Buffer, der Vertex-Attribute enthält, wie z.B. Vertex-Koordinaten, Texturkoordinatendaten oder Vertex-Farbwerte.
gl.ELEMENT_ARRAY_BUFFER
-
Buffer, der für Elementindizes verwendet wird.
Bei der Verwendung eines WebGL 2 Kontext sind zusätzlich die folgenden Werte verfügbar:
gl.COPY_READ_BUFFER
-
Buffer zum Kopieren von einem Pufferobjekt in ein anderes.
gl.COPY_WRITE_BUFFER
-
Buffer zum Kopieren von einem Pufferobjekt in ein anderes.
gl.TRANSFORM_FEEDBACK_BUFFER
-
Buffer für Transform-Feedback-Operationen.
gl.UNIFORM_BUFFER
-
Buffer zur Speicherung von Uniformblöcken.
gl.PIXEL_PACK_BUFFER
-
Buffer für Pixeltransfers.
gl.PIXEL_UNPACK_BUFFER
-
Buffer für Pixeltransfers.
buffer
-
Ein
WebGLBuffer
zum Binden.
Rückgabewert
Keiner (undefined
).
Ausnahmen
Nur ein Ziel kann an ein gegebenes WebGLBuffer
gebunden werden. Ein Versuch, den Puffer an ein anderes Ziel zu binden, löst einen INVALID_OPERATION
Fehler aus, und die aktuelle Pufferbindung bleibt unverändert.
Ein WebGLBuffer
, das mit
deleteBuffer
zur Löschung markiert wurde, kann nicht (wieder) gebunden werden. Ein Versuch, dies zu tun, erzeugt einen INVALID_OPERATION
Fehler, und die aktuelle Bindung bleibt unberührt.
Beispiele
Binden eines Buffers an ein Ziel
const canvas = document.getElementById("canvas");
const gl = canvas.getContext("webgl");
const buffer = gl.createBuffer();
gl.bindBuffer(gl.ARRAY_BUFFER, buffer);
Aktuelle Bindungen abrufen
Um die aktuellen Pufferbindungen zu überprüfen, können Sie die Konstanten ARRAY_BUFFER_BINDING
und ELEMENT_ARRAY_BUFFER_BINDING
abfragen.
gl.getParameter(gl.ARRAY_BUFFER_BINDING);
gl.getParameter(gl.ELEMENT_ARRAY_BUFFER_BINDING);
Spezifikationen
Specification |
---|
WebGL Specification # 5.14.5 |
WebGL 2.0 Specification # 3.7.1 |
Browser-Kompatibilität
BCD tables only load in the browser