2.93

Создание одинаковых панелей UI в разных окнах Blender без дублирования кода

Для того, чтобы создать несколько одинаковых панелей UI с одним и тем же набором полей и кнопок в разных окнах в Blender, проще всего скопировать код панели, заменив в нем параметры, определяющие, в каком именно окне панель будет показана.

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

Создание скрытого оператора

Иногда бывает необходимо зарегистрировать оператор так, чтобы пользователь не мог вызвать его напрямую. Например, если данный оператор предполагается вызывать только из другого оператора после выполнения ряда проверок или дополнительных действий.

Аддон Blender: Parent to Empty v. 1.1.0

Обновление аддона “Parent to Empty” до версии 1.1.0.

  • Добавлен режим быстрого создания и удаления Track to Empty
  • Добавлены клавиатурные сокращения по умолчанию для вызова Parent to Empty и Track to Emtpy

Автокомплит для разработки аддонов Blender в Eclipse IDE

Eclipse IDE, наравне с PyCharm и Visual Studio Code, является одной из наиболее популярных IDE для разработки, в том числе и аддонов для Blender. Для повышения удобства разработки под Blender в Eclipse IDE в нее можно подключить автокомплит – автодополнение кода для Blender Python API.

По заметкам Павла Гераськина.

Как сделать копию объекта при помощи Blender Python API

Создать копию объекта в сцене можно двумя путями:

  1. Вызывая оператор дублирования объекта,
  2. Используя метод copy() самого объекта.

Использование UV координат для работы с геометрией

При помощи UV-координат развертки можно манипулировать не только материалами, но и самой геометрией меша. Связать UV-координаты с геометрией в Blender можно при помощи “Geometry Nodes”.

Как применить трансформации к мешу с помощью Blender Python API

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

Шина передачи сообщений

В API Blender существует модуль, с помощью которого можно отслеживать изменение любого свойства, доступного через Python API. Этот модуль – шина передачи данных или “Message Bus”.

 

Рассмотрим, как можно создать функцию-обработчик события для отслеживания изменения какого-либо свойства. Например – местоположения 3D курсора в сцене.

Как изменить размеры гизмо

Для того, чтобы изменить размеры гизмо, отображаемого в окне “3D Viewport” нужно:

  • Открыть окно настроек “Preferences”
  • Перейти во вкладку “Viewport”
  • В подменю “Display” изменить значение слайдера в пункте “Gizmo Size”