WebGL2RenderingContext: framebufferTextureLayer() 方法

Baseline 已广泛支持

此功能已成熟,并可在多种设备和浏览器版本上运行。自 2021 年 9 月起,所有浏览器均已支持此功能。

注意:此功能在 Web Workers 中可用。

WebGL2RenderingContext.framebufferTextureLayer() 方法属于 WebGL 2 API,它将纹理的单个图层附加到帧缓冲区。

此方法类似于 WebGLRenderingContext.framebufferTexture2D(),但只将纹理级别中给定的单个图层附加到附件点。

语法

js
framebufferTextureLayer(target, attachment, texture, level, layer)

参数

目标

一个 GLenum,指定绑定点(目标)。可能的值

  • gl.FRAMEBUFFER: 用于渲染图像的颜色、Alpha、深度和模板缓冲区的集合缓冲区数据存储。
  • gl.DRAW_FRAMEBUFFER: 等同于 gl.FRAMEBUFFER
  • gl.READ_FRAMEBUFFER: 用作读取操作的源。
attachment

一个 GLenum,指定 texture 的附件点。可能的值

  • gl.COLOR_ATTACHMENT{0-15}: 将纹理附加到帧缓冲区的颜色缓冲区之一。
  • gl.DEPTH_ATTACHMENT: 将纹理附加到帧缓冲区的深度缓冲区。
  • gl.STENCIL_ATTACHMENT: 将纹理附加到帧缓冲区的模板缓冲区。
  • gl.DEPTH_STENCIL_ATTACHMENT: 深度和模板缓冲区。
texture

一个 WebGLTexture 对象,包含要附加的图像。

level

一个 GLint,指定要附加的纹理图像的 mipmap 级别。

layer

一个 GLint,指定要附加的纹理图像的图层。

返回值

无(undefined)。

示例

js
gl.framebufferTextureLayer(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, texture, 0, 8);

规范

规范
WebGL 2.0 规范
# 3.7.4

浏览器兼容性

另见