Blender 3D

Группировка данных в подпанелях

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

Оповещение о выходе новых версий Blender

Для тех, кто устанавливает и обновляет Blender самостоятельно, а не через Steam, может оказаться полезным сервис B3D Noti. При выходе новых версий Blender он рассылает сообщения в Telegram и Discord каналы, а так же пишет в ленту RSS.

Как получить доступ к кастомному атрибуту, созданному в Geometry Nodes

Механизм Geometry Nodes в Blender позволяет легко создавать для объектов дополнительные кастомные атрибуты и помещать в них нужные данные. Однако прямого доступа к таким атрибутам нет.

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

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

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

Как вынести на пользовательскую панель значения со входов Geometry Nodes

Входные параметры в Blender Geometry Nodes автоматически выносятся на панель модификатора “Geometry Nodes” в окне Properties на вкладке модификатора. Однако далеко не всегда нужная вкладка открыта, и не всегда удобно переключаться на нее для их регулировки. Для быстрого доступа к входным параметрам Geometry Nodes их можно продублировать в пользовательской панели в окне 3D Viewport.

Хоткей для выбора активной камеры

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

Оператор для скрытия объекта во всех сценах

Для того, чтобы скрыть объект в окне 3D Viewport только для текущей сцены мы все пользуемся оператором object.hide_view_set, вызов которого равносилен нажатию на иконку с глазом в аутлайнере. Однако для того, чтобы скрыть объект во вьюпорте сразу для всех сцен проекта – нажатие на иконку с изображением монитора, специального оператора не предусмотрено. Сделаем его сами.

Как вынести динамически заданное свойство объекта на пользовательскую панель

В Blender API рекомендуется задавать дополнительные свойства для объектов через классы, предопределенные в bpy.props. Например для добавления целочисленного свойства используется класс bpy.props.IntProperty. Такие свойства удобны, хорошо работают и легко выносятся на панели пользовательского интерфейса.

В чем разница между “глазом” и “монитором” при скрытии объектов

Для того, чтобы скрыть объекты в окне 3D Viewport можно нажать иконку с “глазом” в аутлайнере напротив нужного объекта (равнозначно нажатию клавиши “H” на клавиатуре), а можно нажать иконку с изображением монитора. И в том и в другом случае объект будет скрыт.

В чем же тогда разница между этими двумя вариантами?

На самом деле все очень просто:

Нажатие на иконку с “глазом” скрывает объекты только в текущей активной сцене blend-файла.

Нажатие на кнопку с “монитором” скрывает объекты сразу во всех сценах blend-файла.

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

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