Батч-экспорт в OBJ из Blender

Экспортировать любой меш из Blender в файл в формате OBJ можно выделив его и выбрав в главном меню пункты: FIle – Export – Wavefront (.obj). При необходимости разбить сцену на объекты и каждый из них экспортировать в OBJ, этот процесс можно легко автоматизировать.

Напишем небольшой скрипт, который позволит разом выгрузить все выделенные в сцене меши, каждый меш – в отдельный файл в формате OBJ.

Для начала определимся с местом, куда мы будем складывать экспортируемые из Blender меши. Пусть это будет та же директория, в которой расположен .blend файл с текущей сценой:

Оператор экспорта в OBJ в Blender работает со всеми выделенными объектами разом. Поэтому, для того чтобы разбить сцену пообъектно, нам нужно запомнить список выделенных объектов и снять с них со всех выделение. А далее поочередно выделяя каждый меш, экспортировать его в OBJ формат.

Сделаем копию списка выделенных объектов:

и снимем со всех них выделение:

Далее, пройдем в цикле по сохраненному ранее списку объектов:

Если объект – меш, выделим его, выполним оператор экспорта и опять снимем с него выделение, чтобы он не экспортировался повторно не следующей итерации цикла.

В параметре filepath оператора экспорта obj_export мы передаем полный путь, включая расширение, для сохранения экспортируемого в формат OBJ меша. В нашем примере это будет путь к директории blend-файла плюс имя файла с расширением .obj. В качестве имени файла мы подставляем имя экспортируемого меша, которое получаем из его свойства “name”.

После экспорта можно восстановить исходное выделение в сцене.

После выполнения этого несложного кода в директории проекта будут созданы файлы OBJ, в каждом из которых будет находиться отдельный экспортированный меш.

0 0 голоса
Article Rating
Подписаться
Уведомить о
guest

0 Комментарий
Межтекстовые Отзывы
Посмотреть все комментарии