WebGLRenderingContext: createProgram() 方法

基线 广泛可用

此功能已得到良好确立,并在许多设备和浏览器版本中都能正常工作。它自以下时间起在所有浏览器中都可用: 2015 年 7 月.

WebGLRenderingContext.createProgram() 方法是 WebGL API 的一部分,用于创建并初始化一个 WebGLProgram 对象。

语法

js
createProgram()

参数

无。

返回值

一个 WebGLProgram 对象,它是两个已编译的 WebGLShader 的组合,包括一个顶点着色器和一个片段着色器(两者均使用 GLSL 编写)。然后将其链接到一个可用的程序中。

示例

创建 WebGL 程序

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

有关在上述示例中创建 vertexShaderfragmentShader 的信息,请参阅 WebGLShader

规范

规范
WebGL 规范
# 5.14.9

浏览器兼容性

BCD 表格仅在启用 JavaScript 的浏览器中加载。

另请参阅