我创建了一个简短的脚本来显示欢迎屏幕,然后在用户单击后创建3D模型。显示3d模型(OBJ)的代码如下:
PShape shuttle;
void setup() {
...
shuttle = loadShape("shuttlecraft.obj");
...
}
void draw() {
...
translate(width/3, height/2);
scale(10, 10, 10);
shape(shuttle);
...
}
将加载OBJ,但不会加载关联的MTL。我看过另一篇类似的文章,但提出的答案没有用。我已经广泛检查了处理论坛以及处理Wiki。如何加载MTL?
编辑:
我认为问题是由于MTL文件为空。 3mf中有顶点颜色,而不是纹理。因此,当3d Builder将3mf保存为OBJ时,它不保存任何纹理,仅保存顶点颜色,而该颜色不能被Processing处理。那么如何将3mf正确地转换为OBJ?
答案 0 :(得分:0)
首先,请确保您的目标文件具有对您的.mtl
文件的引用。例如,以下是从Blender导出的目标文件的前几行:
# Blender v2.79 (sub 0) OBJ File: ''
# www.blender.org
mtllib lefthand.mtl
o RobotHand_Cube.017
v -0.409451 -0.291475 0.250885
...
...
在第三行中,参考了材料文件:mtllib lefthand.mtl
。人们重命名文件而忘记更改引用以匹配新名称时,会发生常见错误。
答案 1 :(得分:0)
经过大量研究,我终于找到了这个半指南:https://www.reddit.com/r/TiltBrush/comments/80960e/how_to_properly_convert_an_obj_with_vertex_color/
它用颜色呈现。
我的模型在处理预期的纹理时使用顶点颜色。上面创建了一个PNG纹理。我希望这会有所帮助。