THREE.JS无法加载mtl文件

时间:2018-03-30 10:48:45

标签: three.js blender

看来THREE.JS MTLLoader无法加载mtl文件。它以某种方式将mtl文件作为JSON文件,并尝试解析mtl文件。

以下是代码:

var objLoader = new THREE.ObjectLoader();
var mtlLoader = new THREE.MaterialLoader();



mtlLoader.load("istuff.mtl",function (materials) {
        materials.preload();
        objLoader.setMaterial(materials);
    objLoader.load("istuff.obj", function ( object ) {
        scene.add(object);
    }, onProgress, onError)
});

这是错误:

VM64:1 Uncaught SyntaxError: Unexpected token # in JSON at position 0
    at JSON.parse (<anonymous>)
    at Object.onLoad (three.js:35569)
    at XMLHttpRequest.<anonymous> (three.js:30803)

Blender MTL文件:'istuff.blend'//错误在这里

更新

enter image description here 错误:

GET http://localhost:63342/Users/yuqingyang/Downloads/imac%20(1)/mac_keyb.jpg 404 (Not Found)

它试图在我的mac中获取图像,但它应该从url获取图像。

1 个答案:

答案 0 :(得分:1)

那是因为您使用的是ObjectLoader的实例。你需要的是OBJLoader。仔细看看下面的例子:

https://threejs.org/examples/#webgl_loader_obj_mtl