WebGLRenderingContext: linkProgram() 方法

Baseline 已广泛支持

此特性已相当成熟,可在许多设备和浏览器版本上使用。自 ⁨2015 年 7 月⁩以来,各浏览器均已提供此特性。

注意:此功能在 Web Workers 中可用。

WebGLRenderingContext 接口的 linkProgram() 方法会链接一个给定的 WebGLProgram,从而完成为程序的片元着色器和顶点着色器准备 GPU 代码的过程。

语法

js
linkProgram(program)

参数

program

需要链接的 WebGLProgram

返回值

无(undefined)。

示例

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 new Error(`Could not compile WebGL program. \n\n${info}`);
}

规范

规范
WebGL 规范
# 5.14.9

浏览器兼容性

另见