Удаляем модификатор со всех выделенных объектов через Blender Python API

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

Для начала нам нужно определить тип модификатора, который мы ходим удалить с объектов.

Для текущего активного объекта в сцене тип его активного модификатора можно получить так:

Или по его порядковому номеру в списке модификаторов (не забываем, что в списках порядок перечисления начинается с нуля):

Пройдем в цикле по всем выделенным объектам сцены:

Получить список всех модификаторов объекта можно следующим образом:

Однако нам нужно удалить модификаторы только одного типа, поэтому добавим в список фильтр.

Теперь мы можем удалить модификаторы с объекта по полученному списку.

Все вместе:

Обратите внимание, так как мы удаляем модификаторы по типу и списком, а не через порядковый номер, как можно было бы сделать, даже если на один объект наложены несколько модификаторов одного типа, все одни будут удалены.

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

0 Комментарий
Новые
Старые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии