API

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

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

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

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

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

Особенность обращения к объектам в depsgraph update

При использовании обработчика depsgraph_update выполнение действий с объектами, переданными в обработчик, не дает полного результата. Например, изменяя какие-нибудь свойства объекта обращаясь к нему через object.id, они могут быть изменены не полностью.

Bounding Box

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

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

Использование в UI иконок с неизвестным заранее id

Для отображения в UI рядом со свойством, текстовым лейблом или на кнопке оператора соответствующей иконки нужно указать ее идентификатор в параметре icon или icon_value. Но не для всех видов иконок их идентификаторы заранее известны. Например, нельзя заранее определить id для генерирующихся в рантайме иконок процедурных текстур и материалов.

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

Установка Python-пакетов через pip в Blender на Windows 10

Если для работы в Blender необходимо установить дополнительные пакеты модулей на Python, которые не установлены в Blender по умолчанию, вы можете сделать это через pip.

Однако, если вы работаете на операционной системе Windows 10, интерпретатор Python устанавливает новые пакеты не в директорию установки Blender, а в персональную директорию пользователя Windows.