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



我正在使用提供给我的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导出的。

提前感谢

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

最新更新