因此,我将场景呈现到纹理中,然后需要处理js中的纹理,或者修改内容,或者从值数组中生成新的纹理。
似乎我需要直接获得WebGL上下文和与WebGL的接口来完成这一任务。有人知道最好的方法吗?
发布于 2015-07-12 11:00:31
最后,我从呈现器获取webGL上下文,并调用gl.readPixels()
var gl = renderer.getContext();
var framebuffer = renderTarget.__webglFramebuffer;
gl.bindFramebuffer(gl.FRAMEBUFFER, framebuffer);
var data = new Uint8Array(renderTarget.width * renderTarget.height * 4);
gl.readPixels(0,0,renderTarget.width,renderTarget.heigh,gl.RGBA,gl.UNSIGNED_BYTE,data);
(renderTarget是THREE.WebGLRenderTarget的一个实例)
https://stackoverflow.com/questions/31363690
复制