Как добавить путь к текстуре в файле OBJ или MTL?

У меня следующая проблема: мой проект состоит из файла .obj, файла .mtl и текстуры (.jpg).

Мне нужно разделить текстуру на несколько файлов. Но когда я это сделаю, UV-координаты (после сопоставления и обратного сопоставления) будут одинаковыми для нескольких файлов, поэтому это вызовет ошибку при просмотре obj с использованием meshlab.

Как я могу решить свою проблему?


person Various    schedule 14.10.2019    source источник


Ответы (1)


Meshlab поддерживает файлы с несколькими файлами текстур, просто используя отдельный материал для каждой текстуры. Неясно, генерируете ли вы свои obj-файлы с помощью meshlab или другой программы, поэтому я не уверен, что это вопрос, связанный с meshlab.

Вот образец минимального мультитекстурного файла .obj (8 вершин, 4 треугольника, 2 текстуры)

mtllib ./TextureDouble.obj.mtl

# 8 vertices, 8 vertices normals
vn 0.000000 0.000000 1.570796
v 0.000000 0.000000 0.000000
vn 0.000000 0.000000 1.570796
v 1.000000 0.000000 0.000000
vn 0.000000 0.000000 1.570796
v 1.000000 1.000000 0.000000
vn 0.000000 0.000000 1.570796
v 0.000000 1.000000 0.000000
vn 0.000000 0.000000 1.570796
v 2.000000 0.000000 0.000000
vn 0.000000 0.000000 1.570796
v 3.000000 0.000000 0.000000
vn 0.000000 0.000000 1.570796
v 3.000000 1.000000 0.000000
vn 0.000000 0.000000 1.570796
v 2.000000 1.000000 0.000000

# 4 coords texture
vt 0.000000 0.000000
vt 1.000000 0.000000
vt 1.000000 1.000000
vt 0.000000 1.000000

# 2 faces using material_0
usemtl material_0
f 1/1/1 2/2/2 3/3/3
f 1/1/1 3/3/3 4/4/4

# 4 coords texture
vt 0.000000 0.000000
vt 1.000000 0.000000
vt 1.000000 1.000000
vt 0.000000 1.000000

# 2 faces using material_1
usemtl material_1
f 5/5/5 6/6/6 7/7/7
f 5/5/5 7/7/7 8/8/8

А вот и файл TextureDouble.obj.mtl. Для тестирования файлов необходимо предоставить 2 файла изображений с именами TextureDouble_A.png и TextureDouble_B.png.

newmtl material_0
Ka 0.200000 0.200000 0.200000
Kd 1.000000 1.000000 1.000000
Ks 1.000000 1.000000 1.000000
Tr 1.000000
illum 2
Ns 0.000000
map_Kd TextureDouble_A.png

newmtl material_1
Ka 0.200000 0.200000 0.200000
Kd 1.000000 1.000000 1.000000
Ks 1.000000 1.000000 1.000000
Tr 1.000000
illum 2
Ns 0.000000
map_Kd TextureDouble_B.png
person Rockcat    schedule 25.10.2019