glShadeModel: Unterschied zwischen den Versionen

Aus DGL Wiki
Wechseln zu: Navigation, Suche
(Syntax)
Zeile 4: Zeile 4:
 
  procedure '''glShadeModel'''(''mode'': GLenum);
 
  procedure '''glShadeModel'''(''mode'': GLenum);
  
==Aufgabe==
+
==Parameter==
Legt fest ob Farbverläufe zwischen den einzelnen Eckpunkten des [[Primitiv]]en gebildet werden.
+
{| border="1" rules="all"
 +
! ''mode''
 +
| Bestimmt einen symbolischen Wert der eine Färbetechnik (Shadingtechnique) repräsentiert. Akzeptierte Werte sind '''GL_FLAT''' und '''GL_SMOOTH'''. <br>
 +
Der '''Vorgabewert''' ist '''GL_SMOOTH'''.
 +
|}
  
==Parameter==
+
==Beschreibung==
Der Parameter mode kann einen der folgenden Werte enthalten:
+
'''GL_SMOOTH'''
;GL_SMOOTH : Es bilden sich Farbverläufe zwischen den Eckpunkten eines Primitiven.
+
: Es bilden sich Farbverläufe zwischen den Eckpunkten eines Primitiven.
;GL_FLAT : Das gesamte Primitiv erhält die Farbe eines Eckpunktes
+
'''GL_FLAT'''
 +
: Das gesamte Primitiv erhält die Farbe die als letztes dem Polygon zugewiesen wurde.
 +
 
 +
GL [[Primitive]] können entweder mittels Flat- oder Smoothshading gefärbt werden. Der Vorgabewert "Smoothshading" sogt dafür, dass ein Farbverlauf über die Polygonfläche bei der [[Rasterisierung]] berechnet wird. Dies wird angewendet, wenn die Eckpunkte eines Polygons unterschiedlich gefärbt sein sollen.<br>
 +
Beim sogenannten Flatshading wird nur die Farbe eines Eckpunkts für das gesamt Polygon genutzt. (Es wird die zuletzt übergebene Farbe gewählt.)<br>
 +
Die Farbe eines Eckpunktes ist bei deaktiverter Beleuchtung nur von [[glColor]], bei aktivierter Beleuchtung zusätzlich noch von der Lichtberechnung abhängig.
 +
 
 +
Flat- und Smoothshading liefern für einzelne Punkte die gleichen Ergebnisse.
 +
<b><i>Starting when glBegin is issued and counting vertices and primitives from 1, the GL gives each flat-shaded line segment i the computed color of vertex i + 1, its second vertex. Counting similarly from 1, the GL gives each flat-shaded polygon the computed color of the vertex listed in the following table. This is the last vertex to specify the polygon in all cases except single polygons, where the first vertex specifies the flat-shaded color. </i></b>
  
==Hinweise==
+
{| border="1" rules="all"
GL_SMOOTH ist die Standart Einstellung.
+
! Primitivtyp eines Polygons
 +
! Vertex
 +
|-
 +
| Einzelnes Polygon (i genau 1)
 +
| 1
 +
|-
 +
| Trianglestrip
 +
| i + 2
 +
|-
 +
| Trianglefan
 +
| i + 2
 +
|-
 +
| Unabhängiges Dreieck
 +
| 3i
 +
|-
 +
| Quadstrip
 +
| 2i + 2
 +
|-
 +
| Unabhängiges Viereck
 +
| 4i
 +
|-
 +
|}
  
Die aktuelle Einstellung erhält man durch den Aufruf von [[glGet]] mit dem Parameter GL_SHADE_MODEL.
 
  
 
==Fehlermeldungen==
 
==Fehlermeldungen==
 
'''GL_INVALID_ENUM''' Wird erstellt wenn ein anderer Wert als '''GL_FLAT''' oder '''GL_SMOOTH''' übergeben wurde.<br>
 
'''GL_INVALID_ENUM''' Wird erstellt wenn ein anderer Wert als '''GL_FLAT''' oder '''GL_SMOOTH''' übergeben wurde.<br>
 
'''GL_INVLID_OPERATION''' Wird erzeugt wenn '''glShadeModel''' zwischen [[glBegin]] und glEnd aufgerufen wird.
 
'''GL_INVLID_OPERATION''' Wird erzeugt wenn '''glShadeModel''' zwischen [[glBegin]] und glEnd aufgerufen wird.
 +
 +
==Zugehörige Wertrückgaben==
 +
[[glGet]] mit dem Parameter '''GL_SHADE_MODEL'''.
  
 
==Siehe auch==
 
==Siehe auch==

Version vom 9. März 2005, 14:44 Uhr

glShadeModel

Syntax

procedure glShadeModel(mode: GLenum);

Parameter

mode Bestimmt einen symbolischen Wert der eine Färbetechnik (Shadingtechnique) repräsentiert. Akzeptierte Werte sind GL_FLAT und GL_SMOOTH.

Der Vorgabewert ist GL_SMOOTH.

Beschreibung

GL_SMOOTH

Es bilden sich Farbverläufe zwischen den Eckpunkten eines Primitiven.

GL_FLAT

Das gesamte Primitiv erhält die Farbe die als letztes dem Polygon zugewiesen wurde.

GL Primitive können entweder mittels Flat- oder Smoothshading gefärbt werden. Der Vorgabewert "Smoothshading" sogt dafür, dass ein Farbverlauf über die Polygonfläche bei der Rasterisierung berechnet wird. Dies wird angewendet, wenn die Eckpunkte eines Polygons unterschiedlich gefärbt sein sollen.
Beim sogenannten Flatshading wird nur die Farbe eines Eckpunkts für das gesamt Polygon genutzt. (Es wird die zuletzt übergebene Farbe gewählt.)
Die Farbe eines Eckpunktes ist bei deaktiverter Beleuchtung nur von glColor, bei aktivierter Beleuchtung zusätzlich noch von der Lichtberechnung abhängig.

Flat- und Smoothshading liefern für einzelne Punkte die gleichen Ergebnisse. Starting when glBegin is issued and counting vertices and primitives from 1, the GL gives each flat-shaded line segment i the computed color of vertex i + 1, its second vertex. Counting similarly from 1, the GL gives each flat-shaded polygon the computed color of the vertex listed in the following table. This is the last vertex to specify the polygon in all cases except single polygons, where the first vertex specifies the flat-shaded color.

Primitivtyp eines Polygons Vertex
Einzelnes Polygon (i genau 1) 1
Trianglestrip i + 2
Trianglefan i + 2
Unabhängiges Dreieck 3i
Quadstrip 2i + 2
Unabhängiges Viereck 4i


Fehlermeldungen

GL_INVALID_ENUM Wird erstellt wenn ein anderer Wert als GL_FLAT oder GL_SMOOTH übergeben wurde.
GL_INVLID_OPERATION Wird erzeugt wenn glShadeModel zwischen glBegin und glEnd aufgerufen wird.

Zugehörige Wertrückgaben

glGet mit dem Parameter GL_SHADE_MODEL.

Siehe auch

glColor, glLight, glLightModel, glBegin