Установка жесткости Mean Crease для ребер через Blender Python API

В Blender при использовании модификатора Subdivision Surface для управления жёсткостью сглаживаемых ребер используется параметр Mean Crease. Значения для жесткости можно устанавливать через стандартный UI в N-панели, или при помощи Python API.

Для того чтобы установить значение Mean Crease в Blender Python API, для начала инициируем объект BMesh и перенесем в него геометрию текущего активного объекта.

Объект должен находится в режиме редактирования Edit mode.

Значения силы сглаживания для всех ребер хранятся в объекте BMesh на специальном слое “crease”.

Чтобы получить доступ к этому слою, выполним следующую команду, которая возвращает указатель на нужный нам слой:

Теперь мы можем получать и редактировать параметр жесткости для каждого ребра.

Например, выведем значение Mean Crease для первого ребра меша, его индекс равен 0.

Таким же образом можно и устанавливать нужные значения для требуемых ребер.

Например, назначим всем выделенным ребрам значение Mean Crease равное 1.0.

Здесь мы проходим в цикле по всем ребрам меша и если ребро выделено, устанавливаем для него значение Mean Crease равное 1.0, а если ребро не выделено, сбрасываем значение в 0.0.

Чтобы изменения отразились на меше в окне 3D вьюпорта, перенесем измененные данные из объекта BMesh обратно в текущий меш.

Если объект BMesh больше не нужен, очистим его чтобы он не занимал лишнюю память.

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

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