查找 WebGLBuffer 的长度 (ELEMENT_ARRAY_BUFFER)

Find the length of a WebGLBuffer (ELEMENT_ARRAY_BUFFER)

我有一个元素数组缓冲区

var index_buffer = gl.createBuffer();
gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER, index_buffer);
gl.bufferData(gl.ELEMENT_ARRAY_BUFFER, new Uint16Array(indices), gl.STATIC_DRAW);

并且我希望能够看到缓冲区的长度,但是index_buffer.length未定义并且WebGLBuffer类型中没有函数来获取项目的长度

如何查看它有多大?

更新:感谢 gman 指出我正在使用它进行调试,如果不使用它,请不要尝试它,获取信息的更好方法

The spec has you covered:

gl.getBufferParameter(gl.ELEMENT_ARRAY_BUFFER, gl.BUFFER_SIZE);

请记住,从 GPU 查询信息的成本很高。