Python

Изменение порядка сокетов в нодовых группах Geometry Nodes

Изменить порядок сокетов в нодовой группе вручную можно простым перетаскиванием – в N-панели во вкладке Group – Interface зажимаем нужный сокет и перетягиваем его мышкой на нужное место. Переместить сокет в групповом ноде на новое место при помощи Blender Python API можно, используя функцию move объекта interface.

Заголовки для нодов Reroute в Blender Geometry Nodes

А вы знаете, что для нодов Reroute в Blender Geometry Nodes можно задавать собственные текстовые заголовки? Так как ноды Reroute чаще всего используются для упрощения и улучшения читаемости нодовых деревьев в Geometry Nodes, помечать такие ноды заголовком с короткой информационной надписью может оказаться очень удобным – не нужно будет запоминать или каждый раз прокручивать дерево нод, чтобы узнать, откуда на данный Rerout идет линк.

Быстрая установка точки, в которую направлены источники освещения в сцене

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

Быстрое перемещение модификатора Auto Smooth в конец списка модификаторов

С версии 4.1 оператор сглаживания нормалей в Blender был полностью заменен на модификатор, реализованный на механизме Geometry Nodes. Это удобно для решения ряда проблем, однако если модификатор Auto Smooth располагается в стеке модификаторов не на последнем месте, до других модификаторов, изменяющих геометрию меша, это приводит к появлению артефактов. Чтобы быстро переместить модификатор в конец стека, можно использовать несложный скрипт.

Работа с Mean Bevel Weight ребрами через Blender Python API

Для взаимодействия с модификатором Bevel, создающим фаску на заданных ребрах, каждому из выбранных ребер должен быть задан определенный числовой вес в пределах от 0.0 до 1.0. В ручном режиме вес для фаски задается в N-панели на вкладке Item – Edges Data – Mean Bevel Weight. Так же этот вес можно считывать и задавать через Blender Python API.

Работа с sharp ребрами через Blender Python API

В Blender мы можем пометить ребра меша как sharp – чтобы они оставались острыми и не сглаживались даже при включении smooth-шейдинга. В ручную это можно сделать выделив нужные ребра и выбрав в главном меню Edge – Mark Sharp. Ребра можно пометить как sharp так же и через Blender Python API.

Пометка ребер меша для рендера в Blender с использованием рендер-движка Freestyle

Для того чтобы создавать рендеры на основе линий, такие, например, как чертежи или стилизации 3D под 2D, обычно в дополнение к основному рендер-движку используется дополнительный рендер-движок “Freestyle”. Ребра, которые на финальном рендере должны быть ярко обведены линиями, необходимо пометить как “freestyle”, после чего рендер-движок Freestyle сможет их обработать.

Батч-экспорт в OBJ из Blender

Экспортировать любой меш из Blender в файл в формате OBJ можно выделив его и выбрав в главном меню пункты: FIle – Export – Wavefront (.obj). При необходимости разбить сцену на объекты и каждый из них экспортировать в OBJ, этот процесс можно легко автоматизировать.

Быстрый пересчет нормалей меша через Blender Python API

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

Простейший динамический LOD

Одним из популярных методов для ускорения рендера в 3D сценах является использование LOD – Level Of Details. При использовании LOD объекты, располагающиеся близко к камере, имеют самую высокую детализацию, на средних планах – среднюю детализацию, а на задних планах используются очень грубые, недетализированные объекты т.к. они все равно почти не видны. Такая сцена рендериться гораздо быстрее, чем сцена у которой на всех объектах выставлена максимальная детализация.