2013-12-14 24 views
0

我在three.js所創造一個體育館這樣的:問題與繪製球體的一半three.js所

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

我沒有正確繪製球體:

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); 
1
  1. 的事情是,即使你畫半個球體,我懷疑它會被正確放置的UV,所以我非常建議您使用自定義網格,以使自己的體育館。

  2. 對於天穹,您可以使用mesh.material.side = THREE.BackSide而不是.DoubleSide,順便說一句,除非您始終保持表面。

+0

1.正如你可以看到我創建的自定義使用球體爲我網的幾何形狀。問題是爲什麼它關閉了底部,而不是保持開放。 2.我想使用THREE.DoubleSide –