Three.js OBJ + MTLLoader导致TypeError“ambientLightColor未定义”

时间:2017-01-06 01:00:45

标签: javascript three.js objloader

我是Three JS的新手,但我知道它的基础知识。

现在我在使用ThreeJS的MTL和OBJLoader的代码中遇到了以下问题。对象本身被完美加载并渲染到场景中。但问题是在将对象添加到场景后我遇到以下错误:

TypeError: k.ambientLightColor is undefined, three.min.js (line 136, col 35)
TypeError: m.ambientLightColor is undefined, three.min.js (line 139, col 22)

每当我将鼠标悬停在场景上时,都会出现新的错误。

基本上这会冻结整个应用程序,并且我无法在应用程序运行时向场景中添加新对象,我应该可以在我的应用程序中执行此操作。

我的OBJ + MTLLoader看起来像这样:

var mtlLoader = new THREE.MTLLoader();
mtlLoader.setPath('objects/buildings/');
mtlLoader.load('Greenbuilding.mtl', function(materials) {
     materials.preload();
     var objLoader = new THREE.OBJLoader();
     objLoader.setMaterials(materials);
     objLoader.setPath('objects/buildings/');
     objLoader.load('Greenbuilding.obj', function(object) {
        object.position.set(0,0,0);
        objects.push(object);
        scene.add(object);
     }, onProgress, onError);
    });

我试过只使用OBJLoader,然后没有出现任何问题,这证实了我的怀疑,使用MTLLoader时出现了问题。

0 个答案:

没有答案