--- title: WebGLRenderingContext.bindFramebuffer() slug: Web/API/WebGLRenderingContext/bindFramebuffer tags: - API - Method - Reference - WebGL - WebGLRenderingContext translation_of: Web/API/WebGLRenderingContext/bindFramebuffer ---
WebGL API 的 WebGLRenderingContext.bindFramebuffer()
方法将给定的 {{domxref("WebGLFramebuffer")}} 绑定到目标。
void gl.bindFramebuffer(target, framebuffer);
gl.FRAMEBUFFER
: 收集用于渲染图像的颜色,alpha,深度和模板缓冲区的缓冲区数据存储。gl.DRAW_FRAMEBUFFER
: 相当于gl.FRAMEBUFFER
, 用作绘图,渲染,清除和写入操作。gl.READ_FRAMEBUFFER
: 用作读取操作的资源。None.
如果目标不是 gl.FRAMEBUFFER
,gl.DRAW_FRAMEBUFFER
或 gl.READ_FRAMEBUFFER
,则抛出 gl.INVALID_ENUM
错误。
var canvas = document.getElementById('canvas'); var gl = canvas.getContext('webgl'); var framebuffer = gl.createFramebuffer(); gl.bindFramebuffer(gl.FRAMEBUFFER, framebuffer);
要检查当前帧缓冲区绑定,请查询 FRAMEBUFFER_BINDING
常量。
gl.getParameter(gl.FRAMEBUFFER_BINDING);
Specification | Status | Comment |
---|---|---|
{{SpecName('WebGL', "#5.14.6", "bindFramebuffer")}} | {{Spec2('WebGL')}} | WebGL初始定义. |
{{SpecName('OpenGL ES 2.0', "glBindFramebuffer.xml", "glBindFramebuffer")}} | {{Spec2('OpenGL ES 2.0')}} | OpenGL API手册. |
{{SpecName('WebGL2', "#3.7.1", "bindFrameBuffer")}} | {{Spec2('WebGL2')}} | WebGL 2更新定义. 新增: gl.DRAW_FRAMEBUFFER 和 gl.READ_FRAMEBUFFER |
{{SpecName('OpenGL ES 3.0', "glBindFramebuffer.xhtml", "glBindFramebuffer")}} | {{Spec2('OpenGL ES 3.0')}} | OpenGL ES 3 API手册(类似). |
{{Compat("api/WebGLRenderingContext", "WebGLRenderingContext.bindFramebuffer")}}