Tips
OpenGL glCreateShaderProgram may provide faster build per-
formance than a sequence of glCompilerShader and
glLinkProgram. However, it only creates a single shader stage
program.
OpenGL
WebGL
OpenGL ES
Not all shader objects need a main() function. Multiple shader
objects can be linked together in the same program to allow shar-
ing the same code between different programs.
OpenGL
WebGL
OpenGL ES
Build all GLSL shaders and programs first, and then query the
results to hide build and query latency.
OpenGL
WebGL
OpenGL ES
Call glDeleteShader after attaching a shader to a program to
simplify cleanup later.
OpenGL Five OpenGL 4.2 functions generate info logs:
• glCompileShader
• glCreateShaderProgram
• glLinkProgram
• glValidateProgram
• glValidateProgramPipeline