2013-12-23 57 views
0

是否可以去除兩個網格連接的接縫(脖子下)? enter image description hereThree.js去除接縫

還有就是我的負荷模型:

var model = new THREE.Object3D(); 
var jsonLoader = new THREE.JSONLoader(); 
jsonLoader.load("models/one.js", function(geometry, material){ 
    var mesh = new THREE.Mesh(geometry, new THREE.MeshPhongMaterial()); 
    model.add(mesh); 
});  
jsonLoader.load("models/two.js", function(geometry, material){ 
    var mesh = new THREE.Mesh(geometry, new THREE.MeshPhongMaterial()); 
    model.add(mesh); 
    model.scale.set(4,4,4); 
    model.position.y = -3.5; 
    scene.add(model); 
}); 
+0

不,這取決於你的三角形以及它們的排列方式。如果你沒有光滑的表面,渲染器肯定不會爲你平滑。 –

回答

1

看起來像面法線是在兩個網格,他們遇見的邊界非常不同。這就是爲什麼照明在邊界看起來非常不同,因此呈現出類似煤層的外觀。我相信如果你調整你的模型,使邊緣脖子的法線指向相同的方向,以便燈光平穩過渡。讓我與繪製圖像很差證明:

Parallel normals

three.js所將遮陽第一示例,使得光顯示爲尖角,基於法線的方向。其次應該順利。

如何做到這一點取決於用於創建網格的建模軟件。如果您使用Three.js爲您自動生成法線(法線不包含在模型數據中),我不知道如何輕鬆修復它(也許合併幾何,組合共享頂點,然後讓three.js重新生成法線可以工作)。