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 0 (null) ist, werden die Farben eng in das 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 |
|---|---|
|
size 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. 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 Scheitelpunktattributen in einem einzelnen Array effizienter sein als die Verwendung separater Arrays.
Das Farbarray wurde aktiviert, indem die GL _ COLOR _ ARRAY-Konstante mit glEnableClientState angegeben wird. Beim Aufrufen von glArrayElement, glDrawElementsoder glDrawArrays wird das Farbarray verwendet, das aktiviert ist. Standardmäßig ist das Farbarray deaktiviert. Die glColorPointer-Aufrufe können nicht durch Eingabe in Anzeigelisten ausgeführt 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, speichern oder wiederherstellen glPushAttrib und glPopAttrib die Werte der Parameter nicht.
Obwohl die Angabe des Farbarrays innerhalb von glBegin-Paaren und -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
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 |
|