glGetString

Aus DGL Wiki
Version vom 1. Juli 2006, 18:14 Uhr von Phobeus (Diskussion | Beiträge) (Beschreibung: GL_SHADING_LANGUAGE_VERSION_ARB)

Wechseln zu: Navigation, Suche

glGetString

Name

glGetString - Gibt einen String zurück, der die aktuelle OpenGL-Anbindung beschreibt.


Delphi-Spezifikation

function glGetString(name : TGLenum) : PChar; 



Parameter

name Symbolische Konstante, die entweder GL_VENDOR, GL_RENDERER, GL_VERSION, oder GL_EXTENSIONS ist.


Beschreibung

glGetString gibt einen String zurück, der einen Aspekt der aktuellen OpenGL-Anbindung beschreibt, wobei für name folgende symbolische Konstanten gültig sind :

  • GL_VENDOR
Gibt den Namen des Herstellers, von dem die GL-Implementation stammt, zurück. Dieser bleibt von Version zu Version gleich.
  • GL_RENDERER
Gibt den Namen des Renderers zurück, der im Normalfall die Hardwareplattform genauer beschreibt, und auch für jede Version gleich ist.
  • GL_VERSION
Gibt die Versionsnummer der GL-Implementation zurück.
  • GL_EXTENSIONS
Gibt eine (durch Leerzeichen getrennte) Liste aller unterstützten OpenGL-Erweiterungen zurück.
  • GL_SHADING_LANGUAGE_VERSION_ARB (ab OpenGL 1.5)
Gibt zurück, welche OpenGL Shading Language unterstützt wird.

Da OpenGL keine Abfragen für etwaige Performancecharacteristika einer Implementation bietet, werden einige Anwendung so entwickelt, dass sie bestimmte Plattformen erkennen und ihre GL-Nutzung daher an selbige anpassen. Dazu kann man die unter Übergabe von GL_VENDOR und GL_RENDERER zurückgegebenen Strings benutzen, um eine solche Plattform eindeutig zu identifizieren (Da diese nicht von Version zu Version unterschiedlich sind).

Andere Anwendungen hingegen wollen evtl. Funktionen nutzen, die nicht Bestandteil des GL-Kerns ("Core-Funktionen") sind. Diese Extensions können mit GL_EXTENSIONS abgefragt werden, und werden dann als eine durch Leerzeichen getrennte Liste zurückgegeben.

Der mit GL_VERSION zurückgelieferte String beginnt immer mit einer Versionsnummer, die folgendermaßen aussieht :

Haupt_Version.Neben_Version

oder

Haupt_Version.Neben_Version.Release_Version

Danach können noch herstellerspezifische Informationen folgen, die je nach Implementation unterschiedlich sind. Allerdings werden diese immer durch ein Leerzeichen von der Versionsnummer abgetrennt.

Hinweise

Wenn ein Fehler wärend der Ausführung von glGetString auftritt, wird immer ein leerer String zurückgegeben.

Client und Server können unterschiedliche Versionen und Erweiterungen unterstützen, glGetString liefert aber immer eine für beide kompatible Versionsnummer und Erweiterungsliste zurück, wobei die Release-Nummer jedoch immer den Server beschreibt.



Fehlermeldungen

GL_INVALID_ENUM wird generiert, wenn name kein gültiger Wert ist.

GL_INVALID_OPERATION wird generiert, wenn glGetString zwischen einem glBegin und einem glEnd aufgerufen wird.