×
Меню
Индекс

MeshLab

Копипаста статьи:
http://www.fullrest.ru/blogs/lodyi-i-optimizatsiya-modeley-v-meshlab-2016-part1
SiberianCrab(С)

MeshLab — бесплатная программа для редактирования, оптимизации, текстурирования и конвертации высокополигональных моделей (в основном 3D Сканов) в различные форматы.
 
Последняя версия — MeshLab 2016 от 23.12.2016:http://www.meshlab.net/#download
 
Примечание: так как данная программа хорошо отрабатывает цельные модели (меши только с 1й текстурой/атласированные меши), коих в Моррошинде меньшинство, процесс обработки моделей с несколькими материалами нуждается в тестировании и обкатке.
 
 
Часть 1 — Работа с атласированными моделями
 
 
Подготовка модели
 
Для работы программы необходимо, чтобы меш в формате .obj и текстура в .png/.jpg находились в одной директории — поэтому под генерацию ЛОДов советую создать отдельную папку.
 
1. Конвертируйте текстуру в .png или .jpg, сохраните в рабочей папке.
 
2. Настройте материал модели в Максе так, чтобы в диффузе использовалась созданная в пункте 1 текстура:
 
 
3. Экспортируйте меш в формат .obj — обязательна триангуляция и экспорт материалов и материал лайбрари (.mtl файл):
 
 
 
Упрощение модели/ЛОДирование
 
4. Запустите MeshLab и импортируйте вашу модель через File -> Import Mesh:
 
 
5. Если п.1−3 были выполнены верно, модель импортируется в MeshLab сразу с текстурой:
 
 
6. Создание слоев для уровней ЛОДов
 
Следует знать, что MeshLab наглухо меняет импортированный меш без возможности отката его к исходной/предыдущей версии, однако программа позволяет создавать «слои» — дубликаты модели, на которых и следует производить все манипуляции по её упрощению. Слои также позволяют облегчить создание нескольких уровней ЛОДов (например трех с детализацией 75%, 50%, 25%) без необходимости постоянно импортировать/экспортировать модели в/из MeshLab.
 
Для создания нового слоя-дубликата — ПКМ по исходному слою -> Duplicate Current Layer:
 
Дубликаты слоев изначально не будут затекстурены. Чтобы добавить текстуру на дубликат — Filters -> Texture -> Set Texture:
 
Окно выбора текстуры несколько кривое — выбрать текстуру через какое-либо меню нельзя — можно только указать название и формат (.dds программа не понимает — .png и .jpg) файла, хранящегося там же, где и .obj текущей модели — отсюда требования в п. 1.
 
В поле Texture file ручками копипастим название файла текстуры (с форматом файла) из п. 1 и жмем Apply:
 
На ругань о сохранении жмем ОК:
 
7. Подготовив необходимое количество слоев можно переходить к их упрощению.
 
Выбрав Нужный слой переходим в Filters -> Remeshing… -> Simplification: Quadratic Edge Collapse Decimation (with textures):
 
В появившемся окне устанавливаем степень упрощения модели:
 
Степень упрощения:
— Target number of faces — можно задать требуемое количество полигонов упрощенной модели вручную (по умолчанию тут всегда прописывается 50% от количества полигонов оригинала);
— Percentage reduction — можно задать требуемое количество полигонов в процентах от исходной модели (например, чтобы уменьшить количество полигонов модели на четверть (25%) нужно задать значение 0,75);
 
Примечание: Поле Percentage reduction имеет более высокий приоритет, нежели Target number of faces — т. е. даже если в строке Target number of faces вписано какое-либо значение, упрощаться модель будет по значению строки Percentage reduction
 
Галки — все три рекомендуется тыкнуть, возможны эксперименты:
— Preserve Boundary… — программа пытается не изменять формы модели;
— Optimal Position… — программа пытается оптимизировать объединение вершин при упрощении;
— Preserve Normal — программа пытается сохранить ориентацию полигонов — предотвратить появление «вывернутых на изнанку» полигонов.
 
Примечание: при наведении курсора на каждое из полей всплывают подсказки на буржуйском — для лучшего результата рекомендуется ознакомиться с ними и поэкспериментировать с настройками.
 
Задав нужные настройки, жмем Apply — слой с моделью упрощен.
 
8. Упрощенный слой-модель экспортируется через File -> Export Mesh As…:
 
В появившемся окне выбираем место сохранения, формат и имя файла для ЛОДа:
 
В настройках экспорта нужно снять галку с Normal:
 
Жмем «ОК». Модель экспортирована.
 
Примечание: если на этом этапе программа зависла, сожрав всю оперативку — значит вы экспортировали исходную модель без триангуляции полигонов — см п. 3.
 
9. Импортируем модель в макс, накладываем текстуру, правим по желанию, экспортируем для Моррошинда.
 
PROFIT
Модели до и после упрощения – слева исходник, справа ЛОД (упрощение 50%)
Модели до и после упрощения — слева исходник, справа ЛОД (упрощение 50%)