0

我正在使用three.js 加载一个obj 文件,一个带有一些珍珠的戒指。我没有mtl文件,因为我们用来导出obj(rhinoceros(?)) 的软件不会用obj文件生成它(这是平面设计师告诉我的)。

我只需要为戒指设置金属材料,只为石头/珍珠设置玻璃材料。

这是我实际加载文件的测试页面的链接: jaaxlab.com/test_youring

...对于其余的我不知道如何设置单一材料和多个。

链接到 obj 文件jaaxlab.com/test_youring/obj/prova1.obj

4

1 回答 1

0

您的对象有几个孩子。索引为 0 的孩子是环。此外,它的名字是sezione_B_misura13_Riviera_mix_full anello_sezione_B_misura13.

因此,您可以像这样访问它:

obj.children[0].material = new THREE.MeshStandardMaterial(...);

或者

obj.getObjectByName('sezione_B_misura13_Riviera_mix_full anello_sezione_B_misura13').material = new THREE.MeshStandardMaterial(...);

鉴于这obj是对象,用你的加载器加载。

看看这个jsfiddle。加载您的文件,然后检查控制台日志。您还可以单击对象的任何部分并在控制台中查看其 ID 和名称。

于 2017-11-13T13:16:42.687 回答