glHint
Inhaltsverzeichnis
glHint
Name
glHint - Setzt implementationsabhängige "Hinweise" (Hints).
Delphi-Spezifikation
procedure glHint(target : glEnum; hint : glEnum)
Parameter
target | Symbolische Konstante des Verhaltens, dass geändert werden soll. |
hint | Symbolische Konstante, die das verlangte Verhalten angibt. Gültig sind hier GL_FASTEST, GL_NICEST und GL_DONT_CARE. |
Beschreibung
Bestimmte Bereiche des OpenGL-Verhaltens (dort wo es möglich ist), können durch Hinweise kontrolliert werden. Ein Hinweis wird mit zwei Argumenten angegeben, wobei target angibt welches Verhalten gesetzt werden soll, und mode wie sich die Implementation verhalten soll. Standardmäßig sind alle Ziele auf GL_DONT_CARE gesetzt.
Gültige symbolische Konstanten für mode sind:
- GL_FASTEST
- Die effizienteste (meist verbunden mit geringerer Qualität) Option soll gewählt werden.
- GL_NICEST
- Die korrekteste (beste Qualität, meist aber langsamer) Option soll gewählt werden.
- GL_DONT_CARE
- Keine Vorgabe, hier entscheidet die OpenGL-Implementation selbst.
Obwohl genau festgelegt ist, welche Aspekte durch die Hinweise gesetzt werden können, so ist es doch jeder Implementation überlassen, wie diese Hinweise nun interpretiert werden.
Gültige symbolische Konstanten für target sind:
- GL_GENERATE_MIPMAP_HINT
- Gibt an, ob Geschwindigkeit oder Qualität bei der Erstellung der Mipmaps bevorzugt werden soll.
- GL_FOG_HINT
- Setzt die Genauigkeit der Nebel-Berechnungen. Wenn die aktuelle Implementation Per-Pixel-Berechnungen nicht schnell genug durchführen kann, dann kann über die Hinweise GL_DONT_CARE oder GL_FASTEST eine Per-Vertex-Berechnung der Nebeleffekte erzwungen werden.
- GL_LINE_SMOOTH_HINT
- Gibt die Samplequalität für kantengelättete Linien an. Wenn eine größere Filterfunktion angewandt wird, dann kann GL_NICEST in einer größeren Anzahl generierter Fragmente enden.
- GL_PERSPECTIVE_CORRECTION_HINT
- Setzt die Qualität der Interpolation von Farben und Texturkoordinaten. Durch GL_DONT_CARE oder GL_FASTEST kann man hier die perspektivisch korrekte Interpolation durch eine einfache lineare Interpolation ersetzen.
- GL_POINT_SMOOTH_HINT
- Gibt die Samplequalität für kantengelättete Punkte an. Wenn eine größere Filterfunktion angewandt wird, dann kann GL_NICEST in einer größeren Anzahl generierter Fragmente enden.
- GL_POLYGON_SMOOTH_HINT
- Gibt die Samplequalität für kantengelättete Polygone an. Wenn eine größere Filterfunktion angewandt wird, dann kann GL_NICEST in einer größeren Anzahl generierter Fragmente enden.
Hinweise
Die Interpretation der Hinweise hängt von der Implementation ab. Einige Implementationen ignorieren die via glHint getätigten Einstellungen.
Fehlermeldungen
GL_INVALID_ENUM wird generiert, wenn entweder target oder mode keine gültigen Werte enthalten.
GL_INVALID_OPERATION wird generiert, wenn glHint zwischen einem glBegin und dem passenden glEnd aufgerufen wird.