2015-03-29 2 views
0

Я создал сцену в блендере, он содержит некоторые сетки без материалов, затем я экспортировал его в collada, я загрузил его в сцену three.js с помощью колладодера, все в порядке, но когда я положил некоторые материалы для детей, используя следующий код:Как я могу установить материалы для ребенка collada в THREE.js

 loader.load("../models/islands/"+islandselected.getAttribute("data-model")+".dae", function(object){ 
     scene.remove("island"); 
     plane=object.scene; 
     plane.name=islandselected.innerHTML; 

     plane.traverse(function(child){ 
      if(child.children[0]){ 
       if(child.children[0].geometry){ 
        console.log(child) 
        var t = new THREE.ImageUtils.loadTexture('../models/islands/'+child.name+'.jpg'); 
        t.wrapS = t.wrapT = THREE.RepeatWrapping; 
        t.repeat.set(50, 50); 
        var ma= new THREE.MeshBasicMaterial({map:t}); 
        child.children[0].material=ma 
       } 
      } 
     }); 
     plane.scale.set(100,100,100); 

     scene.add(plane); 
    }); 

я получаю ошибки в консоли: [.WebGLRenderingContext] GL ОШИБКА: GL_INVALID_OPERATION: glDrawElements: попытка доступа из вершин диапазона в атрибуте 1 empcreator.jsp : 1 WebGL: слишком много ошибок, на консоль больше не будет сообщаться об ошибках.

ответ

0
 var model,mat; 

     var loader = new THREE.ColladaLoader(); 
     var lastTimestamp = 0; 
     var progress = 0; 

     loader.load('obj/mymodel.dae', function (collada) { 

      model = collada.scene; 

      model.children[3].children[0].material = new THREE.MeshPhongMaterial({map:THREE.ImageUtils.loadTexture('obj/images/myimage.jpg')}); 
      console.log(model.material);     
      model.scale.x = model.scale.y = model.scale.z = 0.10; 
      model.rotation.y = 0.80; 
      scene.add(model); 
     } 

     //you will need to modify a little to work it, i took it from my old project 
+0

все они 256 * 256 –

+0

он загружается, если я заменяю карту цветом! –

+0

Да, я просто мельком смотрю на него, круто вы решили свою проблему – Careen

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