2016-01-28 67 views
1

我使用贴图装载机three.js所,在onLoad功能在它不工作给出了一个错误在控制台onLoad在TextureLoader中无法正常工作?

var TextureLoader = new THREE.TextureLoader(); 

boxtexture.onChange(function (value) { 

    TextureLoader.load('textures/' + value, 

     // onLoad callback 
     function(texture){ 
      Box1.material.map = texture 
      Box1.material.map.wrapT = THREE.RepeatWrapping; 
      Box1.material.map.wrapS = THREE.RepeatWrapping; 
      Box1.material.map.repeat.set(38, 38); 
      Box2.material.map = texture 
      Box2.material.map.wrapT = THREE.RepeatWrapping; 
      Box2.material.map.wrapS = THREE.RepeatWrapping; 
      Box2.material.map.repeat.set(38, 38); 
     }, 

     // onProgress callback 
     function(loaded) 
     { 
      load = 1; 
      console.log(loaded); 
      window.open(Renderer.domElement.toDataURL()); 
     } 
    ); 

}); 

但它不会调用onLoad功能和控制台 的给出错误信息纹理加载正常。但是我需要在加载时调用一个函数。

the methods for textureLoader in three.js

console error

+0

哪个版本的解决呢? – Wilt

+0

在'BoxN.material.map = texture'结尾处缺少';'两次 – Wilt

回答

0

我只是使用加载经理`three.js`您使用的three.js所

var manager = new THREE.LoadingManager(); 
manager.onLoad = function() { 

// call back function when the texture gets loaded 

} 
var TextureLoader = new THREE.TextureLoader(manager); 

TextureLoader.load('textures/', function (texture) { 

material.map = texture; 

});