WEBGL_multi_draw: Methode multiDrawArraysWEBGL()
Eingeschränkt verfügbar
Diese Funktion ist nicht Baseline, da sie in einigen der am weitesten verbreiteten Browser nicht funktioniert.
Want more browser support for this feature? Tell us why.
Hinweis: Diese Funktion ist in Web Workers verfügbar.
Die Methode WEBGL_multi_draw.multiDrawArraysWEBGL() der WebGL API rendert mehrere Primitive aus Array-Daten. Sie entspricht mehreren Aufrufen der Methode gl.drawArrays().
Syntax
multiDrawArraysWEBGL(mode,
firstsList, firstsOffset,
countsList, countsOffset,
drawCount)
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 wieder mit dem ersten.gl.LINES: Zeichnet eine Linie zwischen zwei Vertices.gl.TRIANGLE_STRIPgl.TRIANGLE_FANgl.TRIANGLES: Zeichnet ein Dreieck aus einer Gruppe von drei Vertices.
firstsList-
Ein
Int32ArrayoderArrayausGLint-Werten, das eine Liste von Startindizes für die Arrays mit Vektorpunkten angibt. firstsOffset-
Ein
GLuint, der die Startposition im ArrayfirstsListsfestlegt. countsList-
Ein
Int32ArrayoderArrayausGLsizei-Werten, das eine Liste mit der Anzahl der zu rendernden Indizes angibt. countsOffset-
Ein
GLuint, der die Startposition im ArraycountsListfestlegt. drawCount-
Ein
GLsizei, der angibt, wie oft der Elementbereich verarbeitet werden soll.
Rückgabewert
Keiner.
Ausnahmen
- Wenn
modekeiner der zulässigen Werte ist, wird eingl.INVALID_ENUM-Fehler ausgelöst. - Wenn
drawCountoder Einträge infirstsListundcountsListnegativ sind, wird eingl.INVALID_VALUE-Fehler ausgelöst. - Wenn
gl.CURRENT_PROGRAMden Wertnullhat, wird eingl.INVALID_OPERATION-Fehler ausgelöst.
Beispiele
const firsts = new Int32Array(/* … */);
const counts = new Int32Array(/* … */);
ext.multiDrawArraysWEBGL(gl.TRIANGLES, firsts, 0, counts, 0, firsts.length);
Spezifikationen
| Spezifikation |
|---|
| WebGL WEBGL_multi_draw Extension Specification> |