glTexCoordPointer-Funktion

Die glTexCoordPointer-Funktion definiert ein Array von Texturkoordinaten.

Syntax

void WINAPI glTexCoordPointer(
         GLint   size,
         GLenum  type,
         GLsizei stride,
   const GLvoid  *pointer
);

Parameter

size

Die Anzahl der Koordinaten pro Arrayelement. Der Wert der Größe muss 1, 2, 3 oder 4 sein.

type

Der Datentyp jeder Texturkoordinate im Array mit den folgenden symbolischen Konstanten: GL_SHORT, GL_INT, GL_FLOAT und GL_DOUBLE.

Schritt

Der Byteoffset zwischen aufeinanderfolgenden Arrayelementen. Wenn stride null ist, werden die Arrayelemente eng im Array gepackt.

Zeiger

Ein Zeiger auf die erste Koordinate des ersten Elements im Array.

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Fehlercodes

Die folgenden Fehlercodes können von der glGetError-Funktion abgerufen werden.

Name Bedeutung
GL_INVALID_ENUM
type war kein akzeptierter Wert.
GL_INVALID_VALUE
Die Größe war nicht 1, 2, 3 oder 4.
GL_INVALID_VALUE
stride war negativ.

Bemerkungen

Die glTexCoordPointer-Funktion gibt die Position und die Daten eines Arrays von Texturkoordinaten an, die beim Rendern verwendet werden sollen. Der Size-Parameter gibt die Anzahl der Koordinaten an, die für jedes Element des Arrays verwendet werden. Der Type-Parameter gibt den Datentyp der einzelnen Texturkoordinaten an. Der stride-Parameter bestimmt den Byteoffset von einem Arrayelement zum nächsten und ermöglicht das Packen von Scheitelpunkten und Attributen in einem einzelnen Array oder Speicher in separaten Arrays. In einigen Implementierungen kann das Speichern der Scheitelpunkte und Attribute in einem einzelnen Array effizienter sein als die Verwendung separater Arrays. Weitere Informationen finden Sie unter glInterleavedArrays. Wenn ein Texturkoordinatenarray angegeben wird, werden Größe, Typ, Schritt und Zeiger clientseitig gespeichert.

Ein Texturkoordinatenarray wird aktiviert, wenn Sie die GL_TEXTURE_COORD_ARRAY Konstante mit glEnableClientState angeben. Wenn aktiviert, verwenden glDrawArrays, glDrawElements und glArrayElement das Texturkoordinatenarray. Standardmäßig ist das Texturkoordinatenarray deaktiviert.

Sie können glTexCoordPointer nicht in Anzeigelisten einschließen.

Wenn Sie ein Texturkoordinatenarray mithilfe von glTexCoordPointer angeben, werden die Werte aller Texturkoordinatenarrayparameter der Funktion in einem clientseitigen Zustand gespeichert, und statische Arrayelemente können zwischengespeichert werden. Da die Texturkoordinatenarrayparameter clientseitig sind, werden ihre Werte nicht von glPushAttrib und glPopAttrib gespeichert oder wiederhergestellt.

Obwohl beim Aufrufen von glTexCoordPointer innerhalb der GlBegin - und glEnd-Paare kein Fehler generiert wird, sind die Ergebnisse nicht definiert.

Die folgenden Funktionen rufen Informationen im Zusammenhang mit glTexCoordPointer ab:

glIsEnabled mit Argument GL_TEXTURE_COORD_ARRAY

glGet mit Argument GL_TEXTURE_COORD_ARRAY_SIZE

glGet mit argument GL_TEXTURE_COORD_ARRAY_STRIDE

glGet mit argument GL_TEXTURE_COORD_ARRAY_COUNT

glGet mit Argument GL_TEXTURE_COORD_ARRAY_TYPE

glGetPointerv mit Argument GL_TEXTURE_COORD_ARRAY_POINTER

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server)
Windows 2000 Server [nur Desktop-Apps]
Header
Gl.h
Bibliothek
Opengl32.lib
DLL
Opengl32.dll

Siehe auch

glArrayElement

glColorPointer

glDrawArrays

glDrawElements

glEdgeFlagPointer

glEnable

glGetPointerv

glGetString

glIndexPointer

glIsEnabled

glNormalPointer

glPopClientAttrib

glPushClientAttrib

glTexCoord

glVertexPointer