glIsShader.3G man page

glIsShader — Determines if a name corresponds to a shader object

C Specification

GLboolean glIsShader(GLuint shader);



Specifies a potential shader object.


glIsShader returns GL_TRUE if shader is the name of a shader object previously created with glCreateShader() and not yet deleted with glDeleteShader(). If shader is zero or a non-zero value that is not the name of a shader object, or if an error occurs, glIsShader returns GL_FALSE.


No error is generated if shader is not a valid shader object name.

A shader object marked for deletion with glDeleteShader() but still attached to a program object is still considered a shader object and glIsShader will return GL_TRUE.

Associated Gets

glGetAttachedShaders() with a valid program object

glGetShader() with arguments shader and a parameter to be queried

glGetShaderInfoLog() with argument object

glGetShaderSource() with argument object

Version Support

OpenGL Version
Function / Feature Name 2.0 2.1 3.0 3.1 3.2 3.3 4.0 4.1 4.2 4.3 4.4 4.5

See Also

glAttachShader(), glCompileShader(), glCreateShader(), glDeleteShader(), glDetachShader(), glLinkProgram(), glShaderSource()


02/07/2018 [FIXME: source] [FIXME: manual]