2.77

Создание панелей для размещения интерфейса пользователя (UI) в аддонах Blender

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

Эта статья для Blender 2.79 и старших версий. Руководство для более поздних версий Blender смотрите здесь.

Весь доступный интерфейс пользователя Blender располагается на панелях, три из которых используются в работе чаще всего. Это T-панель – открывается и скрывается по нажатию клавиши t, N-панель – открывается и скрывается по нажатию на клавишу n, и панель свойств Properties – вызывается в главном меню любого окна выбором его типа как Properties.

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

Создание аддона для Blender

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

Пользовательский аддон в Blender
Пользовательский аддон в Blender

Подключение дополнений (аддонов)

С определенного момента работы для повышения ее скорости и удобства бывает необходим функционал, отсутствующий в базовой комплектации Blender. Для расширения возможностей программы сообществом пользователей Blender написано множество дополнений – аддонов. Нужное дополнение можно приобрести или скачать со специализированных сайтов Интернета. Получив необходимый аддон, нужно выполнить несколько действий для его подключения к Blender.

Для примера подключим к Blender дополнение, позволяющее по нажатию определенной комбинации клавиш выполнить рендер с показом сетки (wireframe-рендер).

Подключение внешней IDE PyCharm для написания скриптов в Blender

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

Внешняя IDE для написания скриптов в Blender
Внешняя IDE для написания скриптов в Blender

Создание резьбы

Для создания резьбовых соединений в Blender проще всего воспользоваться плагином, например Bolt Factory, который идет в стандартной комплектации. Однако возможностей плагина не всегда хватает, да и наложение Subdivision Surface на созданную модификатором резьбу дает не очень красивый результат. Впрочем, резьбу не сложно создать вручную.

Резьбовые соединения
Резьбовые соединения

Создадим высокополигональную резьбу, подходящую для рендера любого крупного плана.

Заполнение объема насыпанием

Часто в процессе моделирования встречается задача заполнить чем-нибудь определенный объем. Например это может быть банка с зернами кофе, сахарница с кусками сахара, мешочек с драгоценными камнями, коробка с винтами и гайками, ваза с конфетами, вариантов очень много.

Банка, заполненная предметами
Банка, заполненная предметами

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

Использование драйверов в нодах

В дереве нодов, созданном для разделения сторон модели планеты на “дневную” и “ночную”, присутствует один момент – при изменении положения источника освещения, его новые координаты нужно каждый раз заново указывать в нодах вручную. При быстрой настройке сцены это очень неудобно. Устранить данный недостаток можно, подключив систему “драйверов” Blender.

Использование драйверов в нодах
Использование драйверов в нодах

Разделение сторон планеты на “дневную” и “ночную”

У каждой планеты, в виде “из космоса”, существует две стороны: “дневная” – освещенная светом Солнца, и противоположная – “ночная”, на которую свет не попадает.

Разделение сторон Земли на "дневную" и "ночную"
Разделение сторон Земли на “дневную” и “ночную”

При моделировании сцены с планетой, не сложно добиться такого эффекта в освещении. Достаточно оставить в сцене только один источник света и расположить его с нужной стороны. Однако, полученный результат будет совсем не так хорош, как настоящие фотоснимки из космоса. Чтобы достичь большего сходства, на “ночную” сторону моделируемой планеты стоит положить соответствующую текстуру, с затемненной поверхностью и яркими огоньками – светом ночных мегаполисов.

Наложение текстуры на планету

Правильное наложение текстур на планеты, при создании космического 3D пейзажа, играет одну из ключевых ролей. Если текстура наложена криво, “едет” или на ней заметны четкие швы в местах стыков – хорошей картинки никогда не получится. В Blender есть удобный способ корректно расположить текстуру на поверхности планеты.

Текстура, корректно наложенная на планету
Текстура, корректно наложенная на планету