WebGL2RenderingContext: getActiveUniformBlockParameter() 方法

基线 广泛可用

此功能已十分成熟,可在许多设备和浏览器版本中使用。自 2021 年 9 月.

报告反馈

语法

**WebGL2RenderingContext.getActiveUniformBlockParameter()** 方法属于 WebGL 2 API,用于检索 WebGLProgram 中活动统一块的信息。
getActiveUniformBlockParameter(program, uniformBlockIndex, pname)

js

参数

program

包含活动统一块的 WebGLProgram

uniformBlockIndex

一个 GLuint,指定程序中活动统一块的索引。

pname

一个 GLenum,指定要查询的信息。可能的值

gl.UNIFORM_BLOCK_BINDING

返回一个 GLuint,表示统一缓冲区绑定点。

gl.UNIFORM_BLOCK_DATA_SIZE

返回一个 GLuint,表示最小总缓冲区对象大小。

gl.UNIFORM_BLOCK_ACTIVE_UNIFORMS

返回一个 GLuint,表示统一块中活动统一变量的数量。

gl.UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES

返回一个 Uint32Array,表示统一块中活动统一变量的列表。

gl.UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER

返回一个 GLboolean,表示统一块是否被顶点着色器引用。

gl.UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER

返回一个 GLboolean,表示统一块是否被片段着色器引用。

返回值

示例

**WebGL2RenderingContext.getActiveUniformBlockParameter()** 方法属于 WebGL 2 API,用于检索 WebGLProgram 中活动统一块的信息。
const blockSize = gl.getActiveUniformBlockParameter(
  program,
  blockIndex,
  gl.UNIFORM_BLOCK_DATA_SIZE,
);

规范

取决于使用 pname 参数请求的信息。如果发生错误,则返回 null
规范
# 3.7.16

浏览器兼容性

WebGL 2.0 规范

参见