glSecondaryColorPointer: Unterschied zwischen den Versionen

Aus DGL Wiki
Wechseln zu: Navigation, Suche
(neu erstellt)
 
K (Bot: konvertiere/korrigiere <BR>)
 
Zeile 1: Zeile 1:
 
= glSecondaryColorPointer =
 
= glSecondaryColorPointer =
  
<br>
+
 
 +
 
 
== Name ==
 
== Name ==
 
'''glSecondaryColorPointer''' - definiert ein Feld, das Zweitfarben enthält.
 
'''glSecondaryColorPointer''' - definiert ein Feld, das Zweitfarben enthält.
  
<br>
+
 
 +
 
 
== Delphi-Spezifikation ==
 
== Delphi-Spezifikation ==
 
  procedure '''glSecondaryColorPointer'''(''size'': TGLint; ''_type'': TGLenum;
 
  procedure '''glSecondaryColorPointer'''(''size'': TGLint; ''_type'': TGLenum;
 
                                   ''stride'': TGLsizei; '''const''' ''_pointer'': PGLvoid);
 
                                   ''stride'': TGLsizei; '''const''' ''_pointer'': PGLvoid);
  
<br>
+
 
 +
 
  
 
== Parameter ==
 
== Parameter ==
Zeile 28: Zeile 31:
 
|}
 
|}
  
<br>
+
 
 +
 
  
 
== Beschreibung ==  
 
== Beschreibung ==  
Zeile 37: Zeile 41:
 
Um das Zweitfarb-Array ein- und auszuschalten, können [[glEnableClientState]] und [[glDisableClientState]] mit dem Argument '''GL_SECONDARY_COLOR_ARRAY''' aufgerufen werden. Wenn aktiviert, wird das Zweitfarb-Array bei Aufrufen von [[glDrawArrays]], [[glDrawElements]], [[glDrawRangeElements]], [[glMultiDrawArrays]], [[glMultiDrawElements]] und [[glArrayElement]] benutzt.
 
Um das Zweitfarb-Array ein- und auszuschalten, können [[glEnableClientState]] und [[glDisableClientState]] mit dem Argument '''GL_SECONDARY_COLOR_ARRAY''' aufgerufen werden. Wenn aktiviert, wird das Zweitfarb-Array bei Aufrufen von [[glDrawArrays]], [[glDrawElements]], [[glDrawRangeElements]], [[glMultiDrawArrays]], [[glMultiDrawElements]] und [[glArrayElement]] benutzt.
  
<br>
+
 
 +
 
 
== Hinweise ==
 
== Hinweise ==
 
'''glSecondaryColorPointer''' ist erst ab OpenGL Version 1.4 oder später verfügbar.
 
'''glSecondaryColorPointer''' ist erst ab OpenGL Version 1.4 oder später verfügbar.
Zeile 50: Zeile 55:
 
Zweitfarbfeld-Parameter werden klientseitig gespeichert und können deshalb nicht mit [[glPushAttrib]] und [[glPopAttrib]] gespeichert bzw. wiederhergestellt werden. Benutzen Sie stattdessen [[glPushClientAttrib]] und [[glPopClientAttrib]].
 
Zweitfarbfeld-Parameter werden klientseitig gespeichert und können deshalb nicht mit [[glPushAttrib]] und [[glPopAttrib]] gespeichert bzw. wiederhergestellt werden. Benutzen Sie stattdessen [[glPushClientAttrib]] und [[glPopClientAttrib]].
  
<br>
+
 
 +
 
 
== Fehlermeldungen ==
 
== Fehlermeldungen ==
 
;'''GL_INVALID_VALUE''': ''size'' hat einen anderen Wert als 3.<br>
 
;'''GL_INVALID_VALUE''': ''size'' hat einen anderen Wert als 3.<br>
Zeile 56: Zeile 62:
 
;'''GL_INVALID_VALUE''': ''stride'' ist negativ.<br>
 
;'''GL_INVALID_VALUE''': ''stride'' ist negativ.<br>
  
<br>
+
 
 +
 
 
==  Zugehörige Wertrückgaben ==
 
==  Zugehörige Wertrückgaben ==
 
[[glIsEnabled]] mit dem Token '''GL_SECONDARY_COLOR_ARRAY'''<br>
 
[[glIsEnabled]] mit dem Token '''GL_SECONDARY_COLOR_ARRAY'''<br>
Zeile 64: Zeile 71:
 
[[glGetPointerv]] mit dem Token '''GL_SECONDARY_COLOR_ARRAY_POINTER'''<br>
 
[[glGetPointerv]] mit dem Token '''GL_SECONDARY_COLOR_ARRAY_POINTER'''<br>
  
<br>
+
 
 +
 
  
 
== Siehe auch ==
 
== Siehe auch ==

Aktuelle Version vom 22. April 2006, 19:24 Uhr

glSecondaryColorPointer

Name

glSecondaryColorPointer - definiert ein Feld, das Zweitfarben enthält.


Delphi-Spezifikation

procedure glSecondaryColorPointer(size: TGLint; _type: TGLenum;
                                  stride: TGLsizei; const _pointer: PGLvoid);



Parameter

size Gibt an aus wievielen Komponenten die Zweitfarbe besteht. (Nur 3 ist gültig.)
_type Bestimmt den Datentyp jeder Farbcomponente im Feld. Als symbolische Konstanten werden GL_BYTE, GL_UNSIGNED_BYTE, GL_SHORT, GL_UNSIGNED_SHORT, GL_INT, GL_UNSIGNED_INT, GL_FLOAT und GL_DOUBLE akzeptiert.
stride Bestimmt den Byteabstand zwischen aufeinenderfolgenden Zweitfarben. Wenn stride 0 (Standard) ist, wird angenommen, dass die Farben in dem Array dicht gepackt liegen.
_pointer Bestimmt einen Zeiger auf die erste Zweitfarben-Komponente, der ersten Zweitfarbe im Feld.



Beschreibung

glSecondaryColorPointer bestimmt den Ort und das Datenformat eines Zweitfarben-Komponenten-Arrays, das zum Rendern benutzt werden soll. size bestimmt die Anzahl an Komponenten pro Farbe und muss 3 sein. _type bestimmt den Datentyp jeder Farbkomponente. stride legt den Abstand zwischen den Farben fest, was ermöglicht, dass Vertices und Attribute im einem einzelnen oder aber verschiedenen Arrays liegen. (Einzelspeicherung kann in einigen Implementationen effizienter sein; siehe glInterleavedArrays)

Wenn ein Zweitfarb-Array festgelegt wird, werden size, _type, stride und _pointer als klientseitiger Status gespeichert.

Um das Zweitfarb-Array ein- und auszuschalten, können glEnableClientState und glDisableClientState mit dem Argument GL_SECONDARY_COLOR_ARRAY aufgerufen werden. Wenn aktiviert, wird das Zweitfarb-Array bei Aufrufen von glDrawArrays, glDrawElements, glDrawRangeElements, glMultiDrawArrays, glMultiDrawElements und glArrayElement benutzt.


Hinweise

glSecondaryColorPointer ist erst ab OpenGL Version 1.4 oder später verfügbar.

Im Initialisierungszustand ist das Zweitfarbfeld deaktiviert und wird von glArrayElement, glDrawArrays bzw. glDrawElements nicht benutzt, wenn diese Befehle aufgerufen werden.

Ein Aufruf von glSecondaryColorPointer innerhalb eines glBegin-glEnd Blocks ist nicht erlaubt. Trotzdem kann es sein, dass kein Fehler generiert wird. Wenn dies geschieht, ist die Operation undefiniert.

glSecondaryColorPointer ist normalerweise auf der Klientseite implementiert.

Zweitfarbfeld-Parameter werden klientseitig gespeichert und können deshalb nicht mit glPushAttrib und glPopAttrib gespeichert bzw. wiederhergestellt werden. Benutzen Sie stattdessen glPushClientAttrib und glPopClientAttrib.


Fehlermeldungen

GL_INVALID_VALUE
size hat einen anderen Wert als 3.
GL_INVALID_ENUM
_type wurde ein ungültiger Wert zugewiesen.
GL_INVALID_VALUE
stride ist negativ.


Zugehörige Wertrückgaben

glIsEnabled mit dem Token GL_SECONDARY_COLOR_ARRAY
glGet mit Token GL_SECONDARY_COLOR_ARRAY_SIZE
glGet mit Token GL_SECONDARY_COLOR_ARRAY_TYPE
glGet mit Token GL_SECONDARY_COLOR_ARRAY_STRIDE
glGetPointerv mit dem Token GL_SECONDARY_COLOR_ARRAY_POINTER



Siehe auch

glArrayElement, glColorPointer, glDrawArrays, glDrawElements, glDrawRangeElements, glEdgeFlagPointer, glEnable, glFogCoordPointer, glGetPointerv, glIndexPointer, glInterleavedArrays, glMultiDrawArrays, glMultiDrawElements, glNormalPointer, glPopClientAttrib, glPushClientAttrib, glSecondaryColor, glTexCoordPointer, glVertexPointer