ANGLE_instanced_arrays: drawElementsInstancedANGLE() Methode

Baseline Widely available

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

Die ANGLE_instanced_arrays.drawElementsInstancedANGLE()-Methode der WebGL API rendert Primitiven aus Array-Daten ähnlich wie die Methode gl.drawElements(). Zusätzlich kann sie mehrere Instanzen eines Satzes von Elementen ausführen.

Hinweis: Bei Verwendung von WebGL2 ist diese Methode standardmäßig als gl.drawElementsInstanced() verfügbar.

Syntax

js
drawElementsInstancedANGLE(mode, count, type, offset, primcount)

Parameter

mode

Ein GLenum, der den Typ des zu rendernden Primitivs angibt. Mögliche Werte sind:

  • gl.POINTS: Zeichnet einen einzelnen Punkt.
  • gl.LINE_STRIP: Zeichnet eine gerade Linie zum nächsten Vertex.
  • gl.LINE_LOOP: Zeichnet eine gerade Linie zum nächsten Vertex und verbindet den letzten Vertex zurück zum ersten.
  • gl.LINES: Zeichnet eine Linie zwischen einem Paar von Vertices.
  • gl.TRIANGLE_STRIP
  • gl.TRIANGLE_FAN
  • gl.TRIANGLES: Zeichnet ein Dreieck für eine Gruppe von drei Vertices.
count

Ein GLsizei, der die Anzahl von zu rendernden Elementen spezifiziert.

type

Ein GLenum, der den Typ der Werte im Element-Array-Puffer angibt. Mögliche Werte sind:

offset

Ein GLintptr, der einen Offset im Element-Array-Puffer spezifiziert. Muss ein gültiges Vielfaches der Größe des angegebenen type sein.

primcount

Ein GLsizei, der die Anzahl der Instanzen des Satzes von Elementen angibt, die ausgeführt werden sollen.

Rückgabewert

Keiner (undefined).

Ausnahmen

  • Wenn mode nicht einer der akzeptierten Werte ist, wird ein gl.INVALID_ENUM-Fehler ausgelöst.
  • Wenn offset kein gültiges Vielfaches der Größe des angegebenen Typs ist, wird ein gl.INVALID_OPERATION-Fehler ausgelöst.
  • Wenn count oder primcount negativ sind, wird ein gl.INVALID_VALUE-Fehler ausgelöst.

Beispiele

js
const ext = gl.getExtension("ANGLE_instanced_arrays");
ext.drawElementsInstancedANGLE(gl.POINTS, 2, gl.UNSIGNED_SHORT, 0, 4);

Spezifikationen

Specification
WebGL ANGLE_instanced_arrays Khronos Ratified Extension Specification

Browser-Kompatibilität

Siehe auch