gpt4 book ai didi

three.js - 如何从three.js中的OBJ+MTL文件加载纹理?

转载 作者:行者123 更新时间:2023-12-04 01:59:47 28 4
gpt4 key购买 nike

我有一个导出到 OBJ 和 MTL 的 Maya 文件。我可以成功看到 OBJ 纹理,但我如何实际获取纹理?我在 blender 中查看了“three.js”格式,它似乎只有形状,没有纹理。

three.js example似乎在 obj 中加载了很好的形状,但纹理似乎来自 jpg 图像而不是 mtl:

loader.load('textures/ash_uvgrid01.jpg', function(image) {
texture.image = image;
texture.needsUpdate = true;
});

我的问题是,如何为我的模型获取这个“uvgrid01.jpg”图像?有什么方法可以将 MTL 转换为这种 .jpg 格式的纹理吗?或者我应该通过其他方式导出纹理以便能够加载它吗?

最佳答案

您可以使用 OBJLoader 和 MTLLoader,如 this example 中所示(至少三个.js r77):

var mtlLoader = new THREE.MTLLoader();
mtlLoader.setPath('obj/male02/');
mtlLoader.load('male02_dds.mtl', function(materials) {
materials.preload();
var objLoader = new THREE.OBJLoader();
objLoader.setMaterials(materials);
objLoader.setPath('obj/male02/');
objLoader.load('male02.obj', function(object) {
object.position.y = -95;
scene.add(object);
}, onProgress, onError);
});

关于three.js - 如何从three.js中的OBJ+MTL文件加载纹理?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17712857/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com