【发布时间】:2019-02-15 05:10:57
【问题描述】:
我正在尝试使用从搅拌机导出的 .obj 和 .mtl 文件创建场景。该对象实际上只是一个矩形(它需要是一个 .obj 文件。将添加更多对象来创建场景)我能够看到材质负载,但看不到在 chrome 或 firefox 中应用的纹理。
这里是javascript代码:
const obj_loader = new THREE.OBJLoader(),
mtl_loader = new THREE.MTLLoader();
// uses example of OBJ + MTL from three.js/examples
mtl_loader
.setTexturePath('bar/')
.setPath('bar/')
.load('floor.mtl', (materials) => {
materials.preload()
obj_loader
.setMaterials(materials)
setPath('bar/')
.load('floor.obj', (object) => {
// everything returns status 200!
// material is being applied but no texture
scene.add(object);
})
});
检查控制台,对 mtl、obj 和图像文件的请求返回 200 个状态码
but the model renders without texture
控制台中根本没有错误。什么会在 Three.js 中导致这个问题?我怀疑 .obj 或 .mtl 有问题,但我找不到问题所在。 (根据记录的 ajax 请求,文件路径是正确的)。
【问题讨论】:
标签: javascript 3d