Blender — профессиональное свободное и открытое программное обеспечение для создания трёхмерной компьютерной графики, включающее в себя средства моделирования, скульптинга, анимации, симуляции, рендеринга, постобработки и монтажа видео со звуком, компоновки с помощью «узлов», а также создания 2D-анимаций.

Дизайн слоистых текстур

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

Блок данных текстуры

Дизайн вращается вокруг переработанного блока данных Texture. Этот блок данных содержит узлы текстуры и список каналов, которые он выводит. Типичным набором каналов для затенения PBR являются базовый цвет, шероховатость, металлик и карта нормалей. Система не ограничивается этим, и произвольные выходные данные возможны для различных типов BSDF или использования в других контекстах, таких как кисти и узлы геометрии.

Текстурные слои

Свойства текстуры для блока данных текстуры показывают стек слоев текстуры. Слои процедурных текстур можно перетаскивать из браузера ресурсов, а новые слои изображений или атрибутов можно создавать для ручной росписи. Слои работают аналогично обычным приложениям для редактирования 2D-изображений. Будут поддерживаться режимы наложения, маски, изменение порядка, скрытие, слияние и модификаторы. Выбор текстуры изображения или атрибута цвета позволит рисовать на нем в окне 3D-просмотра. Разница в том, что каждый слой состоит из всех каналов, определенных для текстуры (или подмножества). Смешивание, маски и модификаторы одновременно влияют на все каналы в слое.

Узлы текстуры

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

Набор доступных узлов будет:

  • Общие узлы, такие как Math, Mix, Image Texture, Noise Texture;
  • Узлы шейдера, такие как геометрия, координата текстуры, атрибут;
  • Узлы текстуры, такие как Blur, Filter;
  • Узел слоя для объединения нескольких каналов в слой;
  • Узел Layer Stack для объединения слоев;
  • Узел текстуры для связи с существующим ресурсом блока данных текстуры.

Существует новый тип сокета уровня, который объединяет несколько каналов. Такие узлы, как Mix и Blur, работают с несколькими типами сокетов, включая сокеты слоев, где они выполняют одну и ту же операцию на всех каналах.

Выпечка

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

  • Экспорт текстур PBR в игровой движок. Был бы рабочий процесс для быстрого запекания всех соответствующих текстурных каналов до текстур изображения;
  • Для многослойных текстур запекание важно для эффективного рендеринга в Cycles и Eevee;
  • Некоторые ноды, такие как Blur, Filter и другие, вообще требуют запекания для работы, так как они не могут быть реализованы эффективно или вообще в рендерерах;
  • Запекание процедурных текстурных слоев в текстуру изображения или атрибут цвета для продолжения рисования вручную.

Должен быть простой способ запечь все текстуры в сцене для пользователей, а также экспортеров и  изуализаторов, которым они нужны.

Материалы

Использование текстурных каналов в материале осуществляется путем добавления узла Texture Channels, который выводит все каналы текстуры, и связывания этих каналов с соответствующими входными данными Principled BSDF. В большинстве случаев такие настройки узлов автоматически настраиваются как часть материала по умолчанию.

Узел «Каналы текстуры» имеет следующие настройки:

  • Входные данные узла, созданные в узлах текстуры с узлом группового ввода (аналогично узлам геометрии). Это делает текстуры настраиваемыми с помощью параметров, имен атрибутов или текстур изображений;
  • Возможность оценить текстурные каналы Procedural или Baked;
  • Если запечено, ссылка на один блок данных изображения, в который запекаются каналы.

Запеченные изображения

Блок данных изображения будет расширен, чтобы содержать набор текстурных каналов. С многослойными файлами OpenEXR это происходит естественным образом, все каналы текстур сохраняются в одном файле, подобно проходам рендеринга. Для файлов других форматов для каждого канала текстуры используется другое имя файла, или несколько каналов текстуры упаковываются вместе в каналы RGBA с меньшим количеством файлов, как это обычно бывает в играх. При отображении блока данных изображения в редакторе изображений меню позволяет пролистывать каналы текстуры точно так же, как слои и проходы рендеринга. Запекание нескольких сеток или материалов в одно изображение становится простым. Свяжите один и тот же блок данных Image с узлом Texture Channels во всех материалах, и Blender автоматически запечет все вместе, предполагая, что UV-карты не перекрываются.

Ресурсы

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

Обратная связь

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

Несколько вопросов, над которыми мы думаем:

  • Является ли создание единого блока данных текстуры для многих применений хорошей идеей? Или это делает рабочий процесс слишком нечетким? Есть ли лучшая альтернатива? Если нет, то как именно будет работать фильтрация соответствующих текстурных ресурсов?
  • Есть ли лучшие способы интеграции текстур в материалы, чем через узел? Стоит ли иметь тип материала, который напрямую использует блок данных текстуры и вообще не имеет узлов, и потенциально даже встраивает узлы текстуры, чтобы не было отдельного блока данных?
  • С помощью этой системы пользователи теперь могут делать одно и то же как в узлах текстуры, так и в узлах шейдера. Как пользователь решает выбрать тот или иной вариант, можно ли что-то сделать для этого?
  • Каков хороший рабочий процесс запекания в сцене с потенциально большим количеством объектов с большим количеством текстурных слоев? В специальном приложении для текстурирования есть четкий этап экспорта, но как мы можем сделать хороший рабочий процесс в Blender, где пользователи должны уметь запекать текстуры, прежде чем переходить к следующему объекту?
  • Некоторые текстуры могут оставаться процедурными, в то время как другие должны быть запечены, чтобы работать вообще. Как мы можем сообщить об этом пользователям? Дело в наличии переключателя Procedural / Baked для текстур, которыми можно управлять вручную, или в этом есть что-то еще?
  • Как мы определяем, какой модификатор находится в стеке слоев? Концептуально это может быть просто любой узел текстуры, который имеет входной и выходной слой, но как нам найти набор таких узлов и групп узлов, которые хорошо работают в пользовательском интерфейсе более высокого уровня? Возможно, какие-то метаданные активов в группах узлов?
  • Можем ли мы улучшить название блока данных Texture или новые запланированные узлы?

СКАЧАТЬ


Версия программы: 3.1.2

Размер файла: 203 Мб.

Download / Скачать для Windows 64 бит

Скачать ФАЙЛ APK WhatsApp

disk.yandex.ru/d/nE6j-y_VBb_emg

(скопируйте текст ссылки и вставьте в адресной строке браузера)


Версия программы: 3.1.2

Размер файла: 178 Мб

Download / Скачать для Linux 64 бит

Скачать ФАЙЛ APK WhatsApp

disk.yandex.ru/d/4rnqoaajplnwUw

(скопируйте текст ссылки и вставьте в адресной строке браузера)

КОМПЬЮТЕРНАЯ ПОМОЩЬ Online

 

КАК ЭТО РАБОТАЕТ? Чтобы воспользоваться услугой дистанционной помощи, Вам необходимо скачать и установить программу TeamViewer на свое устройство. После запуска программы сообщите нам номер ID, выданный программой. Наш специалист дистанционно устранит неполадки на Вашем устройстве. Оплата в зависимости от сложности выполнения задачи может быть постоплатная либо предоплатная. Заявки пишите на емайл: Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в вашем браузере должен быть включен Javascript.

 

ХОТИТЕ ДОБАВИТЬ ПРОГРАММУ?

Напишите нам на почту Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в вашем браузере должен быть включен Javascript.



РАДИО ОНЛАЙН (Все радиостанции)