WebGLRenderingContext.bindFramebuffer()

WebGL APIWebGLRenderingContext.bindFramebuffer() 方法将给定的 WebGLFramebuffer 绑定到目标。

语法

void gl.bindFramebuffer(target, framebuffer);

参数

target

GLenum (en-US) 指定绑定点 (目标)。可能的值为:

  • gl.FRAMEBUFFER: 收集用于渲染图像的颜色,alpha,深度和模板缓冲区的缓冲区数据存储。
  • 当使用 WebGL 2 context 时,可以使用以下值:
    • gl.DRAW_FRAMEBUFFER: 相当于gl.FRAMEBUFFER, 用作绘图,渲染,清除和写入操作。
    • gl.READ_FRAMEBUFFER: 用作读取操作的资源。
framebuffer

要绑定的 WebGLFramebuffer 对象。

返回值

None.

异常

如果目标不是 gl.FRAMEBUFFERgl.DRAW_FRAMEBUFFERgl.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
WebGL Specification
# 5.14.6
WebGL 2.0 Specification
# 3.7.1

浏览器兼容性

BCD tables only load in the browser

另见