glDrawArrays

Aus DGL Wiki
Version vom 5. Dezember 2005, 20:27 Uhr von DGLBot (Diskussion | Beiträge) (GlDrawArrays wurde nach glDrawArrays verschoben)

Wechseln zu: Navigation, Suche

glDrawArrays

glDrawArrays - Erlaubt es mehrere Primitive auf einmal zu zeichnen


Delphi-Spezifikation

procedure glDrawArrays(mode: TGLenum; first: TGLint; count: TGLsizei);


Parameter

Parameter Beschreibung
mode Bestimmt welche Primitiven anhand der Vertexe gezeichnet werden sollen.
Es können die gleichen Werte wie bei glBegin übergeben werden:
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 Legt fest welches Element des Array das erste sein soll.
count Legt fest wieviele Elemente gezeichnet werden sollen,


Beschreibung

glDrawArrays erlaubt es mehre Primitive mit nur einem Befehl zu zeichnen. Die benötigten Infomationen werden aus den mit glEnableClientState aktivierten Arrays bezogen.


Hinweise

Nach dem Aufruf dieser Funktion sind die aktuellen Werte, von dennen ein Array genutzt wurde, nicht definiert. Wurde etwa GL_COLOR_ARRAY aktiviert dann ist nach dem Aufruf dieser Funktion nicht festgelegt was die aktuelle Farbe ist.

Der Befehl glDrawArrays kann in Displaylisten verwendet werden. Dadurch werden alle Daten aus den Arrays in die Liste übernommen.

Fehlermeldungen

GL_INVALID_VALUE 
Count hatte einen negativen Wert
GL_INVALID_ENUM
mode hatte einen ungültigen Wert
GL_INVALID_OPERATION
glDrawArrays wurde zwischen glBegin und dem dazugehörigen glEnd aufgerufen.


Siehe auch

glArrayElement, glEnableClientState, glDisableClientState, glBegin / glEnd, glColorPointer, glEdgeFlagPointer, glGetPointerv, glGetString, glIndexPointer, glNormalPointer, glTexCoordPointer, glVertexPointer