我想在背景上渲染纹理,在前景中渲染3dscene。我使用了effectcomposer来做到这一点。
我的第一遍(背景)似乎是"覆盖"第二遍(场景)结果只有场景用黑色背景绘制。看起来第二遍的背景不是透明的,也不会透明。
http://jsfiddle.net/mdwzx1f8/8/
var renderTex = new THREE.TexturePass(myTex);
var renderScene = new THREE.RenderPass(scene, camera);
composer.addPass(renderTex);
composer.addPass(renderScene);
var effectCopy = new THREE.ShaderPass(THREE.CopyShader);
effectCopy.renderToScreen = true;
composer.addPass(effectCopy);
我希望有人可以快速浏览一下并指出我正确的方向
提前致谢
更新
2015年7月7日
我尝试使用renderer.clear清除zbuffer(false,true,false);
我发现了一个关于屏蔽的帖子,但是它没有添加到
据我所知,三个人
https://github.com/mrdoob/three.js/issues/2448
2015年8月7日
答案 0 :(得分:1)
Bobjett在threejs irc频道帮助我,他找到了我的问题,结果我打电话给:
renderer.autoClear = false;
而是在renderer.autoClearColor = false;
这是修改后的工作小提琴: http://jsfiddle.net/mdwzx1f8/9/
我要感谢所有帮助我寻找解决方案的人