Add-ons

BIS – развитие. Нужно ли?

Я открыл ранний доступ к аддону Blender Interplanety Storage (BIS), хотя он все еще находится на стадии разработки.

Вообще это первый аддон, который я планировал сделать хоть как-то коммерчески оправданным. В любом случае, хоть какое-то обеспечение для аддона необходимо, ведь аддон не локальный и без хоть какой-то оправданности просто не имеет смысла держать под него сервер. Изначальная идея коммерциализиции была в ведении месячной подписки на использование аддона. Так я собирался сделать, когда окончательно закончу аддон, отработаю поддержку всех видов нодов и решу большинство возникающих вопросов его работы. Толко после доработки и настройки всего этого я собирался открыть аддон для пользователей.

Мотивом же раннего открытия послужило обсуждение в ВК-группе Blender в ходе которого была высказана мысль, что такой аддон на коммерческой основе при наличии Blender Cloud или аддона VX Matlib не нужен. Говоря простыми словами, пользователи не будут оплачивать то, что можно получить иным способом бесплатно.

Отсюда первый, и самый главный, вопрос – нужен ли вообще такой аддон? В платной версии или в бесплатной? Или может быть большинству вполне хватает существующих решений?

BIS – Онлайн библиотека материалов для Blender

Blender Interplanety Storage (BIS) – аддон для графического 3D-редактора Blender, представляющий собой онлайн библиотеку для хранения материалов (шейдеров) и удобного доступа к ним. С помощью аддона BIS можно сохранять материалы (группы нодов) в персональное онлайн хранилище. Сохраненные материалы доступны через аддон с любого компьютера.

Подключение к базе данных MySQL из Blender

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

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

Аддон PartitionRender v.0.0.5

Обновление аддона PartitionRender до версии 0.0.5

  • Добавлен флажок SaveMultilayer

Если флажок установлен, промежуточные результаты рендера сохраняются в формате OpenEXR Multilayer со всеми слоями и пассами для возможного дальнейшего использования. Автоматически собирается только финальное изображение. Сборку отдельных пассов при необходимости нужно проводить вручную.

PartitonRender v.0.05

Аддон PartitionRender v.0.0.4

Обновление аддона PartitionRender до версии 0.0.4

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

Аддон PartitionRender v.0.0.3

Обновление аддона PartitionRender до версии 0.0.3

  • Добавлены кнопки Reset и Clear.
    • Reset – сброс текущей партиции на начальную.
    • Clear – сброс с удалением всех сохраненных партиций.
  • При установке/снятии флажка Use Range происходит сброс партиции на начальную.
Аддон PartitionRender v.0.0.3
Аддон PartitionRender v.0.0.3

Аддон PartitionRender 0.0.2

Обновление аддона PartitionRender до версии 0.0.2

  • Добавлена возможность задавать для рендера только ограниченный ряд партиций.
  • Исправлена ошибка, проявляющаяся при запуске при несохраненном blender-файле. Если blender-файл не сохранен, все временные файлы сохраняются в системной временной директории.
Аддон PartitionRender 0.0.2
Аддон PartitionRender 0.0.2

Аддон PartitionRender

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

Например: рендер целого изображения занимает 12 часов. Но нет возможности не выключать компьютер все это время, однако возможно оставлять его включенным по 5 часов с перерывами. Если прервать рендер для выключения компьютера – при следующем запуске рендер начнется с начала и весь достигнутый прогресс будет потерян. Аддон PartitionRender позволяет разбивать картинку на несколько блоков – партиций, каждая из которых рендерится отдельно. Выбрав разделение по X и Y на 2 части, изображение будет разделено на 4 блока. Каждый из которых будет рендерится около 3 часов, что укладывается в отведенное на работу время. Каждая отрендеренная партиция сохраняется. При последующем (после выключения компьютера) запуске рендера, работа автоматически продолжится с той партиции, на которой произошел перерыв. После завершения рендера всех партиций, они автоматически собираются в композитинге в целое изображение.

Удаление всех нодов из окна композитинга через скрипт

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

 

Символьные ссылки, как средство повторного использования кода при разработке аддонов Blender

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

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

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