WebGL2RenderingContext.drawBuffers()

这篇翻译不完整。请帮忙从英语翻译这篇文章

这是一个实验中的功能
此功能某些浏览器尚在开发中,请参考浏览器兼容性表格以得到在不同浏览器中适合使用的前缀。由于该功能对应的标准文档可能被重新修订,所以在未来版本的浏览器中该功能的语法和行为可能随之改变。

WebGL 2 APIWebGL2RenderingContext.drawBuffers()  方法定义了将写入零散数据(fragment colors)的绘制缓存(draw buffer)。绘制缓存设置了上一次绑定帧缓存状态,如果没有帧缓存可用的话,则用绘制缓存。

语法

void gl.drawBuffers(buffers);

参数

buffers
一个 GLenumArray} 对碎片颜色的说明将被写入缓冲区。可能的值有:
  • gl.NONE: 碎片着色器的输出没有被写入到任何颜色缓存中。
  • gl.BACK: 碎片着色器的输出被写入到返回的颜色缓存中。
  • gl.COLOR_ATTACHMENT{0-15}: 碎片着色器的输出被写入当前帧缓存的第n个颜色缓存中。Fragment shader output is written in the nth color attachment of the current framebuffer.

返回值

没有。

报错信息

  • 如果 buffers 包含了不止一个合法值,  gl.INVALID_ENUM错误会被跑出

例子

gl.drawBuffers([gl.NONE, gl.COLOR_ATTACHMENT1]);

详情

详情 状态 用法(Comment)
WebGL 2.0
drawBuffers
Editor's Draft Initial definition for WebGL.
OpenGL ES 3.0
glDrawBuffers
Standard Man page of the (similar) OpenGL API.

浏览器兼容性

No compatibility data found. Please contribute data for "api/WebGL2RenderingContext" (depth: WebGL2RenderingContext.drawBuffers) to the MDN compatibility data repository.

详见

文档标签和贡献者

此页面的贡献者: vento_of_the_front
最后编辑者: vento_of_the_front,