glGetString — return a string describing the current GL connection
const GLubyte *glGetString (GLenum name);
Specifies a symbolic constant, one of GL_VENDOR
, GL_RENDERER
, GL_VERSION
,
GL_SHADING_LANGUAGE_VERSION
, or GL_EXTENSIONS
.
glGetString returns a pointer to a static string describing some aspect of the current GL connection. name can be one of the following:
Returns the company responsible for this GL implementation. This name does not change from release to release.
Returns the name of the renderer. This name is typically specific to a particular configuration of a hardware platform. It does not change from release to release.
Returns a version or release number.
Returns a version or release number for the shading language.
Returns a space-separated list of supported extensions to GL.
Because the GL does not include queries for the performance characteristics of an implementation, some applications are written to
recognize known platforms and modify their GL usage based on known performance characteristics of these platforms. Strings
GL_VENDOR
and GL_RENDERER
together uniquely specify a platform. They do not change from release to release and
should be used by platform-recognition algorithms.
Some applications want to make use of features that are not part of the standard GL. These features may be implemented as extensions to the
standard GL. The GL_EXTENSIONS
string is a space-separated list of supported GL extensions. (Extension names never contain a
space character.)
The GL_VERSION
and GL_SHADING_LANGUAGE_VERSION
strings begin with a version number. The version number uses one
of these forms:
major_number.minor_number major_number.minor_number.release_number
Vendor-specific information may follow the version number. Its format depends on the implementation, but a space always separates the version number and the vendor-specific information.
All strings are null-terminated.
If an error is generated, glGetString returns 0.
The client and server may support different versions or extensions. glGetString always returns a compatible version number or list of extensions. The release number always describes the server.
GL_SHADING_LANGUAGE_VERSION
is available only if the GL version is 2.0 or greater.
GL_INVALID_ENUM
is generated if name is not an accepted value.
GL_INVALID_OPERATION
is generated if glGetString is executed between the execution of glBegin and the
corresponding execution of glEnd.