We're looking for a person or people to help audit MDN to find places we could speed up. Is this you or someone you know? Check out the RFP: https://mzl.la/2IHcMiE


The WebGLRenderingContext.createProgram() method of the WebGL API creates and initializes a WebGLProgram object.


WebGLProgram gl.createProgram();



Return value

A WebGLProgram object that is a combination of two compiled WebGLShaders consisting of a vertex shader and a fragment shader (both written in GLSL). These are then linked into a usable program..


Creating a WebGL program

var program = gl.createProgram();

// Attach pre-existing shaders
gl.attachShader(program, vertexShader);
gl.attachShader(program, fragmentShader);


if ( !gl.getProgramParameter( program, gl.LINK_STATUS) ) {
  var info = gl.getProgramInfoLog(program);
  throw 'Could not compile WebGL program. \n\n' + info;

See WebGLShader for information on creating the vertexShader and fragmentShader in the above example.


Specification Status Comment
WebGL 1.0
The definition of 'createProgram' in that specification.
Recommendation Initial definition.
OpenGL ES 2.0
The definition of 'glCreateProgram' in that specification.
Standard Man page of the (similar) OpenGL API.

Browser compatibility

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafari
Basic support912411125.1
FeatureAndroid webviewChrome for AndroidEdge mobileFirefox for AndroidIE mobileOpera AndroidiOS Safari
Basic support Yes25 Yes Yes11128.1

See also

Document Tags and Contributors

 Contributors to this page: fscholz, nmve, teoli
 Last updated by: fscholz,