我正在以三个.js创建一个skydome:
var geometry = new THREE.SphereGeometry( 40, 32, 15, 1*Math.PI/2, 2*Math.PI, Math.PI, Math.PI);
var material = new THREE.MeshBasicMaterial( { color: 0xddddff } );
mesh = new THREE.Mesh( geometry, material );
mesh.material.side = THREE.DoubleSide;
scene.add( mesh );
这确实绘制了一半球体,但它也为我预期打开的部分着色(它为我需要天幕的网格表面着色)。我该如何解决这个问题?
答案 0 :(得分:1)
问题是,即使你画了半个球体,我怀疑它会正确地放置UV,所以我建议你使用自定义网格制作自己的天幕。
对于天幕,您可以使用 mesh.material.side = THREE.BackSide 而不是.DoubleSide,顺便说一句,除非您一直留在表面。
答案 1 :(得分:0)
我没有正确地绘制球体:
var geometry = new THREE.SphereGeometry( 50, 60, 60, Math.PI, Math.PI, 3*Math.PI/2);
var material = new THREE.MeshBasicMaterial( { color: 0xddddff } );
mesh = new THREE.Mesh( geometry, material );
mesh.material.side = THREE.DoubleSide;
scene.add( mesh );