glColorPointer-Funktion
Die glColorPointer-Funktion definiert ein Array von Farben.
Syntax
void WINAPI glColorPointer(
GLint size,
GLenum type,
GLsizei stride,
const GLvoid *pointer
);
Parameter
-
size
-
Die Anzahl der Komponenten pro Farbe. Der Wert muss entweder 3 oder 4 sein.
-
type
-
Der Datentyp jeder Farbkomponente in einem Farbarray. Zulässige Datentypen werden mit den folgenden Konstanten angegeben: GL_BYTE, GL_UNSIGNED_BYTE, GL_SHORT, GL_UNSIGNED_SHORT, GL_INT, GL_UNSIGNED_INT, GL_FLOAT oder GL_DOUBLE.
-
Schritt
-
Der Byteoffset zwischen aufeinanderfolgenden Farben. Wenn stride null ist, werden die Farben eng im Array gepackt.
-
Zeiger
-
Ein Zeiger auf die erste Komponente des ersten Farbelements in einem Farbarray.
Rückgabewert
Diese Funktion gibt keinen Wert zurück.
Fehlercodes
Die folgenden Fehlercodes können von der glGetError-Funktion abgerufen werden.
Name | Bedeutung |
---|---|
|
Die Größe war nicht 3 oder 4. |
|
type war kein akzeptierter Wert. |
|
stride oder count war negativ. |
Bemerkungen
Die glColorPointer-Funktion gibt den Speicherort und das Datenformat eines Arrays von Farbkomponenten an, die beim Rendern verwendet werden sollen. Der stride-Parameter bestimmt den Byteoffset von einer Farbe zur nächsten, wodurch das Packen von Vertexattributen in einem einzelnen Array oder Speicher in separaten Arrays ermöglicht wird. In einigen Implementierungen kann das Speichern von Vertexattributen in einem einzelnen Array effizienter sein als die Verwendung separater Arrays.
Das Farbarray wurde aktiviert, indem die GL_COLOR_ARRAY-Konstante mit glEnableClientState angegeben wurde. Beim Aufrufen von glArrayElement, glDrawElements oder glDrawArrays wird das Farbarray verwendet, das somit aktiviert ist. Standardmäßig ist das Farbarray deaktiviert. Die glColorPointer-Aufrufe können nicht in Anzeigelisten eingegeben werden.
Wenn Sie ein Farbarray mit glColorPointer angeben, werden die Werte aller Farbarrayparameter der Funktion in einem clientseitigen Zustand gespeichert, und Sie können statische Arrayelemente zwischenspeichern. Da sich die Farbarrayparameter in einem clientseitigen Zustand befinden, werden die Werte von glPushAttrib und glPopAttrib nicht gespeichert oder wiederhergestellt.
Obwohl das Angeben des Farbarrays in glBegin - und glend-Paaren keinen Fehler generiert, sind die Ergebnisse nicht definiert.
Die folgenden Funktionen rufen Informationen im Zusammenhang mit der GlColorPointer-Funktion ab:
glIsEnabled mit Argument GL_COLOR_ARRAY
glGet mit Argument GL_COLOR_ARRAY_SIZE
glGet mit Argument GL_COLOR_ARRAY_TYPE
glGet mit Argument GL_COLOR_ARRAY_STRIDE
glGet mit Argument GL_COLOR_ARRAY_COUNT
glGetPointerv mit Argument GL_COLOR_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 |
|
Bibliothek |
|
DLL |
|