WebGLRenderingContext: renderbufferStorage() 方法
注意:此功能在 Web Workers 中可用。
WebGL API 的 WebGLRenderingContext.renderbufferStorage() 方法创建并初始化渲染缓冲对象的数据存储。
语法
js
renderbufferStorage(target, internalFormat, width, height)
参数
目标-
一个
GLenum,指定目标渲染缓冲区对象。可能的值gl.RENDERBUFFER-
为具有可渲染内部格式的单个图像提供缓冲区数据存储。
internalFormat-
一个
GLenum,指定渲染缓冲的内部格式。可能的值gl.RGBA4:4 位红色,4 位绿色,4 位蓝色,4 位 Alpha。gl.RGB565:5 位红色,6 位绿色,5 位蓝色。gl.RGB5_A1:5 位红色,5 位绿色,5 位蓝色,1 位 Alpha。gl.DEPTH_COMPONENT16:16 位深度。gl.STENCIL_INDEX8:8 位模板。gl.DEPTH_STENCIL
使用 WebGL 2 上下文时,还可以使用以下值:
gl.R8gl.R8UIgl.R8Igl.R16UIgl.R16Igl.R32UIgl.R32Igl.RG8gl.RG8UIgl.RG8Igl.RG16UIgl.RG16Igl.RG32UIgl.RG32Igl.RGB8gl.RGBA8gl.SRGB8_ALPHA8(WebGL 1 也可用作扩展,参见下文)gl.RGB10_A2gl.RGBA8UIgl.RGBA8Igl.RGB10_A2UIgl.RGBA16UIgl.RGBA16Igl.RGBA32Igl.RGBA32UIgl.DEPTH_COMPONENT24gl.DEPTH_COMPONENT32Fgl.DEPTH24_STENCIL8gl.DEPTH32F_STENCIL8
使用
WEBGL_color_buffer_float扩展时ext.RGBA32F_EXT:RGBA 32 位浮点类型。ext.RGB32F_EXT:RGB 32 位浮点类型。
使用
EXT_sRGB扩展时ext.SRGB8_ALPHA8_EXT:8 位 sRGB 和 Alpha。
使用 WebGL 2 context 和
EXT_color_buffer_float扩展时gl.R16Fgl.RG16Fgl.RGBA16Fgl.R32Fgl.RG32Fgl.RGBA32Fgl.R11F_G11F_B10F
width-
一个
GLsizei,指定渲染缓冲的宽度(以像素为单位)。 height-
一个
GLsizei,指定渲染缓冲的高度(以像素为单位)。
返回值
无(undefined)。
示例
js
gl.renderbufferStorage(gl.RENDERBUFFER, gl.RGBA4, 256, 256);
规范
| 规范 |
|---|
| WebGL 规范 # 5.14.7 |
| WebGL 2.0 规范 # 3.7.5 |
浏览器兼容性
加载中…