Как отрендерить анимацию в блендере

Рендер и обработка в Blender

Привет, меня зовут Сергей Мингулин, я — 3D-художник и преподаватель курса по созданию стилизованных 3D-персонажей в XYZ. Посмотреть на мои проекты можно здесь. Это — третья статья из цикла о визуализации в Blender.

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

Как я уже рассказывал в предыдущем материале, чтобы сохранить volume иллициев и избежать некорректного отображения, мы рендерим в Cycles.

Заходим во вкладку Render Properties. В разделе Sampling мы можем контролировать качество финального рендера, изменяя числовое значение в строке Render. Но это прямо влияет на производительность и скорость рендера, так что в своей работе я обычно выставляю значение для Render — на 1200. При этом настройки Max Bounces в разделе Light Paths остаются практически без изменений.

Единственный параметр, который мы незначительно меняем — это Volume (ставим «2» вместо «0»). Это сильнее нагрузит систему, но улучшит отображение тумана и свечения.

Вторая вкладка, которая нас интересует, — Output Properties. Выставляем разрешение «2000». Этого будет достаточно для портфолио на Artstation, с учётом того, что алгоритмы сайта «пожмут» итоговую картинку.

Наконец, перед рендером включаем во вкладке View Layer Properties необходимые renderpass`ы в разделах Data, Light, Cryptomatte. И вместо Denoising, который находится в самом низу этой же вкладке, активируем Denoising Data из раздела Data.

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

По умолчанию будет доступен только нод Render Layers, в котором активны ранее выбранные нами аутпуты. Для этого мы и включали все те настройки на предыдущем этапе.

Помимо того, что количество сэмплов влияет на скорость рендера, от него зависит «шумность» картинки. Вот так, к примеру, выглядит в нашем случае отрендеренное изображение, если установить значение в 300 сэмплов.

Избавиться от шумов можно несколькими способами, самый простой из которых — установить большее значение сэмплов. Оптимальное количество сэмплов зависит от конкретной сцены. В моём случае достаточно 1200.

Чем больше освещён объект, тем меньше шумов. Больше всего их появляется в затенённых местах (см. пример выше).

Конечно, получить качественную картинку без денойза можно, установив, к примеру, 2000 сэмплов. Но всё зависит от ограничений железа и времени, которое вы можете потратить на ожидание.

Второй способ — тот самый денойз. Нажимаем в композиторе «Shift+A» и через поиск вводим «Denoise». Теперь появившийся нод подключаем к Render Layers.

Если нажать «Shift+Ctrl+лкм», изначальное изображение сменится на превью выбранного нода. Так можно просматривать каждый выбранный нод в отдельности, — например, изображение после денойза, АО, тени и т.д.

После того, как избавились от шумов, нужно настроить свечение. Соединяем аутпут Image денойза с нодом Glare, который вызывается также через панель Search. Нажимаем «Shift+Ctrl+лкм», и теперь можем настраивать, ориентируясь на превью.

По умолчанию в Glare стоит Streaks — режим, в котором свет тянется от источника полосами. Переключаемся на Fog Glow и получаем более-менее правдоподобное свечение.

Здесь же есть следующие настройки:

4. Size — интенсивность излучения (от 6 до 9)

Cryptomatte — ещё один полезный нод, который представляет собой аналог PhotoShop в блендере и работает по принципу масок. Чтобы его использовать, необходимо перед рендером активировать соответствующие настройки в панели справа.

Далее вызываем нод через Search и подключаем к Render Layers (CryptoMaterial и Image).

Источник

Рендер и обработка в Blender

Привет, меня зовут Сергей Мингулин, я — 3D-художник и преподаватель курса по созданию стилизованных 3D-персонажей в XYZ. Посмотреть на мои проекты можно здесь. Это — третья статья из цикла о визуализации в Blender.

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

Настройка рендера

Как я уже рассказывал в предыдущем материале, чтобы сохранить volume иллициев и избежать некорректного отображения, мы рендерим в Cycles.

Заходим во вкладку Render Properties. В разделе Sampling мы можем контролировать качество финального рендера, изменяя числовое значение в строке Render. Но это прямо влияет на производительность и скорость рендера, так что в своей работе я обычно выставляю значение для Render — на 1200. При этом настройки Max Bounces в разделе Light Paths остаются практически без изменений.

Единственный параметр, который мы незначительно меняем — это Volume (ставим «2» вместо «0»). Это сильнее нагрузит систему, но улучшит отображение тумана и свечения.

Вторая вкладка, которая нас интересует, — Output Properties. Выставляем разрешение «2000». Этого будет достаточно для портфолио на Artstation, с учётом того, что алгоритмы сайта «пожмут» итоговую картинку.

Наконец, перед рендером включаем во вкладке View Layer Properties необходимые renderpass`ы в разделах Data, Light, Cryptomatte. И вместо Denoising, который находится в самом низу этой же вкладке, активируем Denoising Data из раздела Data.

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

По умолчанию будет доступен только нод Render Layers, в котором активны ранее выбранные нами аутпуты. Для этого мы и включали все те настройки на предыдущем этапе.

Обработка в Blender после рендера

Помимо того, что количество сэмплов влияет на скорость рендера, от него зависит «шумность» картинки. Вот так, к примеру, выглядит в нашем случае отрендеренное изображение, если установить значение в 300 сэмплов.

Избавиться от шумов можно несколькими способами, самый простой из которых — установить большее значение сэмплов. Оптимальное количество сэмплов зависит от конкретной сцены. В моём случае достаточно 1200.

Чем больше освещён объект, тем меньше шумов. Больше всего их появляется в затенённых местах (см. пример выше).

Конечно, получить качественную картинку без денойза можно, установив, к примеру, 2000 сэмплов. Но всё зависит от ограничений железа и времени, которое вы можете потратить на ожидание.

Второй способ — тот самый денойз. Нажимаем в композиторе «Shift+A» и через поиск вводим «Denoise». Теперь появившийся нод подключаем к Render Layers.

Если нажать «Shift+Ctrl+лкм», изначальное изображение сменится на превью выбранного нода. Так можно просматривать каждый выбранный нод в отдельности, — например, изображение после денойза, АО, тени и т.д.

После того, как избавились от шумов, нужно настроить свечение. Соединяем аутпут Image денойза с нодом Glare, который вызывается также через панель Search. Нажимаем «Shift+Ctrl+лкм», и теперь можем настраивать, ориентируясь на превью.

По умолчанию в Glare стоит Streaks — режим, в котором свет тянется от источника полосами. Переключаемся на Fog Glow и получаем более-менее правдоподобное свечение.

Здесь же есть следующие настройки:

4. Size — интенсивность излучения (от 6 до 9)

Cryptomatte — ещё один полезный нод, который представляет собой аналог PhotoShop в блендере и работает по принципу масок. Чтобы его использовать, необходимо перед рендером активировать соответствующие настройки в панели справа.

Далее вызываем нод через Search и подключаем к Render Layers (CryptoMaterial и Image).

Здесь у нас есть 3 режима:

Image — изображение, полученное на выходе с рендера;

Matte — показ выбранной области;

Pick — выбор;

Переключаемся между ними, нажимая «Shift+Ctrl+лкм».

В режиме Pick выбираем инструмент «пипетка» (Add) и щёлкаем область, которую хотим изменить. Теперь переходим в режим Matte: выбранный нами фон отобразился серым и мы можем работать с ним, например, подкрутив контраст (RGB Curves) или настроив цвет (Hue Saturation Value, Color ).

Закончив, миксуем итоговый Image с рендером. Вот так, например, выглядит изменённый фон:

Особенности плёночного изображения

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

Плёночное фото имеет:

1) меньший динамический диапазон в сравнении с рендером;

2) искажения, связанные с особенностями оптики;

3) искажения, появившиеся во время проявки и сканирования.

Кроме того, любая оптика имеет своё фокусное расстояние и светосилу, от которых зависит глубина резкости кадра.

Чтобы кадр вышел достоверным в воспроизведении плёночного снимка, возвращаемся на этап до рендера и в настройках камеры выставляем нужное значение Focal Lenght (фокусное расстояние), активируем Depth of Field.

В Depth of Field нас интересует настройка Distance, которую мы можем изменить вручную в попытке поймать в фокус нужный объект или зону кадра, либо выбрать пипеткой конкретный объект, который должен остаться резким.

Ещё один способ настроить фокус на части объекта — создать объект Empty и разместить в нужной точке, после чего выбрать его в Focus Object.

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

Итак, у плёночных фотоаппаратов динамический диапазон меньше, чем у цифрового кадра. Это значит, что в тени и на свету изображение не будет таким же проработанным, как в рендере. Кроме того, точки чёрного и белого в случае плёнки смещены.

Добиться аналогичного эффекта можно через compositor в самом Blender с помощью RGB Curves, или же в Photoshop.

Кроме того, плёночный фотоаппарат неизбежно даёт ряд искажений. Чтобы сымитировать их, вызываем в композиторе Lens Distortion и подключаем Image.

Нас интересуют следующие настройки:

Jitter — даёт эффект зернистости плёнки.

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

В Photoshop, чтобы добиться зернистости, действуем следующим образом:

Distort — настройка искажения «линзы».

С ней нужно быть аккуратными. Чтобы добиться эффекта съёмки на плёночную камеру, ставим совсем небольшие значения («0,005»), иначе рискуем получить эффект рыбьего глаза. Соответственно, выставляя отрицательное значение параметра, получаем противоположный эффект.

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

Хроматическая аберрация может быть более или менее выраженной в зависимости от качества оптики. Фотографы, как правило, стараются свести её к минимуму. Нам такое искажение нужно, наоборот, для придания большего реализма. И здесь мы тоже имеем дело с небольшими значениями ( «0,02»).

Важно: настройка Dispersion также даёт небольшое искажение «линзы», растягивая каналы. Применяя этот эффект, не забываем брать изображение с «запасом» по краям.

Следующая особенность фотографии связана с фокусным расстоянием. Это боке — размытие объектов, источников света и/или бликов, которые остались вне фокуса. В результате получаем круги или многогранники, размер и форма которых зависят от глубины резкости и количества пластин в диафрагме.

Контроль над формой боке внутри Blender происходит в этой вкладке при выбранном объекте камеры:

Blades отвечает за количество лепестков в диафрагме, Rotation — за поворот этих лепестков, Ratio — за коэффициент искажения, призванный имитировать анаморфный эффект боке. Значение меньше 1 растягивает боке по горизонтали, «1» означает «без искажения», а значение больше единицы приведёт к вертикальному растяжению.

Здесь, как и в случае с зернистостью, можно найти готовые шаблоны в интернете, но в таком случае результат будет малоконтролируемым. А можно, так как мы имеем дело с физически корректным рендером, создать частицы в самом блендере.

Для этого создаём бокс: нажимаем «Shift+A» и выбираем Mesh — Cube. В этом ограниченном объёме мы создадим партиклы, которые и будут отражать свет от источника и размываться в боке.

Следующим шагом, также с помощью хоткея «Shift+A», выбираем и создаём айкосферу (Icosphere). И выставляем «1» в значениях Subdivision и Radius. Большего нам не требуется, так как объект всё равно будет размыт в итоге, а сцена уже тяжёлая сама по себе.

Хотя, даже при таких значениях объект вышел слишком большой. Так что после я выставил «0,01» во всех осях Dimensions. Дальше, при желании, мы можем настроить форму получившегося объекта и сдвинуть вертексы (здесь всё зависит от ваших вкусов и задач).

Теперь заходим во вкладку Particle Properties, включаем Hair и ставим Emit From Volume. Выбираем Render As Object во вкладке Render и назначаем объектом созданную айкосферу.

Параметр Scale отвечает за размер объектов и по своей сути является множителем для заданного изначально объекта. Ставим «0,1».

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

В этой же панели нас интересуют Emission, от значения Number которого зависит плотность заполнения куба пылью, и в Source — Jittering Amount, который отвечает за равномерность заполнения. Соответственно, чем больше Number, тем плотнее забит куб, а чем выше Jittering Amount, тем более разнообразно расстояние между объектами.

Активируем Rotation: Randomize, Phase и Randomize Phase отвечают за рандомный поворот объектов по всем осям и здесь нам не нужны большие значения. Ставим ненамного отличающиеся от нуля. В Orientation Axis выбираем Normal.

Наш куб заполняется:

Точки на скриншоте не шумы, а заполнившие куб айкосферы.

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

Здесь можно видеть разные этапы обработки и как на них изменялось боке.

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

Хотя, есть и такие, которые действительно проще создать в PhotoShop.

Виньетирование — это затемнение по краям кадра, появление которого зависит от размера диафрагмы аппарата. Чем сильнее та открыта, тем больше темноты по краям кадра.

Чтобы его сымитировать, создаём слой и выбираем на панеле слева Gradient Tool, настраиваем цвета и ставим галочку Reverse. После чего задаём радиус нашему затемнению.

Применяем к слою Multiply и уменьшаем прозрачность.

Ещё одна особенность плёночной фотографии — пыль. Она появляется при сканировании и, можно сказать, является такой же отличительной чертой реальной фотографии, как искажение линзы или хроматическая аберрация. Пыль можно также, как и зерно, скачать из интернета и добавить в PhotoShop.

Напоминаю, так в итоге выглядит готовое изображение, большая часть эффектов которого была исполнена в Blender:

Если хочешь научиться создавать стилизованных 3D-персонажей — записывайся на курс STYL. Стартуем 1 октября — если записаться сейчас, успеешь получить скидку.

Источник

Введение в анимацию в Blender

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

В этом уроке рассматривается создание простой анимации, работа с редактором Timeline и получение готового видеофайла.

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

Теперь же имеется возможность «рисовать» картинки только для избранных, то есть ключевых, кадров. Все, что между ними, программа просчитывает сама. Например, в первом кадре куб находится в точке с координатами (0, 0, 0). Переместившись по временной шкале в 20-й кадр, мы помещаем куб в точку (100, 0, 100) пространства. На этом все. Программа либо будет перемещать куб по прямой, либо по указанной нами траектории. Нам не надо для каждого кадра со 2-го по 19-й указывать промежуточные положения куба.

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

В Blender есть специальный редактор Timeline, позволяющий перемещаться по кадрам, создавать ключевые кадры и др. Кадр – это момент или короткий отрезок времени, для времени играет ту же роль, что точка для пространства. Однако у кадра все же есть длительность. Она зависит от того, сколько «прокручивается» кадров в секунду. В случае 60-ти кадров в секунду (60 FPS) кадр будет короче, чем в случае 24 FPS. Чем больше FPS, то есть чем короче длительность кадров, тем плавнее переходы, качественнее анимация. Однако увеличение FPS увеличивает размер выходного файла и нагружает вычислительные мощности компьютера.

FPS не настраивается в редакторе Timeline. Однако о FPS следует помнить, так как если вы планируете делать 30 секундную анимацию с 24 FPS, вам понадобится 720 кадров. Но с 50 FPS будет уже 1500.

В заводском стартовом файле редактор Timeline находится в нижней области.

Главный регион редактора Timeline занимает кадрированная шкала времени. Вверху у нее есть разметка с шагом в 10 кадров.

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

Область с 0-го по 250-й кадр окрашена по-другому. Этот промежуток обозначает те кадры, которые будут составлять анимацию.

В заголовке редактора Timeline в полях Start и End указаны кадры начала и конца анимации. Их можно изменить. В поле слева указан текущий кадр (не путать с ключевым), то есть то место во времени, в котором сейчас находится сцена.

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

Чтобы начать проигрывать анимацию, надо нажать Пробел. Она начнется с текущего кадра и до последнего, того, что указан в End. Затем продолжится со стартового (Start). Остановить циклическое проигрывание анимации можно повторным нажатием пробела, либо нажатием Escape. В первом случае текущим кадром станет место останова анимации. Во втором – текущий кадр вернется к прежнему значению, туда, откуда была запущена анимация.

Кроме того для управления проигрыванием анимации и переходами предназначена специальная группа кнопок заголовка:

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

Отдельно стоящая кнопка слева предназначена для автоматического создания ключевых кадров.

Создавать ключевые кадры можно и обычно удобнее непосредственно в главном регионе 3D Viewport, нажимая I и выбирая в появляющемся меню тип ключа. Однако мы воспользуемся специальным блоком в заголовке Timeline, так как он дает более полное управление:

При клике по связке ключей слева в поле Active Keying Set раскрывается список возможных типов ключей. Нас интересуют Location, Rotation, Scale и их комбинации – Location & Rotation, Location & Scale, «Location, Rotation & Scale», Rotation & Scale. Список здесь отображается не полностью, он прокручивается вверх и вниз:

Ключ Location фиксирует только местоположение объекта. Если вы в таком ключевом кадре измените размер и поворот, то это изменение не будет анимировано. Оно просто изменит объект. Если боитесь запутаться, выбирайте «Location, Rotation & Scale». Этот тип ключа фиксирует все – положение, поворот, размер. Однако на самом деле он создает целых 9 ключей в одном кадре, так как запоминает координаты X, Y, Z для всех трех трансформаций.

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

Крайняя правая кнопка с ключом и крестиком удаляет из текущего кадра выбранный тип ключевого кадра, если он там есть. Например, текущий кадр 20-й. Мы выбираем тип Location и удаляем его. Если в 20-м кадре был именно такой ключ, то он удалится, но если там был назначен Rotation, то ничего не произойдет. Если вы не знаете точно, какой тип ключа находится в текущем кадре, а хотите очистить его от всех ключей, выбирайте «Location, Rotation & Scale».

Что значит создание ключевого кадра для объекта? Это значит, что была зафиксирована текущая позиция и форма объекта. Теперь, если мы как-либо изменим объект, не зафиксировав эти изменения ни в каком ключевом кадре, то при попытке проиграть анимацию (Пробел) потеряем все внесенные изменения.

Пусть мы хотим, чтобы куб за период с 1-го по 30-й кадр немного поворачивался. В первом кадре мы создали ключ, зафиксировав исходную позицию куба.

После этого делаем текущим 30-й кадр и здесь поворачиваем куб. Далее надо создать еще один ключевой кадр, уже в 30-м кадре. Проще нажать I в редакторе 3D Viewport. Также можно воспользоваться раскрывающимся окошком Keying в заголовке Timeline.

мы можем создать относительно сложную анимацию.

Если в последующем мы удалим какой-нибудь промежуточный ключевой кадр, то объект будет плавно изменяться из состояния предшествующего ключевого кадра в состояние следующего за удаленным. Например, если куб сначала поворачивался, а потом перемещался, то удаление промежуточного ключа приведет к тому, что куб будет более медленно, но одновременно поворачиваться и перемещаться.

Обратите внимание, у каждого объекта свои ключевые кадры. Если выделить другой объект, который не изменялся во времени, на шкале времени ключей не будет.

Как получить файл с готовым фильмом? Скорее всего, сначала понадобиться выполнить некоторые предварительные настройки на вкладке Output редактора Properties.

Здесь на панели Output из списка файловых форматов (File Format) надо выбрать AVI JPEG.

AVI JPEG сжимает картинки. Поэтому файл получается существенно меньше, чем при AVI Raw. Обратите внимание, где сохраняется ваш файл. При необходимости измените каталог.

Также имеет смысл поменять значение последнего кадра, если анимация была короче.

Запуск рендера анимации выполняется из редактора 3D Viewport при выборе в меню заголовка пункта Render → Render Animation (Ctrl + F12).

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

Практическая работа

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

Курс с инструкционными картами к части практических работ:
android-приложение, pdf-версия

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *