this.canvas = document.createElement('canvas');
this.canvas.width = 256;
this.canvas.height = 256;
this.context = this.canvas.getContext('2d');
通过readRenderTargetPixels 读取 纹理数据:
const data = new Uint8Array(256 * 256 * 4);
renderer.readRenderTargetPixels(this.textureRenderTarget, 0, 0, 256, 256, data);
通过 canvas 的 context 设置数据
var imageData = this.context.createImageData(256, 256);
imageData.data.set(data);
this.context.putImageData(imageData, 0, 0);
通过canvas 到纹理
this.loader = new THREE.TextureLoader();
var texture = this.loader.load(this.canvas.toDataURL());
然后就得到了 含有canvas变量的纹理。