WebGLRenderingContext: attachShader() 方法
注意:此功能在 Web Workers 中可用。
WebGLRenderingContext.attachShader() 方法是 WebGL API 的一部分,用於將一個片段著色器或頂點著色器 WebGLShader 附加到一個 WebGLProgram。
語法
js
attachShader(program, shader)
引數
program-
一個
WebGLProgram。 shader-
一個片段著色器或頂點著色器
WebGLShader。
返回值
無(undefined)。
示例
以下程式碼將預先存在的著色器附加到一個 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 new Error(`Could not compile WebGL program. \n\n${info}`);
}
規範
| 規範 |
|---|
| WebGL 規範 # 5.14.9 |
瀏覽器相容性
載入中…
另見
WebGLProgramWebGLShaderWebGLRenderingContext.compileShader()WebGLRenderingContext.createProgram()WebGLRenderingContext.createShader()WebGLRenderingContext.deleteProgram()WebGLRenderingContext.deleteShader()WebGLRenderingContext.detachShader()WebGLRenderingContext.getAttachedShaders()WebGLRenderingContext.getProgramParameter()WebGLRenderingContext.getProgramInfoLog()WebGLRenderingContext.getShaderParameter()WebGLRenderingContext.getShaderPrecisionFormat()WebGLRenderingContext.getShaderInfoLog()WebGLRenderingContext.getShaderSource()WebGLRenderingContext.isProgram()WebGLRenderingContext.isShader()WebGLRenderingContext.linkProgram()WebGLRenderingContext.shaderSource()WebGLRenderingContext.useProgram()WebGLRenderingContext.validateProgram()