string = gl.GetString(name)
gl.GetString()
gibt einen Zeiger auf eine statische Zeichenkette zurück, die
einen Aspekt der aktuellen GL-Anbindung beschreibt. Der Name kann eine der
folgenden Konstanten sein:
#GL_VENDOR
#GL_RENDERER
#GL_VERSION
#GL_EXTENSIONS
Da GL keine Abfragen nach den Leistungsmerkmalen einer Implementierung
beinhaltet, werden einige Anwendungen geschrieben, um bekannte Plattformen
zu erkennen und ihre GL-Nutzung basierend auf den bekannten Leistungsmerkmalen
dieser Plattformen zu ändern. Die Zeichenketten #GL_VENDOR
und #GL_RENDERER
zusammen geben eine Plattform eindeutig an. Sie wechseln nicht von
Veröffentlichung zu Veröffentlichung und sollten von
Plattform-Erkennungsalgorithmen verwendet werden.
Einige Anwendungen wollen Funktionen nutzen, die nicht zum Standard-GL
gehören. Diese Funktionen können als Erweiterung des Standard-GL
implementiert werden. Die Zeichenkette #GL_EXTENSIONS
ist eine durch
Leerzeichen getrennte Liste der unterstützten GL-Erweiterungen.
(Erweiterungsnamen enthalten nie ein Leerzeichen.)
Die Zeichenkette #GL_VERSION
beginnt mit einer Versionsnummer.
Die Versionsnummer verwendet eines dieser Formen:
<major_number>.<minor_number> <major_number>.<minor_number>.<release_number> |
Anbieterspezifische Informationen können der Versionsnummer folgen. Sein Format hängt von der Implementierung ab, aber ein Leerzeichen trennt immer die Versionsnummer und die herstellerspezifischen Informationen.
Der Klient und der Server können verschiedene Versionen oder Erweiterungen
unterstützen. gl.GetString()
gibt immer eine kompatible Versionsnummer
oder eine Liste von Erweiterungen zurück. Die Veröffentlichungs-Nummer
beschreibt immer den Server.
Weitere Informationen finden Sie in einem OpenGL-Referenzhandbuch.
#GL_INVALID_ENUM
wird erzeugt, wenn name
kein akzeptierter Wert ist.
#GL_INVALID_OPERATION
wird erzeugt, wenn gl.GetString()
zwischen
gl.Begin() und gl.End() ausgeführt wird.