WebGLRenderingContext:getVertexAttrib() 方法
WebGLRenderingContext.getVertexAttrib()
方法是 WebGL API 的一部分,它返回有关给定位置的顶点属性的信息。
语法
js
getVertexAttrib(index, pname)
参数
index
-
一个
GLuint
,指定顶点属性的索引。 pname
-
一个
GLenum
,指定要查询的信息。可能的取值:gl.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING
-
返回当前绑定的
WebGLBuffer
。 gl.VERTEX_ATTRIB_ARRAY_ENABLED
-
返回一个
GLboolean
,如果在此index
处启用了顶点属性,则为true
,否则为false
。 gl.VERTEX_ATTRIB_ARRAY_SIZE
-
返回一个
GLint
,表示顶点数组元素的大小。 gl.VERTEX_ATTRIB_ARRAY_STRIDE
-
返回一个
GLint
,表示数组中连续元素之间的字节数。0 表示元素是连续的。 gl.VERTEX_ATTRIB_ARRAY_TYPE
-
返回一个
GLenum
,表示数组类型。其中之一:gl.BYTE
gl.UNSIGNED_BYTE
gl.SHORT
,gl.UNSIGNED_SHORT
gl.FLOAT
gl.VERTEX_ATTRIB_ARRAY_NORMALIZED
-
返回一个
GLboolean
,如果在给定index
处的顶点属性数组对定点数据类型进行了规范化,则为 true。 gl.CURRENT_VERTEX_ATTRIB
-
返回一个
Float32Array
(包含 4 个元素),表示给定index
处顶点属性的当前值。
当使用 WebGL 2 上下文 时,以下值也可以使用:
gl.VERTEX_ATTRIB_ARRAY_INTEGER
-
返回一个
GLboolean
,指示在给定index
处的顶点属性数组中是否使用了整数数据类型。 gl.VERTEX_ATTRIB_ARRAY_DIVISOR
-
返回一个
GLint
,描述用于实例化渲染的频率除数。
当使用
ANGLE_instanced_arrays
扩展时:ext.VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE
-
返回一个
GLint
,描述用于实例化渲染的频率除数。
返回值
返回请求的顶点属性信息(如使用 pname
指定的)。
示例
js
gl.getVertexAttrib(0, gl.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING);
规范
规范 |
---|
WebGL 规范 # 5.14.10 |
WebGL 2.0 规范 # 3.7.8 |
浏览器兼容性
BCD 表仅在启用 JavaScript 的浏览器中加载。