当我点击我的模型(从Revit导入到3ds max)时,每个元素都有一个材质(玻璃,钢等),但是当我运行导出器时,所有4种材质都显示如下:
"materials": [
{
"DbgIndex" : 0,
"DbgName" : "dummy",
"colorDiffuse" : [1.0000, 0.0000, 0.0000],
"vertexColors" : false
},
{
"DbgIndex" : 1,
"DbgName" : "dummy",
"colorDiffuse" : [0.0000, 1.0000, 1.0000],
"vertexColors" : false
},
{
"DbgIndex" : 2,
"DbgName" : "dummy",
"colorDiffuse" : [1.0000, 1.0000, 0.0000],
"vertexColors" : false
},
{
"DbgIndex" : 3,
"DbgName" : "dummy",
"colorDiffuse" : [1.0000, 0.0000, 1.0000],
"vertexColors" : false
}
]
我使用出口商错了吗?为什么我的材料不会被导出?!
谢谢!
答案 0 :(得分:1)
听起来您使用的程序纹理不能简单地与JSON导出器一起导出。您可能希望在漫反射槽中使用带有纹理的标准材质。
如果你真的想要程序纹理,你可以“render to texture”,然后将得到的纹理应用到标准材质的漫反射槽中。然后你可以导出。您可能还需要设置UVW坐标。
答案 1 :(得分:0)
我能给你的最好的建议是以obj和mtl格式导出模型,然后在clara.io上传两个。这个网站将允许你将这两个文件转换成一个json文件。一个python程序也存在一个名为convert_obj_three.py,它可以从obj转换为json格式,但据我所知,它不会转换你分配给你的对象的材料,因为它不会接受mtl文件。 / p>
此计划的链接可在此处找到:
https://github.com/timoxley/threejs/blob/master/utils/exporters/obj/convert_obj_three.py