我对EffectComposer有疑问/问题。
我想做的事情: 我尝试在多个EffectComposers之间拆分我的App中使用的所有后处理。 我希望能够计算,例如 EffectComposer1 中的5个着色器,然后拍摄该合成器创建的图像,并将其传递回 EffectComposer2 。 EffectComposer1中使用的几何体和纹理都适合(在像素大小方面)在 EffectComposer2 中用作制服。
AFAIK,如果没有效果设置为renderToScreen = true;
,EffectComposers的write / readBuffer应该保存将被渲染到屏幕的纹理。
如果需要更多信息才能解决此问题,请告知我们。
此致 迈克尔
使用three.js r82
答案 0 :(得分:0)
Aaaaaa我们已经完成了!
经过测试并最终在github上创建另一个问题后,我能够解决这个问题。
我现在坚持这个,因为它就像一个绝对的魅力。
这是我用来创建纹理的代码:
var firstOutput = document.getElementById("CanvasOne"); //Get the filled canvas;
var tmpTxt = new THREE.CanvasTexture(firstOutput); //Create the texture;
//Set both min- and magFilter to the correct filtering;
tmpTxt.magFilter = THREE.LinearFilter;
tmpTxt.minFilter = THREE.LinearFilter;
tmpTxt.generateMipmaps = false; //Set this to resolve the image dstortion;
之后,我可以使用tmpTxt
作为制服。