three.js - MTL 文件中的纹理未正确应用于 Three.js 中的 OBJ 模型
问题描述
我正在使用已提供的 3 个文件加载 3D 模型:
- 例子.obj
- 例子.mtl
- 例子.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 将纹理倒置导出。我纠正了他们,问题得到了解决。再次感谢。
推荐阅读
- django - Django Rest Framework 将登录用户链接到应用模型
- c++ - 为什么在 C++ 中使用模板时出现此错误
- c - 在 CGC 挑战二进制文件上运行 Kvasir 的问题
- tensorflow - 如何调试模型 / tf.data 中的错误,在急切模式下工作正常,但在 keras.fit 中出现错误
- python - discord py 中的@client.command() 对我不起作用
- ansible - 创建 Json 文件
- python - Python单元测试,日期时间
- laravel - Laravel - 编辑存储在 AWS S3 上的 Microsoft Word 文档
- asp.net-mvc - 独立 IIS 服务器无法根据启动 url/启动 url/默认视图启动 Web 应用程序
- triggers - 在机会更新上调用现有触发器