嗨,我有一个简单的TheeJS代码,我想在其中加载一些使用JSONLoader的3D js文件。 3D文件是从blender导出器导出的,当我运行这部分代码时,它会给我带来两个错误:
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时它会出现这些错误
我该怎么办?
答案 0 :(得分:1)
问题可能在json文件中,检查材质中的pataramer阴影是否正确。一些作为"阴影" :"兰伯特"