La méthode WebGLRenderingContext.attachShader() de l'API WebGL attache un WebGLShader
de fragment ou de sommet à un WebGLProgram
.
Syntaxe
void gl.attachShader(programme, shader);
Paramètres
programme
- Un
WebGLProgram
. shader
- Un
WebGLShader
de fragment ou de sommet.
Exemples
Le code suivant attache des shaders pré-existants à un WebGLProgram
.
var programme = gl.createProgram();
// Attacher des shaders pré-existants
gl.attachShader(programme, shaderDeSommet);
gl.attachShader(programme, shaderDeFragment);
gl.linkProgram(programme);
if ( !gl.getProgramParameter( programme, gl.LINK_STATUS) ) {
var info = gl.getProgramInfoLog(programme);
throw 'Impossible de compiler le program WebGL. \n\n' + info;
}
Spécifications
Spécification | Statut | Commentaire |
---|---|---|
WebGL 1.0 La définition de 'attachShader' dans cette spécification. |
Recommendation | Définition initiale. |
OpenGL ES 2.0 La définition de 'glAttachShader' dans cette spécification. |
Standard | Page man OpenGL. |
Compatibilité des navigateurs
BCD tables only load in the browser
La table de compatibilité fans this page est générée à partir de données structurées. Si vous souahaitez contribuer aux données, merci de regarder sur https://github.com/mdn/browser-compat-data et de nous envoyer une pull request.
Voir aussi
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()