3.1

Динамические описания в операторах

Обычно при создании оператора в Blender Python API его описание задается через параметр “bl_description”. Однако достаточно часто один и тот же оператор выполняет различные действия в разных случаях и единое описание не отражает всех возможностей оператора. В этом случае оператору можно задать динамическое описание.

Поиск пересечений

Одной из частых задач при построении сцены в Blender является контроль пересечения мешей. Определить пересекаются ли два меша между собой можно, используя технологию ограничивающих объемов (Bounding Volume).

Список выделенных в Аутлайнере коллекций

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

Указание параметров в макросах

Макросы в Blender отличаются от операторов тем, что не требуют жесткого задания последовательности выполняемых действия при регистрации. В операторах действия определяются в функции “execute”, для макросов же действия добавляются при помощи метода “define”.

Как добавить кнопку в хедер окна в Blender

С помощью Python API в Blender можно кастомизировать интерфейс, настроив его удобным для себя образом. Например, можно вынести наиболее часто используемые операторы в хедер (верхнее меню) любой рабочей области Таким образом можно собрать собственный риббон из “быстрых” кнопок.

Рендер отдельного кадра для превью при рендере анимации

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

Получение номера свободного канала в Sequence Editor через Blender Python API

Для того, чтобы программно добавить новый стрип в Sequence Editor, необходимо знать номер канала для его размещения. Получить номер свободного канала в Sequence Editor через Blender Python API можно пройдя по списку секвенций, уже размещенных в Sequence Editor.

Аддон Blender: Viewport Purge Button

Viewport Purge Button – аддон для графического редактора Blender добавляющий в хедер окна 3D Viewport кнопку “Purge” для очистки сцены от неиспользуемых объектов (мешей, материалов и т.д.).

Простейший параллакс-шейдер в Blender

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

Смешивание двух видео-стрипов по маске в Blender VSE

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

Как добавить видео в sequencer VSE при помощи Blender Python API

Blender Python API может оказаться очень полезным не только для работы с мешами или нодами, но и при монтаже готовых видео в Video Sequence Editor.

Доступ к свойству face_strength из Blender Python API

Параметр “face_strength” используется в модификаторе Weighted Normal для расчета нормалей. Задавать и изменять его значение можно, вызывая специальный оператор, или напрямую получая и записывая его значения через Blender Python API.

Динамическое задание Max и Min значений для свойства в Blender Python API

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

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

Поиск нодов по первым буквам

Для того, чтобы быстро найти нужный нод в редакторе Node Editor в окне поиска достаточно вводить только первые буквы из названия нужного нода.

Такой метод поиска работает как в редакторе шейдерных нод, так и в Geometry Nodes.

Например для поиска нода “Set Curve Radius” в поле поиска достаточно вбить только буквы “SCR”. А для поиска нода “Principle BSDF” достаточно ввести “PB”.

Особенности использования нодов из группы Input в Geometry Nodes

При использовании нодов из группы “Input” в Blender Geometry Nodes таких как, например, “Position”, “Index” или “Normal” нужно четко понимать, какую именно информацию они предоставляют.

Скроллинг инстансов вдоль кривой в Blender при помощи Geometry Nodes

В Blender при помощи нод геометрии Geometry Nodes можно создать несколько инстансов (копий) меша, распределить их вдоль кривой и смещать их вдоль этой кривой в нужное положение.

Массив источников света

Источники света Point, Sun, Spot и Area не являются мешами, поэтому для них нельзя назначить модификатор массива Array. Однако, чтобы удобно и быстро создавать динамические наборы источников света в один или несколько рядов можно использовать трюк с привязкой.

Отключение приближения к объекту при переходе в изолированный режим

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

Для того, чтобы отключить автозум в изолированном режиме:

  • откройте окно “Preferences”
  • перейдите на вкладку “Key Map”
  • в поле поиска введите “local view”
  • разверните найденные шорткоды и снимите в них галочку “Frame Selected”

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

Как сменить хоткей для переключения режима выбора вертекс-ребро-полигон

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

Генератор шаблонов для создания аддона Blender v.1.9.0

Генератор шаблонов для создания аддона Blender обновлен до версии 1.9.0.

  • Добавлены шаблоны для Blender 3.1, 3.2.
  • Исправлена ошибка генерации шаблонов, если в имени указаны пробелы. Пробелы автоматически заменяются знаками подчеркивания.

Преобразование геометрии в развертку с помощью Geometry Nodes в Blender

При помощи Geometry Nodes в Blender можно легко трансформировать любой объект в его UV-развертку.

И если раньше для создания подобного эффекта требовалось запекать разницу координат точек объекта и его развертки в ключи формы (shape keys), с помощью Geometry Nodes все делается очень просто.

Как применить нужный модификатор у всех выделенных объектов

Для применения (apply) модификатора объекта с помощью Blender Python API можно воспользоваться оператором bpy.ops.object.modifier_apply. Однако он обрабатывает только один активный объект.

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

Как правильно применить модификатор Geometry Nodes после расстановки инстансов

Если при моделировании вы расставили инстансы через Geometry Nodes, применение (Apply) этого модификатора уничтожит все расставленные инстансы.