Graphics Reference
In-Depth Information
You might notice that
glCreateProgram
does not take any arguments; it
simply returns a handle to a new program object. You delete a program
object by using
glDeleteProgram
.
Void
glDeleteProgram
(GLuint
program
)
program
handle to the program object to delete
Once you have a program object created, the next step is to attach shaders
to it. In OpenGL ES 3.0, each program object needs to have one vertex
shader and one fragment shader object attached to it. To attach shaders to
a program, you use
glAttachShader
.
void
glAttachShader
(GLuint
program
, GLuint
shader
)
program
handle to the program object
shader
handle to the shader object to attach to the program
This function attaches the shader to the given program. Note that a shader
can be attached at any point—it does not necessarily need to be compiled
or even have source code before being attached to a program. The only
requirement is that every program object must have one and only one
vertex shader and fragment shader object attached to it. In addition to
attaching shaders, you can detach shaders using
glDetachShader
.
void
glDetachShader
(GLuint
program
, GLuint
shader
)
program
handle to the program object
shader
handle to the shader object to detach from the program
Once the shaders have been attached (and the shaders have been
successfully compiled), we are finally ready to link the shaders together.
Linking a program object is accomplished using
glLinkProgram
.
void
glLinkProgram
(GLuint
program
)
program
handle to the program object to link