Python

Добавление оператора в список Undo History

Обычно, когда в Blender пользователем выполняется какой-либо оператор, это событие автоматически заносится в “историю отмены” для того чтобы в дальнейшем можно было быстро отменить выполнение оператора (ctrl + z) или же выполнить его опять – отменить отмену (ctrl + shift + z). Однако этот механизм срабатывает не всегда.

Сохранение и восстановление положения вьюпорта

Через Blender Python API можно работать не только с объектами сцены, но также и с пользовательским интерфейсом UI. Например, можно сохранять и восстанавливать обратно положение вьюпорта в сцене.

Создание входов и выходов для нодовых групп в Blender 3.6 при помощи Python API

Самый простой способ создания новых входов и выходов у нодовых групп – нажать кнопку с плюсиком в режиме редактирования нодовой группы (tab) в N-панели в разделе “Group”. Однако при создании нодовых групп средствами Blender Python API этот способ недоступен.

Доступ к свойствам вертексов, созданным через bmesh

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

Скрытие объектов при помощи Blender Python API

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

Перемещение вертексов в режиме редактирования

Для того чтобы перемещать точки меша при помощи Blender Python API не выходя из режима редактирования (EDIT мод), нужно использовать объект bmesh. С его помощью можно удобно манипулировать геометрией объекта.

Проверяем, находится ли точка внутри полигона или за его пределами

При проверке коллизий в 2D проекциях между точкой и полигоном необходимо выяснить, лежит ли точка внутри полигона, или же она расположена вне его площади.

Преобразование цвета в Blender в формат RGB565

Выходной формат цветов пикселей на рендере в Blender – RGBA в линейном цветовом диапазоне. Если нужно сохранить рендер в формате RGB565, такой формат используется, например, в некоторых старых играх, значения цвета пикселей необходимо преобразовать.