来自WebGL画布的ReadPixels

时间:2017-07-02 10:04:39

标签: webgl

我正在尝试保存使用this page上的WebGL创建的动画。我想将动画的RGBA值作为数组存储在我的硬盘上。因此,我尝试使用readPixels方法访问javascript中的数据以保存它们。但是总是只有零写入数组。

我尝试使用此代码来读取画布c

中的数据
var pixels = new Uint8Array(gl.drawingBufferWidth * gl.drawingBufferHeight * 4);
gl.readPixels(0, 0, gl.drawingBufferWidth, gl.drawingBufferHeight, gl.RGBA, gl.UNSIGNED_BYTE, pixels);

我该如何解决这个问题?还有其他方法可以在我的硬盘上保存画布动画的RGBA数据吗?

1 个答案:

答案 0 :(得分:0)

是否在渲染后直接阅读

render();
gl.readPixels()
或者你正在读一些其他活动吗?如果您正在阅读另一个事件,那么将根据规范清除drawingBuffer。

请参阅:https://stackoverflow.com/a/44534528/128511