glColorMaterial

Aus DGL Wiki
Wechseln zu: Navigation, Suche

glColorMaterial

Name

glColorMaterial - bestimmt, welche Materialeigenschaften sich auf die aktuelle Farbe auswirken.


Delphi-Spezifikation

procedure glColorMaterial(face: TGLenum; mode: TGLenum);


Parameter

face Gibt an, ob die Materialparameter der Vorderseite und/oder Rückseite die aktuelle Farbe beeinflussen sollen. Akzeptiert werden:

GL_FRONT, GL_BACK, und GL_FRONT_AND_BACK
Vorgabewert ist GL_FRONT_AND_BACK

mode Gibt an, welche der verschiedenen Materialparameter sich auf die aktuelle Farbe auswirken soll. Akzeptiert werden:

GL_EMISSION, GL_AMBIENT, GL_DIFFUSE, GL_SPECULAR, und GL_AMBIENT_AND_DIFFUSE
Vorgabewert ist GL_AMBIENT_AND_DIFFUSE


Beschreibung

glColorMaterial spezifiziert, welche Materialeigenschaften sich auf die aktuelle Farbe auswirken sollen.
Wenn GL_COLOR_MATERIAL aktiviert ist, beinflussen

die Eigenschaft/en, die über mode angegeben wurden,
der Seite/n, die über face gewählt wurden,

die aktuelle Farbe über die ganze Zeit.

GL_COLOR_MATERIAL kann über glEnable/glDisable und dem Token GL_COLOR_MATERIAL aktiviert bzw. deaktiviert werden. Als Vorgabewert ist es deaktiviert.


Hinweise

glColorMaterial ermöglicht es für einen Teil der Materialparameter, diese für jeden Vertex direkt mit glColor zu ändern, ohne glMaterial extra aufzurufen. Wenn also nur ein Parameter aus dieser Teilmenge geändert werden soll, ist glColorMaterial dem Aufruf von glMaterial vorzuziehen.

Rufen Sie glColorMaterial auf, bevor Sie GL_COLOR_MATERIAL aktivieren (mittels glEnable).

glDrawElements kann die aktuelle Farbe undefiniert zurücklassen. Wenn während dieses undefinierten Zustandes glColorMaterial aktiviert wird, ist der Status der Beleuchtungsmaterialien, die mittels face und mode gewählt wurden, ebenfalls unbestimmt.

Ab GL Version 1.1 beeinflussen evaluierte Farbwerte das Ergebnis der Lichtberechnung so, als ob die aktuelle Farbe geändert worden wäre. Dabei werden aber keine Änderungen an den Beleuchtungsparametern durchgeführt.

Fehlermeldungen

GL_INVALID_ENUM wird generiert, wenn face oder mode ein ungültiger Wert übergeben wurde.

GL_INVALID_OPERATION wird generiert, wenn glColorMaterial innerhalb eines glBegin-glEnd-Blocks aufgerufen wird.



Zugehörige Wertrückgaben

glGet mit Token GL_COLOR_MATERIAL_PARAMETER

glGet mit Token GL_COLOR_MATERIAL_FACE

glIsEnabled mit Token GL_COLOR_MATERIAL


Siehe auch

glColor, glEnable, glLight, glLightModel, glMaterial

Materialsammlung