我在整个互联网上搜索并尝试了很多方法,但是没有结果...如何消除纹理透明度错误?请查看图片。
所以,在3dsmax中模型看起来还不错。我使用Python脚本将其从.obj格式转换为.js格式,以便.png文件具有透明度(.obj无法实现透明度)。
如何解决我的问题?谢谢。
var loader = new THREE.JSONLoader();
loader.load('tree_model.js', function(geometry, materials) {
var material = new THREE.MeshFaceMaterial(materials);
var object = new THREE.Mesh(geometry, material);
object.traverse( function ( child ) {
if ( child.material instanceof THREE.MeshPhongMaterial ) {
// this code is unattainable, but anyway without if (..) it does not work
child.material.alphaTest = 0.5;
child.material.depthWrite = false;
child.material.depthTest = false;
child.material.side = THREE.BackSide;
child.material.transparent = true;
}
});
scene.add(object);
});
});
和渲染器:
renderer = new THREE.WebGLRenderer({ antialias: true, alpha: true, premultipliedAlpha: true });
alphaTest
。 - gaitat