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

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

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

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

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

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

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

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

Читать далее «Создание аддона для Blender»

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

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

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

Читать далее «Подключение дополнений (аддонов)»

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

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

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

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

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

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

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

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

Читать далее «Создание резьбы»

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

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

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

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

Читать далее «Заполнение объема насыпанием»

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

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

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

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

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

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

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

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

Читать далее «Разделение сторон планеты на «дневную» и «ночную»»

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

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

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

Читать далее «Наложение текстуры на планету»

Моделирование игрального кубика

Создание модели шестигранного игрального кубика — так называемой «кости» или «дайса». Модель создается только «геометрией» и подойдет для рендера любого крупного плана.

Игральные кости созданные в Blender
Игральные кости, созданные в Blender

Читать далее «Моделирование игрального кубика»

Создание собственной студийной HDRI средствами Blender

Следом за принятым решением улучшить рендер с помощью HDRI, обычно сразу же встает вопрос — где ее взять? Можно конечно обратиться за помощью к Google-картинкам, однако далеко не все изображения, из найденных, авторы позволяют использовать без ограничений. Как быть? Выход прост — сделать собственную HDRI своими руками. Для этого в Blender есть все инструменты.

Студийная HDRI, созданная в Blender
Студийная HDRI, созданная в Blender

Читать далее «Создание собственной студийной HDRI средствами Blender»

Запекание карты displace с геометрии

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

Баскетбольный мяч без микрорельефа (слева и по центру) и с микрорельефом (справа)
Баскетбольный мяч без микрорельефа (слева и по центру) и с микрорельефом (справа)

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

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

Читать далее «Запекание карты displace с геометрии»

Запекание карты displace с процедурной текстуры

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

Микрорельеф поверхности можно формировать как геометрией («скульпт» или же точечное редактирование модели), так и картами — статическими (подготовленными в графическом редакторе) и процедурными (созданными в связке с нодами — текстурными генераторами).

Использование процедурных текстур для создания микрорельефа методом «дисплейса» обладает всеми плюсами (безразмерность, трехмерность, уникальность, настраиваемость) процедурных текстур, но также получает в наследство и их главный минус — скорость рендера снижается т.к. для генерации текстуры требуется производить дополнительные расчеты.

Микрорельеф царапин создан методом "дисплейса" с помощью процедурной генерации текстур
Микрорельеф царапин создан методом «дисплейса» с помощью процедурной генерации текстур

Чтобы увеличить скорость рендера, процедурную текстуру можно «запечь» — превратить в статическую растровую текстуру, которая в процессе рендера уже не будет требовать дополнительных ресурсов. Таким образом можно выиграть от 5 до 30 % (в зависимости от сложности сгенерированной карты) скорости рендера.

Читать далее «Запекание карты displace с процедурной текстуры»