WebGLRenderingContext.detachShader() - Web API 接口参考 编辑
WebGL API 的WebGLRenderingContext.detachShader() 方法:从一个 WebGLProgram
中分离一个先前附加的片段或者顶点着色器 (WebGLShader
) .
Syntax
void gl.detachShader(program, shader);
Parameters
program
- 一个
WebGLProgram
对象. shader
- 一个顶点或者片元着色器
WebGLShader
.
Specifications
Specification | Status | Comment |
---|---|---|
WebGL 1.0 detachShader | Recommendation | Initial definition. |
OpenGL ES 2.0 glDetachShader | Standard | OpenGL man page. |
例子
使用detachShader方法分离一个顶点或片元着色器
//顶点着色器 var vertexShader = gl.createShader(gl.VERTEX_SHADER); gl.shaderSource(vertexShader, vertexSrc); gl.compileShader(vertexShader); //片元着色器 var fragmentShader = gl.createShader(gl.FRAGMENT_SHADER);//创建 WebGLShader。 gl.shaderSource(fragmentShader, fragmentSrc); //fragmentSrc设置一个 WebGLShader 的源码。 gl.compileShader(fragmentShader); //WebGLProgram var program = gl.createProgram();//创建 WebGLProgram gl.attachShader(program, vertexShader); //往 WebGLProgram 添加一个片段或者顶点着色器。 gl.attachShader(program, fragmentShader); gl.linkProgram(program);//链接给入的 WebGLProgram 对象 gl.detachShader(program, vertexShader); //从一个WebGLProgram中分离一个先前附加的片段或者顶点着色器; gl.detachShader(program, fragmentShader); gl.deleteShader(vertexShader); gl.deleteShader(fragmentShader);
Browser compatibility
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.
See also
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()
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论