2013-07-01 4 views
1

Я новичок в three.js, и то, что я сделал до сих пор: смоделируйте геометрию в Blender, экспортируйте ее в JSON и поместите в мою сцену three.js. Он отлично работает с основными материалами three.js. Теперь я хочу загрузить цветовую, зеркальную и нормальную карту в мою геометрию. Но каждый раз, когда я пытаюсь добавить только одну текстуру, геометрия исчезает в браузере.Загрузка текстур в three.js

Вот мой код:

var jsonLoader = new THREE.JSONLoader(); 
    jsonLoader.load("models/schuh.js", addModelToScene); 

    var texture = new THREE.ImageUtils.loadTexture("images/test_COL.jpg"); 

    var ambientLight = new THREE.AmbientLight(0x111111); 
    scene.add(ambientLight); 

} 

function addModelToScene(geometry, materials) 
{ 

    var material = new THREE.MeshBasicMaterial(map:texture}); 
    mesh = new THREE.Mesh(geometry, material); 
    mesh.scale.set(50,50,50); 
    scene.add(mesh); 
} 

, что я сделал не так?

ответ

1

Похоже, вы загружаете текстуру после вызова функции addModelToScene.

Попробуйте изменить свой код так:

function someFunction() { 
    var texture = new THREE.ImageUtils.loadTexture("images/test_COL.jpg"); 
    var jsonLoader = new THREE.JSONLoader(); 

    jsonLoader.load('models/schuh.js', addModelToScene);   

    var ambientLight = new THREE.AmbientLight(0x111111); 
    scene.add(ambientLight); 

} 

function addModelToScene(geometry, materials) 
{ 

    var material = new THREE.MeshBasicMaterial({map:texture}); 
    mesh = new THREE.Mesh(geometry, material); 
    mesh.scale.set(50,50,50); 
    scene.add(mesh); 
} 
+0

Здравствуйте claarman, спасибо за Ваш ответ. Я попробовал то, что вы предложили, но ничего не изменил. – user2524500

+0

Не могли бы вы добавить еще какой-нибудь код или идеально рабочий (не) рабочий пример –

+0

Проверьте конец 5-й строки снизу, это похоже на опечатку ("(map: texture})"). – JVE999

Смежные вопросы