2016-03-25 19 views
0

Merhaba çocuklar işe yaramadı ben Theard bu Theard için uygun zaman thee.js her yüzünde 6 dokular koymak istedim:Three.js Küp - Farklı dokular

: Burada Three.js - Using CubeTextureLoader to create a different image on each face of a cube

benim kodudur

scene = new THREE.Scene(); 
    var textureLoader = new THREE.TextureLoader(); 

    var texture0 = textureLoader.load('crate1.gif'); 
    var texture1 = textureLoader.load('crate3.gif'); 
    var texture2 = textureLoader.load('crate4.gif'); 
    var texture3 = textureLoader.load('crate5.gif'); 
    var texture4 = textureLoader.load('crate6.gif'); 
    var texture5 = textureLoader.load('crate7.gif'); 

    var materials = [ 
     new THREE.MeshBasicMaterial({ map: texture0 }), 
     new THREE.MeshBasicMaterial({ map: texture1 }), 
     new THREE.MeshBasicMaterial({ map: texture2 }), 
     new THREE.MeshBasicMaterial({ map: texture3 }), 
     new THREE.MeshBasicMaterial({ map: texture4 }), 
     new THREE.MeshBasicMaterial({ map: texture5 }) 
    ]; 

    var faceMaterial = new THREE.MultiMaterial(materials); 

    var geometry = new THREE.BoxGeometry(20, 20, 20,1,1,1); 
    var mesh = new THREE.Mesh(geometry, faceMaterial); 

    scene.add(mesh); 
    renderer = new THREE.WebGLRenderer(); 

Sayfayı yüklediğimde küp yok; hiçbir şey değil. tek doku ile çalışıp çalışmadığını bu şekilde başlatmak, http://jsfiddle.net/plotnik/8RtTy/3/

ve ardından set:

mesh.material = faceMaterial; 
mesh.material.needsUpdate = true; 

sonra ben tek Doku kullandığınızda Bu

+0

Bu snippet çalışmasını, sizin bunu deneyebilmem için herhangi bir yolla kontrol ediyorum (bunu sunucu örneğinde çalıştırıyorsunuz (sisteminizde diferansiyel yüklemeyi hissediyorsunuz) Bunu deneyin: var texture0 = new THREE.TextureLoader(). Load (' crate1.gif ') var texture1 = new THREE.TextureLoader(). load (' crate3.gif '); var texture2 = yeni THREE.TextureLoader(). load (' crate4.gif '); var texture3 = new THREE.TextureLoader(). load ('crate5.gif'); var texture4 = yeni THREE.TextureLoader(). load ('crate6.gif'); var texture5 = yeni THREE.TextureLoader(). crate7.gif '); –

cevap

0

bu jsfiddle iyi gelebilir ... işleri render() numaralı telefonu arıyor.