2016-11-29 9 views
0

Ich möchte mehrere Geometrien zusammengeführt haben und dann eine Textur anwenden, damit es wie ein echtes Stück Holz aussehen.Holz Textur auf Merge Mesh Geometrie

Ist es möglich? Hier ist, was ich habe für Ergebnis:

Wood

Hier ist, was ich versucht:

var texture = new THREE.TextureLoader().load('Escaliers 3D/1-3-2-5-Bois.jpg'); 
var mesh = [], no = 0; 
var meshes = []; 
var geometry = new THREE.CubeGeometry(2, 10, 1); 
mesh[no] = new THREE.Mesh(geometry); 
meshes.push(mesh[no]); 
no++; 

geometry = new THREE.CylinderGeometry(0.5, 0.5, 10, 32); 
mesh[no] = new THREE.Mesh(geometry); 
mesh[no].position.set(1, 0, 0); 
mesh[no].rotation.x = 0; 
mesh[no].rotation.y = Math.PI/2; 
mesh[no].rotation.z = 0; 
meshes.push(mesh[no]); 
no++; 

geometry = new THREE.CubeGeometry(5, 10, 1); 
mesh[no] = new THREE.Mesh(geometry); 
mesh[no].position.set(-3.5, 0, 0); 
meshes.push(mesh[no]); 
no++; 
geometry = mergeMeshes(meshes); 

var material = new THREE.MeshBasicMaterial({ map: texture }); 
mesh = new THREE.Mesh(geometry, material); 

scene.add(mesh); 

function mergeMeshes (meshes) { 
    var combined = new THREE.Geometry(); 
    for (var i = 0; i < meshes.length; i++) { 
     meshes[i].updateMatrix(); 
     combined.merge(meshes[i].geometry, meshes[i].matrix); 
    } 
    return combined; 
} 

Danke.

+0

Wenn ich richtig verstehe das Bild das Ergebnis aus dem obigen Code, oder? – Marcs

+0

Ja, aber es muss mehr vereinheitlicht werden wie eine echte Holztreppe. –

+0

_unify wie eine echte Holztreppe._ Was meinst du? Sie möchten alle Netze in einem Objekt? – Marcs

Antwort

0

Das Zusammenführen der zwei Netze, die verwendet wurden, um dies zu erstellen, war die Antwort.

Verwandte Themen