glIsShader
3G

# glIsShader

Determines if a name corresponds to a shader object

## C Specification

    		GLboolean glIsShader
    		GLuint shader

## Parameters

`shader`

  Specifies a potential shader object.

## Description

`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`.

## Notes

`glIsShader` is available only if the GL version is 2.0 or greater.

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`.

## Errors

`GL_INVALID_OPERATION` is generated if `glIsShader` is executed between the execution of glBegin and the corresponding execution of glEnd.

## 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`

## See Also

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

## Copyright

Copyright 2003-2005 3Dlabs Inc. Ltd. This material may be distributed subject to the terms and conditions set forth in the Open Publication License, v 1.0, 8 June 1999. http://opencontent.org/openpub/.