Python

Еще один способ добавить автокомплит к коду при разработке аддонов Blender в Visual Studio Code

Для повышения удобства разработки аддонов Blender с помощью Microsoft Visual Studio Code в этой IDE можно подключить автодополнение кода для стандартных типов API Blender.

Метод подключения автодополнения кода предложен Zen3515.

Как получить FOV камеры в градусах из длины фокуса в мм

Значения угла камеры в Blender могут устанавливаться как в миллиметрах – параметр Focal Length, так и в градусах – параметр Field of View.

Для того, чтобы получить Field of View в градусах имея значение Focal Length в миллиметрах, можно впользоваться следующей формулой:

Как создать группу вертексов Vertex Group и добавить в нее точки с помощью Blender Python API

Работа с группами точек для текущего активного объекта осуществляется через его структуру “vertex_groups”.

Как создать развертку для меша через Blender Python API

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

Создать собственно развертку с нужным именем:

Далее, для задания координат точек развертке, нужно пройтись по всем “лупам” меша:

Как получить список координат точек UV-развертки

Получить список координат точек развертки меша может понадобиться, например, при экспорте меша из внутреннего формата Blender в какой-нибудь внешний формат.

Список разверток, имеющихся у меша, можно получить, обратившись к элементу uv_layers:

Как вывести все имеющиеся ноды

Получить все доступные шейдерные ноды в виде списка можно по их типу.

Для начала, добавим в сцену любой объект, например – куб, создадим для него материал и удалим из него все ноды. Сюда, в этот материал, мы выведем все имеющиеся в Blender ноды шейдеров.

Как просмотреть список добавленных в заголовок окна операторов

Для добавления оператора в заголовок (header) окна используются функции append и prepend в которых параметром нужно указать функцию отрисовки кнопки вызова оператора.

Например, чтобы добавить в заголовок окна вьюпорта (3D View) кнопку вызова оператора добавления в сцену куба, нужно определить функцию отрисовки оператора:

и добавить ее в заголовок окна:

Кнопка с оператором добавления куба в сцену появится в заголовке окна вьюпорта.

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

Обратите внимание, что свойство _draw_funcs определяется в методе draw только если в него добавлены пользовательские операторы. Если пользовательские операторы не в заголовок не добавлялись, будет выдана ошибка

AttributeError: ‘function’ object has no attribute ‘_draw_funcs’

Как создать камеру с помощью Blender Python API

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

1. Создать блок данных для камеры.

2. Создать объект и связать его с созданным блоком данных.

3. Поместить созданный объект в сцену.

Камера будет помещена в текущую сцену в ее главную коллекцию.

Финальный код: