Javascript 三.透明度/分歧

Javascript 三.透明度/分歧,javascript,3d,transparency,three.js,Javascript,3d,Transparency,Three.js,我是3HJS新手,我正在尝试制作一个简单的3d模型。 尽管如此,自从我开始玩不透明游戏以来,我遇到了一些透明度/分歧问题 我的代码的重要部分如下: var cylJaun = new THREE.MeshNormalMaterial({color: 0xFFFF00, opacity: 1}); var cylBleu = new THREE.MeshNormalMaterial({color: 0x0000FF, opacity: 0.5 }); var cylJau

我是3HJS新手,我正在尝试制作一个简单的3d模型。 尽管如此,自从我开始玩不透明游戏以来,我遇到了一些透明度/分歧问题

我的代码的重要部分如下:

    var cylJaun = new THREE.MeshNormalMaterial({color: 0xFFFF00, opacity: 1});
    var cylBleu = new THREE.MeshNormalMaterial({color: 0x0000FF, opacity: 0.5 });

    var cylJaun1 = new THREE.Mesh(new THREE.CylinderGeometry(50,50,50,100,1,false),cylJaun);
    var cylJaun2 = new THREE.Mesh(new THREE.CylinderGeometry(50,50,50,100,1,false),cylJaun);
    var cylJaun3 = new THREE.Mesh(new THREE.CylinderGeometry(50,50,50,100,1,false),cylJaun);

    var cylBleu1 = new THREE.Mesh(new THREE.CylinderGeometry(70,70,200,100,1,false),cylBleu);

    cylJaun1.position.y -= 60; 
    cylJaun3.position.y += 60; 

    group.add(cylBleu1);

    group.add(cylJaun1);
    group.add(cylJaun2);
    group.add(cylJaun3);

    scene.add(group);

如您所见,我尝试将3个圆柱体放入第四个圆柱体。问题是,当我的对象在特定范围内旋转时,其中一些圆柱体会消失。

您需要在较大圆柱体的材质中设置
透明:true

var cylBleu = new THREE.MeshNormalMaterial( { transparent: true, opacity: 0.5 } );
如果你是一个初学者,你正在通过实验透明度来深入研究

WebGL的透明度可能很棘手。如果你打算继续沿着这条路走下去,用谷歌疯狂地搜索它,尽你所能了解所涉及的问题,以及如何在three.js中处理这些问题

3.js r.53