WebGLRenderingContext: framebufferRenderbuffer() 方法
基线 广泛可用
此功能已得到很好的建立,并且可以在许多设备和浏览器版本中使用。它自 2015 年 7 月.
报告反馈
语法
WebGLRenderingContext.framebufferRenderbuffer()
方法是 WebGL API 的一个方法,它将一个 WebGLRenderbuffer
对象附加到一个 WebGLFramebuffer
对象。framebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer)
js
参数
-
target
一个
GLenum
,指定帧缓冲区的绑定点(目标)。可能的取值-
gl.FRAMEBUFFER
用于渲染图像的颜色、alpha、深度和模板缓冲区的集合缓冲区数据存储。
在使用 WebGL 2 上下文 时,以下取值可供额外使用
-
gl.DRAW_FRAMEBUFFER
等效于
gl.FRAMEBUFFER
。用作绘制、渲染、清除和写入操作的目标。-
gl.READ_FRAMEBUFFER
用作读取操作的来源。
-
attachment
- 一个
GLenum
,指定渲染缓冲区的附加点。可能的取值 gl.COLOR_ATTACHMENT0
:颜色缓冲区。gl.DEPTH_ATTACHMENT
:深度缓冲区。gl.DEPTH_STENCIL_ATTACHMENT
:深度和模板缓冲区。
用于渲染图像的颜色、alpha、深度和模板缓冲区的集合缓冲区数据存储。
gl.STENCIL_ATTACHMENT
:模板缓冲区。
gl.COLOR_ATTACHMENT1 gl.COLOR_ATTACHMENT2 gl.COLOR_ATTACHMENT3 gl.COLOR_ATTACHMENT4 gl.COLOR_ATTACHMENT5 gl.COLOR_ATTACHMENT6 gl.COLOR_ATTACHMENT7 gl.COLOR_ATTACHMENT8 gl.COLOR_ATTACHMENT9 gl.COLOR_ATTACHMENT10 gl.COLOR_ATTACHMENT11 gl.COLOR_ATTACHMENT12 gl.COLOR_ATTACHMENT13 gl.COLOR_ATTACHMENT14 gl.COLOR_ATTACHMENT15
-
在使用
WEBGL_draw_buffers
扩展时 ext.COLOR_ATTACHMENT0_WEBGL
(与gl.COLOR_ATTACHMENT0
相同)
- 一个
ext.COLOR_ATTACHMENT1_WEBGL ext.COLOR_ATTACHMENT2_WEBGL ext.COLOR_ATTACHMENT3_WEBGL ext.COLOR_ATTACHMENT4_WEBGL ext.COLOR_ATTACHMENT5_WEBGL ext.COLOR_ATTACHMENT6_WEBGL ext.COLOR_ATTACHMENT7_WEBGL ext.COLOR_ATTACHMENT8_WEBGL ext.COLOR_ATTACHMENT9_WEBGL ext.COLOR_ATTACHMENT10_WEBGL ext.COLOR_ATTACHMENT11_WEBGL ext.COLOR_ATTACHMENT12_WEBGL ext.COLOR_ATTACHMENT13_WEBGL ext.COLOR_ATTACHMENT14_WEBGL ext.COLOR_ATTACHMENT15_WEBGL
-
renderbuffertarget
一个
GLenum
,指定渲染缓冲区的绑定点(目标)。可能的取值-
gl.RENDERBUFFER
用于在可渲染的内部格式中存储单个图像的缓冲区数据存储。
-
renderbuffer
要附加的 WebGLRenderbuffer
对象。
返回值
无 (undefined
)。
- 异常
- 如果
target
不是gl.FRAMEBUFFER
、gl.DRAW_FRAMEBUFFER
或gl.READ_FRAMEBUFFER
,则会抛出gl.INVALID_ENUM
错误。 - 如果
renderbuffertarget
不是gl.RENDERBUFFER
,则会抛出gl.INVALID_ENUM
错误。
示例
WebGLRenderingContext.framebufferRenderbuffer()
方法是 WebGL API 的一个方法,它将一个 WebGLRenderbuffer
对象附加到一个 WebGLFramebuffer
对象。gl.framebufferRenderbuffer(
gl.FRAMEBUFFER,
gl.COLOR_ATTACHMENT0,
gl.RENDERBUFFER,
renderbuffer,
);
规范
如果 attachment 不是允许的枚举值之一,则会抛出 gl.INVALID_ENUM 错误。 |
---|
规范 # 5.14.6 |
浏览器兼容性
WebGL 规范
另请参阅
并在启用 JavaScript 时加载。启用 JavaScript 以查看数据。
WebGLRenderingContext.createFramebuffer()
WebGLRenderingContext.deleteFramebuffer()
- WebGLRenderingContext.isFramebuffer()
WEBGL_draw_buffers