2012-12-10 4 views
5

three.js r53에 대해 다음 코드를 확인할 수 있습니까? How to use multiple materials in a Three.js cube?three.js 큐브를 사용하여 여러 텍스처 사용 확인

가이 코드와 몇 가지 변화를 시도하지만 난 볼 큐브를하지 않습니다

이 질문에서 가져온 것. 내 텍스처 이미지의 이름이 있어야합니다.

var materials = []; 

for (var i=0; i<6; i++) { 
    var img = new Image(); 
    img.src = i + '.png'; 
    var tex = new THREE.Texture(img); 
    img.tex = tex; 

    img.onload = function() { 
     this.tex.needsUpdate = true; 
    }; 

    var mat = new THREE.MeshBasicMaterial({color: 0xffffff, map: tex}); 
    materials.push(mat); 
} 

var cubeGeo = new THREE.CubeGeometry(400, 400, 400, 1, 1, 1, materials); 
var cube = new THREE.Mesh(cubeGeo, new THREE.MeshFaceMaterial()); 

답변

16

대신이 작업을 수행하지 않습니다 https://github.com/mrdoob/three.js/wiki/Migration :

var cubeGeo = new THREE.BoxGeometry(400, 400, 400, 1, 1, 1); 
var cube = new THREE.Mesh(cubeGeo, new THREE.MeshFaceMaterial(materials)); 

는 마이그레이션 위키를 참조하십시오.

EDIT : CubeGeometry가 r.67

three.js를
+0

는 또한 CubeGeometry가 BoxGeometry (R66) – imcg

+0

@imcg 입어 변경 BoxGeometry

로 변경되었다. 업데이트 된 답변. – WestLangley

0

THREE.CubeGeometry()는 재료 목록을 지원하지 않습니다. 나는 너무했다 생각했지만, 현재 소스 코드를 확인하면 .... 그것은

관련 문제