BIS v.1.0.0 — Релиз

Релиз аддона BlS (Blender Interplanety Storage).

Наконец-то довел аддон до релиза!

  • Приведена в порядок серверная часть хранилища.
  • Сделано собственно внешнее и внутреннее оформление сайта BIS: https://bis.interplanety.org/
  • Исправлен и покорректирован код самого аддона.
  • Обновлена страничка с описанием BIS: https://b3d.interplanety.org/bis/
  • Вычещен ряд мелких багов и ошибок в работе аддона.
Download

Читать далее «BIS v.1.0.0 — Релиз»

Аддон BIS v.0.0.3

Еще одно промежуточное обновление аддона BlS (Blender Interplanety Storage).

Аддон практически в предрелизном состоянии.

  • Поддерживаются все ноды Cycles, включая script и вложенные группы.
  • Также добавлена возможность сохранения скриптов/текстов из Text Editor.

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

Download

Активные объекты

Как обращаться через Blender Python API к активным (выделенным) объектам при написании скриптов/аддонов:

  1. Активное окно (в котором происходит действие):

  1. Активная сцена:

  1. Активный (выделенный) меш:

  1. Активный (выделенный) нод материала (в окне NODE_EDITOR):

  1. Активный (выделенный) нод материала (в окне COMPOSITING):

  1. Текущий текст в окне TEXT_EDITOR:

  1. Текущая развертка (UV-Map):

Читать далее «Активные объекты»

Аддон BIS v.0.0.2

Промежуточное обновление аддона BlS (Blender Interplanety Storage) до версии 0.0.2.

  • На текущий момент сделана поддержка для всех нодов из групп (Shift + a): Input, Output, Shader, Texture, Color.
Download

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

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

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

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

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

Читать далее «BIS — развитие. Нужно ли?»

BIS — Онлайн хранилище материалов для Blender

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

 

Download

Читать далее «BIS — Онлайн хранилище материалов для Blender»

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

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

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

Читать далее «Подключение к базе данных MySQL из Blender»

Аддон PartitionRender v.0.0.5

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

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

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

PartitonRender v.0.05
Download

Аддон PartitionRender v.0.0.4

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

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

Аддон 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
Download

Аддон PartitionRender 0.0.2

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

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

Аддон PartitionRender

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

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

Download

Аддон бесплатный, с открытым (open source) кодом. Если вы хотите поддержать проект — вы можете приобрести аддон за любую удобную цену, или укажите цену 0, чтобы скачать его бесплатно.

Читать далее «Аддон PartitionRender»

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

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

 

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

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

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

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

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

Аддон Blender: Wire

Аддон для рендера объектов с показом сетки (wireframe).

Download

Аддон бесплатный, с открытым (open source) кодом. Если вы хотите поддержать проект — вы можете приобрести аддон за любую удобную цену, или укажите цену 0, чтобы скачать его бесплатно.

Читать далее «Аддон Blender: Wire»

Создание многофайлового аддона

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

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

Мультифайловый аддон
Мультифайловый аддон

Читать далее «Создание многофайлового аддона»

Как отследить ошибку, если Blender закрывается вместе с консолью

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

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

Запуск Blender из интерпретатора командной строки cmd
Запуск Blender из интерпретатора командной строки cmd

Для запуска Blender из интерпретатора командной строки нужно:

  1. Запустить сам интерпретатор («Пуск» — Выполнить — cmd)
  2. В окне cmd ввести полный путь к установленному Blender. Например: C:\"Program Files"\blender-2.78a-windows64\blender.exe

Часть пути, если в нем есть пробелы, нужно заключить в двойные кавычки — как «Programm Files» в примере.

Аддон Accurate Render Border 0.0.2

Обновление аддона Accurate Render Border до версии 0.0.2.

Добавлен чекбокс Width/Height, переключающий установку рамки рендера из режима «координаты левого верхнего угла — координаты правого нижнего угла» в режим «координаты левого верхнего угла — ширина + высота рамки».

Аддон Accurate Render Border 0.0.2.
Аддон Accurate Render Border 0.0.2.
Download

Аддон Accurate Render Border

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

После установки аддона, в Т-панель добавляется дополнительная вкладка «ARB», выбрав которую можно ввести координаты левого верхнего и правого нижнего углов для рамки рендера в пикселах и, нажатием на кнопку Set Accurate Render Border, установить рамку в соответствии с указанными значениями. Координаты устанавливаются относительно размеров готового рендера (Properties — Render — Dimensions — Resolution).

Download

Аддон бесплатный, с открытым (open source) кодом. Если вы хотите поддержать проект — вы можете приобрести аддон за любую удобную цену, или укажите цену 0, чтобы скачать его бесплатно.

Читать далее «Аддон Accurate Render Border»

Создание в аддонах Blender переменных с сохраняемыми значениями

Все определенные пользователем классы (панели, операторы), если они зарегистрированы в API, существуют только пока запущен сам графический редактор Blender. В момент закрытия программы все они удаляются из памяти. Поэтому, даже если внутри пользовательских классов определены какие-то переменные, все значения этих переменных при перезапуске программы будут сброшены.

Однако, иногда бывает необходимо использовать в аддоне Blender переменную, значение которой не будет потеряно в процессе перезапуска программы. Чтобы переменная сохраняла свое значение, нужно создать ее в виде специального класса — свойства (property), и присоединить к какому-либо объекту, свойства которого сохраняются в *.blend файле.

Читать далее «Создание в аддонах Blender переменных с сохраняемыми значениями»

Создание панелей для размещения интерфейса пользователя (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»