glDrawArrays-Funktion
Die glDrawArrays-Funktion gibt mehrere primitive Typen an, die gerendert werden sollen.
Syntax
void WINAPI glDrawArrays(
GLenum mode,
GLint first,
GLsizei count
);
Parameter
-
mode
-
Die Art von primitiven Typen, die gerendert werden sollen. Die folgenden Konstanten geben zulässige Typen von Primitiven an: GL _ POINTS, GL _ LINE _ STRIP, GL _ LINE _ LOOP, GL _ LINES, GL TRIANGLE _ _ STRIP, GL TRIANGLE _ _ FAN, GL _ TRIANGLES, GL _ QUAD _ STRIP, GL _ QUADS und GL _ POLYGON.
-
first
-
Der Startindex in den aktivierten Arrays.
-
count
-
Die Anzahl der zu rendernden Indizes.
Rückgabewert
Diese Funktion gibt keinen Wert zurück.
Fehlercodes
Die folgenden Fehlercodes können von der glGetError-Funktion abgerufen werden.
| Name | Bedeutung |
|---|---|
|
count war negativ. |
|
mode war kein akzeptierter Wert. |
|
Die Funktion wurde zwischen einem Aufruf von glBegin und dem entsprechenden Aufruf von glEndaufgerufen. |
Bemerkungen
Mit glDrawArrays können Sie mehrere geometrische Primitive angeben, die gerendert werden sollen. Anstatt separate OpenGL-Funktionen aufzurufen, um jeden einzelnen Scheitelpunkt, jede Normale oder Farbe zu übergeben, können Sie separate Arrays von Scheitelpunkten, Normalitäten und Farben angeben, um eine Sequenz von Primitiven (alle gleich) mit einem einzigen Aufruf von glDrawArrays zu definieren.
Wenn Sie glDrawArrays aufrufen, werden sequenzielle Elemente aus jedem aktivierten Array gezählt, um eine Sequenz geometrischer Primitive zu erstellen, beginnend mit dem ersten Element. Der mode-Parameter gibt an, welche Art primitiver Elemente erstellt werden soll und wie die Arrayelemente verwendet werden, um die Primitiven zu erstellen.
Nachdem glDrawArrays zurückgegeben wurde, sind die Werte von Vertexattributen, die von glDrawArrays geändert werden, nicht definiert. Wenn z. B. GL _ COLOR _ ARRAY aktiviert ist, ist der Wert der aktuellen Farbe nicht definiert, nachdem glDrawArrays zurückgegeben wurde. Attribute, die nicht durch glDrawArrays geändert werden, bleiben definiert. Wenn GL _ VERTEX _ ARRAY nicht aktiviert ist, werden keine geometrischen Primitive generiert, aber die Attribute, die aktivierten Arrays entsprechen, werden geändert.
Sie können glDrawArrays in Anzeigelisten einschließen. Wenn Sie glDrawArrays in eine Anzeigeliste einschließen, werden die erforderlichen Arraydaten, die durch die Arrayzeiger und die Aktivierten bestimmt werden, generiert und in die Anzeigeliste eingegeben. Die Werte von Arrayzeigern und -aktivierten werden während der Erstellung von Anzeigelisten bestimmt.
Sie können statische Arraydaten jederzeit lesen. Wenn statische Arrayelemente geändert werden und das Array nicht erneut angegeben wird, sind die Ergebnisse aller nachfolgenden Aufrufe von glDrawArrays nicht definiert.
Obwohl kein Fehler generiert wird, wenn Sie ein Array mehr als einmal in glBegin- und -paaren angeben, sind die Ergebnisse nicht definiert.
Requirements (Anforderungen)
| Anforderung | Wert |
|---|---|
| Unterstützte Mindestversion (Client) |
Windows 2000 Professional [nur Desktop-Apps] |
| Unterstützte Mindestversion (Server) |
Windows 2000 Server [nur Desktop-Apps] |
| Header |
|
| Bibliothek |
|
| DLL |
|