WebGLRenderingContext.attachShader()

The WebGLRenderingContext.attachShader() method of the WebGL API attaches either a fragment or vertex WebGLShader to a WebGLProgram.

Syntax

void gl.attachShader(program, shader);

Parameters

program
A WebGLProgram.
shader
A fragment or vertex WebGLShader.

Examples

The following code attaches pre-existing shaders to a WebGLProgram.

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;
}

Specifications

Specification Status Comment
WebGL 1.0
The definition of 'attachShader' in that specification.
Recommendation Initial definition.
OpenGL ES 2.0
The definition of 'glAttachShader' in that specification.
Standard OpenGL man page.

Browser compatibility

Update compatibility data on GitHub
DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidEdge MobileFirefox for AndroidOpera for AndroidiOS SafariSamsung Internet
Basic supportChrome Full support 9Edge Full support 12Firefox Full support 4IE Full support 11Opera Full support 12Safari Full support 5.1WebView Android Full support YesChrome Android Full support 25Edge Mobile Full support YesFirefox Android Full support YesOpera Android Full support 12Safari iOS Full support 8.1Samsung Internet Android Full support Yes

Legend

Full support  
Full support

See also

Document Tags and Contributors

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