単純な状態変数を取得するためのクエリ関数が 4 つあり、特定の状態が有効か無効かを判断するためのクエリ関数が 1 つあります。
クエリ関数のプロトタイプは次のとおりです。
void glGetBooleanv(GLenum pname , GLboolean * params );
void glGetIntegerv(GLenum pname , GLint * params );
void glGetFloatv(GLenum pname , GLfloat * params );
void glGetDoublev(GLenum pname , GLdouble * params );
クエリ関数はそれぞれ、ブール値、整数、浮動小数点数、または倍精度の状態変数を取得します。 pname パラメータは返される状態変数を示すシンボリック定数であり、 params は返されるデータを配置する指定された型の配列へのポインタです。 pname に使用できる値は、 OpenGL 状態変数にリストされています。 必要に応じて型変換が実行され、目的の変数が要求されたデータ型として返されます。
glIsEnabled のプロトタイプは次のとおりです。
GLboolean glIsEnabled(GLenum cap );
cap で指定されたモードが有効な場合、 glIsEnabled は GL_TRUE を返します。 cap で指定されたモードが無効の場合、 glIsEnabled は GL_FALSE を返します。 cap に指定できる値は、 OpenGL 状態変数に記載されています。
その他の特殊な関数は特定の状態変数を返します。 これらの関数をいつ使用するかについては、OpenGL 状態変数と OpenGL リファレンス マニュアルを参照してください。 OpenGL のエラー処理機能と glGetError 関数の詳細については、 エラー処理を参照してください。
特定の状態変数を返す関数は次のとおりです。
- glGetClipPlane
- glGetError
- glGetLight
- glGetMap
- glGetMaterial
- glGetPixelMap
- glGetPolygonStipple
- glGetString
- glGetTexEnv
- glGetTexGen
- glGetTexImage
- glGetTexLevelParameter
- glGetTexParameter