2

我已经能够使用three.js API从具有OBJ格式的3D模型文件中的相应纹理加载和渲染3D模型。我想尝试使用 JSON (.js) 格式加载模型。所以我下载了一个 3D 模型(这个工厂)并使用mrdoob python 脚本将其转换为 JSON 格式。它输出了一个 .js 文件以及文件夹内的纹理。我将所有内容原封不动地复制到我的 localhost 文件夹中,并将下面的代码插入到我的 html 页面中,希望得到具有所有纹理的磨机:

var loader = new THREE.JSONLoader();  
loader.load( 'mill.js', function ( geometry ) {
    var mesh = new THREE.Mesh(geometry, new THREE.MeshLambertMaterial({overdraw: true}));
    mesh.scale.set(0.005, 0.005, 0.005);
    mesh.castShadow=true;
    scene.add( mesh );  });

但我得到的结果是这样的: 磨无纹理

显然它缺少相应的纹理。我看了看里面的mill.js文件;虽然我不明白,但我可以看到纹理是在materials数组中引入的。虽然 JSON 文件引用了相应的纹理,但我应该在我的代码中做什么才能将纹理带到模型表面?

4

0 回答 0