WebGL:使用带有BufferData的JS Blob

时间:2015-11-12 02:25:34

标签: javascript websocket webgl

我有一个Blob对象(通过二进制websocket接收),我想使用gl.BufferData()上传到GPU。只是将Blob对象传递给gl.BufferData()会产生错误

WebGL: INVALID_VALUE: bufferData: size == 0

Blob的大小不是0.我做错了什么?

1 个答案:

答案 0 :(得分:0)

我自己找到了答案,诀窍是使用FileReader对象:

var reader = new FileReader();
reader.onload = function(e) {
    gl.bufferData(gl.ARRAY_BUFFER, reader.result, gl.DYNAMIC_DRAW);
}
reader.readAsArrayBuffer(data);