我有问题。我写了这个函数来加载一个obj和mtl模型 (摘自:https://threejs.org/examples/#webgl_loader_obj_mtl):
var mtlLoader = new THREE.MTLLoader();
//mtlLoader.setTexturePath(path)
mtlLoader.setPath(path);
mtlLoader.load(material, function( materials ) {
materials.preload();
var objLoader = new THREE.OBJLoader();
objLoader.setMaterials(materials);
objLoader.setPath(path);
objLoader.load(model, function ( mesh ) {
mesh.position.set(x, y, z);
mesh.scale.set(s, s, s);
mesh.rotation.y = Math.PI;
mesh.castShadow = false;
mesh.receiveShadow = true;
scene.add(mesh);
if(handler) {
handler(mesh);
}
}, function(e){}, function(e){} );
});
其中material是file.mtl,model是file.obj。它适用于此模型:https://free3d.com/3d-model/hk416-with-animation-37927.html但它不适用于另一个obj + mtl。纹理未加载,我只看到白色模型。为什么?
我使用three.js r85。
谢谢!