Javascript Threejs-我无法从JSONLoader加载材料

Javascript Threejs-我无法从JSONLoader加载材料,javascript,three.js,Javascript,Three.js,嗨,我有一个简单的TheeJS代码,我想在其中使用JSONLoader加载一些3D js文件。 3D文件是从blender exporter导出的,当我运行这部分代码时,会出现两个错误: Uncaught TypeError: Cannot read property 'map' of undefined Uncaught TypeError: Cannot read property 'attributes' of undefined 这是我要加载json 3D文件的代码的一小部分: var

嗨,我有一个简单的TheeJS代码,我想在其中使用JSONLoader加载一些3D js文件。 3D文件是从blender exporter导出的,当我运行这部分代码时,会出现两个错误:

Uncaught TypeError: Cannot read property 'map' of undefined
Uncaught TypeError: Cannot read property 'attributes' of undefined
这是我要加载json 3D文件的代码的一小部分:

var load = function ( file, callback )
{
    var loader = new THREE.JSONLoader();
    loader.load( file, function( geometry, materials ){
        callback( new THREE.Mesh( geometry, new THREE.MeshFaceMaterial( materials ) ) );
    });
}

load("models/porsche.js", function(car){
    car.position.set( 0, 0, -2 );
    car.rotation.y = Math.PI / -2;
    scene.add(car);
});

另外,当我使用其他类型的材质(例如phong或lambert)时,效果非常好,但当我使用MeshFaceMaterial时,会出现这些错误

我该怎么办?

可能问题出在json文件中,请检查材质中的pataramer着色是否正确。有些被称为“阴影”:“兰伯特”