Обзор Blender 3.4

Приветствую всех блендерщиков, не блендерщиков, и остальных, кто решил сюда заглянуть!

На повестке у нас релиз 3.4, включающий большое обновление геометрических нод, поменьше Python API, UV, Grease Pencil, Cycles и совсем по-немногу в остальных областях. Обновление заинтересует тех, кто работает с геонодами, а также со скриптами и всему, что к этому относится. Ну чтож, давайте начнем


Анимация и Риггинг

Обновление инструментов больше чем в 3.3. Был проведен семинар, в котором были намечены планы на развитие области анимации и риггинга до 2025 года. Его краткие результаты можно посмотреть на официальном канале блендера + текстовая версия. Еще можно глянуть выступление Брэда Кларка, посвященное исключительно развитию редактора NLA. А мы переходим к самим изменениям

Теперь панель повтора есть не только в редакторе графов, но и в остальных анимационных редакторах

Screenshot_20221106_162007.png

Иногда в панели могут появляться ненужные параметры вроде осей W или Z, это в данный момент исправляют, и возможно уже исправили в 3.5 на момент выхода этой статьи

Сделано множество различных твиков в NLA. Теперь все режимы экстраполяции корректно визуализируются, панель Edited Action убрана из NLA, так как сбивала столку, треку автоматически присваивается имя действия, если он был создан запушиванием действия

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

Screenshot_20221115_101446.png


Ядро

Появились две новые переменные среды - BLENDER_USER_RESOURCES и BLENDER_SYSTEM_RESOURCES. Они позволяют переопределять корневые папки с системными файлам и файлами пользователя. Ранее такая возможность была, но отдельно для скриптов, всяких файлов с данными (часть иконок и т.п.), способа переопределить сам главный каталог, чтобы не переопределять все по отдельности - не было

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

Для того, чтоб все заработало, мне пришлось установить переменную среды BLENDER_SYSTEM_RESOURCES (я заметил, что есть защита от дураков, если по пути нету ресурсов, то блендер будет загружать те, что лежат рядом с ним по умолчанию), естестна скопировать ресурсы по указанному пути, и потом перезагрузить ПК (не знаю, проблема ли это блендера или моей ОС)

Была переделана система синхронизации данных слоя. Благодаря этому ускорились некоторые вещи, преимущественно создающие множество объектов. Пример от автора изменения: скрипт, создающий 40 тысяч кубов. Время уменьшилось с 1 минуты до 7 секунд

Была проведена небольшая работа над шрифтами. Они меньше нагружают систему, и поддерживают больше различных языков/символов. Также по умолчанию и всегда шрифт предполагает, что его размер - 72 DPI. Это упрощает код, и делает указывание DPI в методе blf.size() устаревшим

Некоторые изменения в системе оценки (т.е. вычисления чего-либо, например финального вида объекта):

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

Введена гамма коррекция текста. Это делает его немного поярче и толще

font.png

Было улучшено создание превью для WebMP формата, теперь оно потребляет меньше памяти, и поддерживает динамический размер кадра


EEVEE & Вьюпорт

Теперь на пока что только Linux доступен рендеринг без графического интерфейса для EEVEE и WorkBench. Это необходимо например для рендер ферм. На этом.... все

Для тех, кто хочет большего - на данный момент разрабатывается переписывание Workbench. У модуля появилась план карта, составленная также на Blender Conference 2022. Реалтайм композитор, который будет работать во вьюпорте, все еще продолжает разрабатываться, и не попадает в 3.4, как хотели изначально. Было портировано много нод, но работа еще не закончена


Grease Pencil

Добавили два новых оператора, и улучшили старые:

  • Оператор Outline - конвертирует штрихи в периметр
  • Оператор Set Start Point - позволяет выставить начальную точку для циклических штрихов
  • Импорт SVG теперь может импортировать сразу несколько файлов за раз
  • Также новая опция для оператора перепроецирования и галочка в настройках кисти, которая сразу конвертирует штрихи в периметр при рисовании

Был добавлен новый алгоритм заполнения, который использует радиус вокруг двух точек, которые находятся на краях штриха

Появился новый модификатор под названием Outline, который создает периметр от вида из камеры

у Line Art появилась новая опция Forced Intersection. Была запрошена одной студией, которая активно использует Лайн арт. Она позволяет отрисовывать пересечения даже с объектами, у которых стоит опция No Intersection. Будет полезна в сложных сценах, где собственно и столкнулись с необходимостью в ней

У модификатора Time Offset появился новый режим Chain, который позволяет последовательно применять различные виды смещений

Screenshot_20221115_102239.png


Моделирование

Subdivision Surface работает быстрее, когда в меше есть отдельно висящие ребра

А теперь перейдем к самому сладкому - UV

Теперь UV скульпт работает полностью как надо - учитывается опция UV->Constain to image Bounds, при опции Lock Borders все работает корректно, также кисти Pinch и Relax учитывают припинненые вершин

У кисти Relax появился новый метод сглаживания Geometry, который учитывает меш, к которому принадлежит UV

Screenshot_20221106_220656.png

Было внесено несколько изменений в упаковку:

  • Упаковка лучше работает с плохой геометрией
  • Улучшение при работе с отступами между островами: появилось 3 опции, но самая главная - это Fraction, которая позволяет указывать табличные значения марджина для разных разрешений текстур, и все будет отрабатывать корректно

Screenshot_20221106_221555.png

Было добавлено 2 новых оператора для манипуляции с островами - Randomize Transform и Align Rotation

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

Различные мелкие изменения:

  • Теперь вращение учитывает опцию Constain to image Bounds, как и остальные виды трансформаций
  • Все виды проекций (Cube, Cylinder, Sphere, Smart UV projection) учитывают выделение, как и обычное разворачивание
  • Исправлены разные ошибки в алгоритме разворачивания, а также теперь он проглатывает кривую сетку с вырожденными треугольниками (например, треугольники с нулевой площадью)
  • У оператора Select Similar появились дополнительные опции для режима выделения островов - Area, Area 3D и Amount of Faces in Islands, названия говорят сами за себя


Ноды и Физика

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

Начнем с оценщика. 3.4 была наделена третьей его версией. В отличии от второго, третий оценщик стал лучше справляться с ситуациями, когда в дереве много-много легковесных нод вроде math или очень комплексные нодогруппы. Но самое главное - оценщик приобрел особенности, которые позволят реализовать такие продвинутые фичи как циклы и симуляции. Симуляции должны попасть в следующую версию - 3.5 минимум в простейшем виде, на данный момент можно скачать и протестировать сборку с начальной реализацией, переходим вот сюда и качаем geometry-nodes-simulation

Теперь нода Viewer работает так как должна - т.е. переопределяет собой вывод корневой нодогруппы

Теперь от использования ассет браузера даже очень есть смысл - в меню поиска отображаются нодогруппы, помеченные как ассеты, а в меню add строится иерархия, определенная пользователем в ассет браузере

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

Наверху нодогруппы появился счетчик того, сколько раз используется нодогруппа. Работает для всех видов нод

Screenshot_20221107_211002.png

Также появилась возможность дублировать нодогруппу вместе с объектом через shit + D. Это настраивается, как и все остальное, в Preferences->Editing->Duplicate Data

На этом изменения в UX и производительности закончились. Теперь изменения в самих нодах

У нас появился доступ к самой топологии меша и кривых. Например, мы можем вставить на вход индексы вершин, и на выходе получим индексы ребер, которые связаны с этими вершинами. Для всех таких нодов были созданы соответствующие категории в меню Add - Mesh/Curve Topology

Screenshot_20221107_211915.png

Нода Face Set Boundaries возвращает логическое значение для ребра, которое показывает, является ли ребро границей для двух разных наборов граней. В качестве наборов граней идет целое число, выступающее индексом набора

Screenshot_20221107_212702.png

Нода Transfer Attribute была разделена на 3 узко специализированные + появилась еще одна новая - Sample UV Surface. Из-за этого нарушена совместимость файлов со старыми версиями, будьте осторожны

Screenshot_20221107_213522.png

И две последние ноды - Self Object, которая просто немного облегчает работу, позволяя проще взять объект, на который помешены геоноды, и Distribute Point in Volume - распределение точек, но в волюметриках. Помимо этого было произведено несколько небольших улучшений в уже существующих нодах, но я не буду их затрагивать

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

Screenshot_20221107_214800.png


Пайплайн, Ассеты и I/O

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


Python API и редактор текста

Самое сочное - bpy теперь может идти полностью независимым python модулем, грубо говоря, он не нуждается в установке блендера, и вся остальная экосистема может работать с ним как с обычным питон модулем

Раньше было необходимо фактически запускать экземпляр блендера через консоль со специальными ключами, чтобы выполнить скрипт, теперь просто импортируете модуль через pip, и вуаля! Все без костылей и т.п. Новоиспеченный bpy требует Python 3.10, довольно свежую версию (по крайней мере она не соответствует версии Python из VFX Platform 2022), будьте внимательны

Разработчики обещают попозже сделать отдельную сборку, которая будет иметь совместимость с VFX Platform 2023 (однако по словам разработчиков, для техдиректоров студий и других технически подкованных пользователей не будет трудностью перекомпилировать блендер с Python 3.9, что и является тем, что надо сделать чтобы блендер был совместим с VFX Platform 2022)

Также небольшое тестирование через PyCharm

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

И третье - очень крупный рефакторинг структуры меша. Сама структура переписывается на использование массивов, и также появилось новое API для манипулирования данными. Хоть и не все портировано на новый API, но тем не менее он уже показывает гораздо более высокую скорость работы

В общем, тем, кто плотно работает с мешем и не только, стоит взять на заметку, и ознакомится более подробно со всеми нововведениями тут


Рендер и Cycles

За счет интегрирования библиотеки OpenPGL от Intel появился Path Guiding. Он помогает уменьшить шум в сценах, где например свет проникает сквозь щель, но судя по официальному примеру, и в сценах с каустикой. На данный момент поддерживается только на CPU, с будущей версией OpenPGL будет занесена и поддержка GPU

800px-Cycles3.4_path_guiding.png

Также изменения, касающееся шейдерной ноды Attribute, коснулись и Cycles, что не может не радовать

Была добавлена опция для запекания отражений от вида активной камеры

Screenshot_20221107_222409.png

Немножко улучшили семплинг, добавив новый паттерн Sobol-Burley, а также исправив ошибку в старом алгоритме Multi-Jitter

Screenshot_20221107_222605.png

была обновлена используемая версия OSL до 1.12.6, это принесло небольшие изменения, с которыми можно ознакомится тут

Также разработчики посоветовали владельцам карт от Intel и AMD обновить драйвера, это решает ряд различных багов


Скульпт, текстурирование, текстуры

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

Были добавлены новые опции автомаскирования - по Cavity (см эффект во вьюпорте) и по нормалям, а также был немного переработан UI, и теперь все опции автомаскировки сгруппированы в одном выпадающем меню

Также небольшое дополнение для рисования весов - теперь режим старается учитывать все модификаторы, которые не изменяют топологию


UI

В оутлайнере был удален поиск по именам в режиме Library Overrides/Hierarhies, но взамен это позволило решить серьезнейшие проблемы с производительностью (до этого изменения и еще некоторой работы над производительностью в файлах проекта Heist в особо тяжелых случаях время отклика достигало полминуты)

Оутлайнер больше не отсекает нумерацию элементов, если их больше 99

D16284_-_after.png

Каретка при наборе текста в 3д вьюпорте теперь выглядит гораздо лучше

Screenshot_20221107_225750.png

Также различные мелкие вправки в разных областях


VFX и Видео

Была добавлена поддержка кодека FFMpeg AV1


Следующий релиз

На момент выхода 3.4 следующая версия - 3.5, будет находится в активной разработке. Ее релиз будет намечен на 15 марта

Screenshot_20221107_230019.png


На этом все. Читайте с удовольствием, делитесь статьей с другими. Всем спасибо!

793 0 850 16
10
2022-12-08
И как обычно прийдут нытики которые скажет "это все не надо" в реальной работе оно фу
2022-12-08
Копья Мастер (SpearMasters)И как обычно прийдут нытики которые скажет "это все не надо" в реальной работе оно фу
Увы, такие люди всегда будут( чтобы там не добавляли. Их наверно только кнопка "сделать красиво" устроит)
2022-12-08
Александр ДемченковУвы, такие люди всегда будут( чтобы там не добавляли. Их наверно только кнопка "сделать красиво" устроит)

а потом нейросети создают кнопку "сделать красиво" и люди теряют работу)
2022-12-08
Копья Мастер (SpearMasters)
а потом нейросети создают кнопку "сделать красиво" и люди теряют работу)

Я общался с одним человеком по этой теме. Он сказал, что чтобы там не говорили, какими-бы громкими не были пресс релизы, еще далеко до того, чтоб нейросети смогли кого-то заменить. Пока что лишь это максимум еще один инструмент для художника
2022-12-08
Александр Демченков
Я общался с одним человеком по этой теме. Он сказал, что чтобы там не говорили, какими-бы громкими не были пресс релизы, еще далеко до того, чтоб нейросети смогли кого-то заменить. Пока что лишь это максимум еще один инструмент для художника

Ну это была шутка про кнопку "хорошо".

А если серьезно то страшны не нейросети сейчас, а скорость развития технологий.

5 лет назад когда я был в универе они рисовали кривые кляксы и всем было смешно
два года назад еле еле научились совмещать 2-3 картинки в кривой коллаж
год назад смогли выдавать картинки +- какого то качества и пугать людей
за последние 2 месяца обросли инструментарием

И весь вопрос в том сколько продлится "Пока что"
2022-12-08
А что за Path Guiding в Cycles? Нажал и всё скукожилось.) Хотя подсказка обещала сделать быстро и красиво.))
2022-12-08
ну новый AI Renderer по-сути и есть "сделать красиво"
2022-12-08
ProcXel.AА что за Path Guiding в Cycles? Нажал и всё скукожилось.) Хотя подсказка обещала сделать быстро и красиво.))

Ну, насколько я понял от своих тестов, это все таки очень узконаправленный инструмент для света из щелей и тому подобного, когда дефолтный алгоритм не справляется
2022-12-10
Отличный обзор. Автору - респект.
2022-12-23
Александр Демченков
Я общался с одним человеком по этой теме. Он сказал, что чтобы там не говорили, какими-бы громкими не были пресс релизы, еще далеко до того, чтоб нейросети смогли кого-то заменить. Пока что лишь это максимум еще один инструмент для художника

Хоть бы этот "один человек"оказался прав…
Я, конечно, не луддит, но весь этот ai-прорыв беспокоит меня. Напрягает.
Класс, если нейронки станут мощным инструментом. И беда, если конкурентом.
Нам этих скайнетов не забороть за эффективность
RENDER.RU