The WebGLRenderingContext.validateProgram() method of the WebGL API validates a WebGLProgram. It checks if it is successfully linked and if it can be used in the current WebGL state.
void gl.validateProgram(program);
WebGLProgram to validate.None.
var program = gl.createProgram();
// Attach pre-existing shaders
gl.attachShader(program, vertexShader);
gl.attachShader(program, fragmentShader);
gl.linkProgram(program);
gl.validateProgram(program);
if ( !gl.getProgramParameter( program, gl.LINK_STATUS) ) {
var info = gl.getProgramInfoLog(program);
throw 'Could not compile WebGL program. \n\n' + info;
}
gl.useProgram(program);
| Specification | Status | Comment |
|---|---|---|
| WebGL 1.0 The definition of 'validateProgram' in that specification. | Recommendation | Initial definition. |
| OpenGL ES 2.0 The definition of 'glValidateProgram' in that specification. | Standard | Man page of the 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.createProgram()WebGLRenderingContext.deleteProgram()WebGLRenderingContext.isProgram()WebGLRenderingContext.linkProgram()WebGLRenderingContext.useProgram()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/validateProgram