我正在尝试渲染为具有alpha的纹理,并在场景顶部渲染该纹理。尽管纹理的背景不是透明的,但清晰的颜色呈现在场景上。
我用alpha:true创建了渲染器,透明色的alpha为0,纹理的格式为RGBA
我想念什么?
//creating the texture
rtTexture = new THREE.WebGLRenderTarget( window.innerWidth,
window.innerHeight, { minFilter: THREE.LinearFilter,
magFilter: THREE.NearestFilter, format: THREE.RGBAFormat } );
//creating renderer
renderer = new THREE.WebGLRenderer({ alpha: true });
renderer.setSize( window.innerWidth, window.innerHeight );
renderer.autoClear = false;
//textured quad
var quad = new THREE.PlaneBufferGeometry(camSize,camSize/aspect);
var mat = new THREE.MeshBasicMaterial({map:rtTexture,
depthWrite:false, depthTest: false});
var quadOb = new THREE.Mesh(quad, mat);
//rendering
renderer.setClearColor(0x000000, 0);
renderer.render(sceneTorus, camera, rtTexture, true);
renderer.render(sceneTet, cameraRTT, null, true);
renderer.render(sceneQuad, cameraRTT, null, false);
quadOb.material.transparent = true;
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句