3.5

Паттерн лабиринта на Blender Geometry Nodes

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

Удаление слоя видимости при помощи Blender Python API

Для того чтобы удалить имеющийся слой видимости View Layer при помощи Blender Python API, нужно вызывать метод remove() для списка всех слоев видимости текущей сцены.

Получение всех возможных значений параметра bl_context для классов панелей UI

При размещении пользовательских панелей UI на нужной вкладке в рабочей области Properties используется параметр bl_context. Указываемое в этом параметре значение отвечает за то, на какой именно вкладке будет размещаться пользовательская панель.

Переопределение контекста в Blender версии 3.2 и более поздних

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

Упаковка текстур в файл при экспорте в FBX из Blender

Формат .FBX поддерживает упаковку текстур внутрь файла. Для того чтобы встроить текстуры внутрь файла .fbx при экспорте из Blender, нужно в параметрах экспорта указать значение параметра Path Mode равное Copy и включить переключатель Embed Textures.

Секреты альфа-канала или куда девается свечение на прозрачном фоне

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

Автор: Михаил Солуянов

Выбираем все объекты с нужным модификатором в Blender

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

Быстрое применение к объекту всех его модификаторов

Применить к объекту наложенные на него модификаторы можно последовательно проходя по списку модификаторов и вызывая оператор bpy.ops.object.modifier_apply() для применения каждого из них. Однако можно воспользоваться тем, что в depsgraph уже есть полностью просчитанные данные меша с уже примененными модификаторами и просто перестроить объект по этим данным.