The WebGLRenderingContext.createProgram()
method of the WebGL API creates and initializes a WebGLProgram
object.
WebGLProgram gl.createProgram();
None.
A WebGLProgram
object that is a combination of two compiled WebGLShader
s consisting of a vertex shader and a fragment shader (both written in GLSL). These are then linked into a usable program..
var program = gl.createProgram(); // Attach pre-existing shaders gl.attachShader(program, vertexShader); gl.attachShader(program, fragmentShader); gl.linkProgram(program); 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. |
Desktop | ||||||
---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | |
Basic support | 9 | 12 | 4 | 11 | 12 | 5.1 |
Mobile | |||||||
---|---|---|---|---|---|---|---|
Android webview | Chrome for Android | Edge Mobile | Firefox for Android | Opera for Android | iOS Safari | Samsung Internet | |
Basic support | Yes | 25 | Yes | Yes | 12 | 8.1 | Yes |
WebGLRenderingContext.deleteProgram()
WebGLRenderingContext.isProgram()
WebGLRenderingContext.linkProgram()
WebGLRenderingContext.useProgram()
WebGLRenderingContext.validateProgram()
WebGLRenderingContext.getProgramParameter()
WebGLRenderingContext.getProgramInfoLog()
© 2005–2018 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContext/createProgram