ANGLE_instanced_arrays
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2016年6月.
ANGLE_instanced_arrays是属于 WebGL API 的一个扩展 API,它允许多次绘制相同的对象或相似对象组,前提是它们共享相同的顶点数据、基本图形的个数和类型。WebGL 的扩展都能使用WebGLRenderingContext.getExtension() 这个方法。更多详细信息,请参考 WebGL tutorial(WebGL 使用教程)里的Using Extensions (使用扩展)。
常量
这个扩展提供了一个新常量,它能被 gl.getVertexAttrib() 这个方法所使用:
ext.VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE-
当这个常量在
gl.getVertexAttrib()中作为 pname 参数使用时,将返回一个用于实例渲染的频率因子GLint。
方法
这个扩展提供了三个新的方法。
ext.drawArraysInstancedANGLE()-
作用与
gl.drawArrays()相同,除了元素范围的多实例的执行以及每次迭代时的实例扩展。 ext.drawElementsInstancedANGLE()-
作用与
gl.drawElements()相同,除了元素集中的多实例的计算以及每个集之间的实例扩展。 ext.vertexAttribDivisorANGLE()-
当用
ext.drawArraysInstancedANGLE()和ext.drawElementsInstancedANGLE()渲染基本图元的多实例时,会提升通用的顶点属性的速度。
示例
启用扩展:
js
var ext = gl.getExtension("ANGLE_instanced_arrays");
规范
| Specification |
|---|
| WebGL ANGLE_instanced_arrays Khronos Ratified Extension Specification> |
浏览器兼容性
Loading…