MTL文件中的纹理未正确应用于Three.js中的OBJ模型

时间:2018-11-06 14:44:09

标签: three.js

我正在使用3个文件来加载3D模型:

  • example.obj
  • example.mtl
  • example.jpg

我使用以下代码段将它们加载到Three.js脚本中:

        var mtlLoader = new THREE.MTLLoader();
        mtlLoader.setPath('./');
        mtlLoader.load('example.mtl', function(materials) {
            materials.preload();
            var objLoader = new THREE.OBJLoader();
            objLoader.setMaterials(materials);
            objLoader.setPath('./');
            objLoader.load('example.obj', function(obj) {
                scene.add(obj);
            }, onProgress, onError);
        });

模型显示在屏幕上,并且应用了纹理,但是不正确(纹理未正确分配给每个面,看上去旋转等)。看起来纹理映射不正确。由于该代码段非常简单,并且似乎所有内容都是自动设置的,因此我不确定该如何解决。有想法吗?

顺便说一句,文件是从Zbrush导出的。

预先感谢

1 个答案:

答案 0 :(得分:0)

感谢您的评论,但我最终发现了问题所在:Zbrush将纹理倒置导出。我纠正了它们,此问题已解决。再次感谢。