WebGLRenderingContext: attachShader() method

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

Note: This feature is available in Web Workers.

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

Syntax

js
attachShader(program, shader)

Parameters

program

A WebGLProgram.

shader

A fragment or vertex WebGLShader.

Examples

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

js
const 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)) {
  const info = gl.getProgramInfoLog(program);
  throw `Could not compile WebGL program. \n\n${info}`;
}

Specifications

Specification
WebGL Specification
# 5.14.9

Browser compatibility

BCD tables only load in the browser

See also