WebGLRenderingContext.attachShader()
WebGL API の WebGLRenderingContext.attachShader() メソッドは、フラグメントか頂点のどちらかの WebGLShader
を WebGLProgram
にアタッチします。
構文
void gl.attachShader(program, shader);
引数
program
WebGLProgram
。shader
- フラグメントか頂点の
WebGLShader
。
例
以下は既存のシェーダーを 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;
}
仕様策定状況
仕様 | 策定状況 | コメント |
---|---|---|
WebGL 1.0 attachShader の定義 |
勧告 | 初回定義。 |
OpenGL ES 2.0 glAttachShader の定義 |
標準 | OpenGL マニュアルページ。 |
ブラウザーの対応
BCD tables only load in the browser
The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
関連項目
WebGLProgram
WebGLShader
WebGLRenderingContext.attachShader()
WebGLRenderingContext.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()