API

Видимость объекта во вьюпорте

В ряде случаев бывает необходимо определить, виден ли в данный момент определенный объект в окне 3D вьюпорта в Blender, или – нет. В общем случае определить видимость объекта во вьюпорте можно при помощи функции location_3d_to_region_2d из модуля view3d_utils.

Отслеживание переключения между слоями видимости ViewLayer

В Blender Python API не предусмотрено отдельных обработчиков для отслеживания переключений слоев видимости ViewLayer. Однако если нужно выполнять какие-то действия при их переключении, их можно отследить при помощи шины передачи сообщений.

Управление положением 3D вьюпорта через Blender Python API

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

Перевод значения из одного диапазона в другой

Функция range служит для перевода значения из одного диапазона, например от 0 до 1000 в другой, например от -1 до 1. Для быстрого получения значения в разных диапазонах, определим свою функцию range.

Вектор направления взгляда из 3D вьюпорта

Для того чтобы получить вектор направления 3D вьюпорта, например, чтобы определить расположение вьюпорта относительно какого-либо объекта сцены, можно воспользоваться функцией region_2d_to_vector_3d из модуля view3d_utils.

Рисование изображения при помощи модуля gpu в пространстве сцены и вьюпорта

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