1.4. Рендеринг
Итак, у нас есть объект с материалом и наложенной текстурой – пора, наконец-то, отрендерить его! Рендерингом (или визуализацией) в компьютерной графике называют процесс перевода математической модели объектов в графическое представление. В Blender это делается путем проецирования вершин, составляющих объекты, на экранную плоскость и вычисления пикселей между ними путем растеризации полигонов.
Существует также другой подход – расчет траекторий лучей (или, как говорят специалисты, трассировка лучей). Для каждой точки растрового изображения проводится луч в некоем известном направлении (это может быть, например, вектор от позиции наблюдателя). Затем происходит перебор всех объектов-примитивов трехмерной сцены. Трассировщик проверяет луч на пересечение с примитивом и получает координаты точки пересечения. Если на сцене присутствуют источники света, проводятся дополнительные лучи от полученной точки к источникам света. На основании полученной информации (а также заранее определенных констант), вычисляется цвет пикселя в данной точке.
Blender использует трассировку лучей при расчете зеркального отражения и преломления. Кроме того, на основе трассировки лучей построен новый рендер-движок Cycles, который теперь также является частью Blender (впрочем, Cycles, будучи большой и достаточно сложной в освоении системой, выходит за рамки охвата этой книги).
Для построения проекции трехмерной сцены нам нужна виртуальная камера – объект, который, подобно реальной камере, будет «снимать» происходящее со своей точки обзора. По умолчанию Blender уже добавил на сцену одну камеру: вам остается только нажать клавишу F12 , и вы увидите рендер, сделанный через нее. Чтобы вернуться обратно к сцене, нажмите Escape.
Камеру можно перемещать и поворачивать, как и любой другой объект. Чтобы понаблюдать, как сцена видна через камеру, можно сменить вид: выберите в меню View → Camera. Теперь нажмите клавишу N и в появившейся левой панели инструментов найдите вкладку View. Поставьте галочку напротив Lock Camera to View. Рамка паспарту теперь станет красной, а камера будет привязана к точке наблюдения навигации. То есть, если вы повернете точку наблюдения средней кнопкой мыши, камера тоже повернется соответствующим образом – это позволяет быстро настроить камеру наилучшим для вас образом. Не забудьте только отключить этот режим привязки, когда закончите позиционировать камеру.
Настройки рендеринга находятся на той же панели свойств, в первой группе – Render. На вкладке Dimensions можно изменить разрешение финального изображения, а также указать процент масштаба финального изображения – это необходимо для быстрой визуализации маленьких промежуточных картинок. Сделав рендер клавишей F12 , вы можете сохранить его: выберите в меню Image → Save As Image… В диалоге выбора файла вы можете указать формат сохранения (PNG, JPEG, Targa, OpenEXR, HDR, TIFF и др.), коэффициент сжатия и другие параметры.
Добавим, что любое отрендеренное изображение можно не только сохранить, но и использовать внутри Blender для дальнейшей работы – в качестве текстуры для объекта или где-нибудь еще.
Blender, 1001 мелочь
Приёмы работы с Blender версии 2.79, продолжение. На этот раз затронуты материалы и получение финального рендера изображения. Для понимания более базовых принципов и инструментов рекомендуется обратится к предыдущей статье.
Материалы
Для того, чтобы назначать объекту материал и редактировать его свойства, понадобится найти на панели Properies (находится слева, ниже окошка Outliner’а, в котором отображается список объектов на сцене) вкладку Material (обозначена розовым шариком).

Когда объект выделен в сцене (или выбран в списке Outliner’a), то на вкладке Material будут видны параметры материала текущего объекта. Если объект не может иметь материалов (камера, лампа и так далее), то и подобной вкладки у него не появляется.
По умолчанию у добавляемых в сцену примитивов материалы отсутствуют (если выбран рендер Cycles) и в окне вкладки материалов пусто. Чтобы добавить простейший материал нужно нажать в том окне кнопку + New и на объекте появится материал с шейдером Diffuse.Сам объект визуально почти не изменится, оставаясь всё таким же белым, зато теперь можно менять его цвет и насыщенность, щёлкнув по параметру Color.
Добавление нового материала
На панели Properties находим вкладку Material
Жмём кнопку «+ New»
Теперь на объекте появился стандартный материал Diffuse (если появилось что-то другое, то убедитесь, что на самой верхней панели выбран рендер Cycles Render)
Нажав на белый прямоугольник можно выставить другой оттенок и уровень яркости цвета
Для того, чтобы видеть сцену с полноценным просчётом материалов и света, нудно включить режим Rendered (для того чтобы нормально двигать и редактировать объекты нужно будет вернуться обратно в режим Solid)
Щелкая по параметру Surface можно выбрать другой шейдер, вместо Diffuse BSDF. К часто используемым относятся, например, Emission (материал излучает свет), Glass BSDF (стеклянные и прозрачные поверхности) и Glossy BSDF (глянцевые — бликующие и зеркальные поверхности).

Также имеется комплексный шейдер, в котором собрано сразу очень много параметров (блики, свет, подповерхностное рассеивание и так далее) — Principled BSDF (основной шейдер в более поздних версиях Blender, где появился рендер Eevee). По умолчанию его материал выглядит как Diffuse с небольшой примесью Glossy.
Из прочих шейдеров можно отметить Anisotropic BSDF (такой же зеркально-бликующий как и Glossy, но с возможностью сильнее искажать отражение), Transparent BSDF (регулирующий степень прозрачности объекта) Subsurface Scattering (придающий поверхности более восковой или органический вид) и Velvet (создающий вычурный эффект бархатистой ткани).
Для того, чтобы более разнообразно управлять шейдерами материала и комбинировать из них что-то посложнее — открываем специальный Node Editor. Проще всего использовать для этого нижнее окно, где по умолчанию открыта временная линия (Timeline).

Меняем нижнее окно на редактор узлов
Открыв в нижнем окне Node Editor мы увидим материал текущего объекта в более развёрнутом состоянии — в виде связанных узлов. Например, для Diffuse там отобразится шейдер Diffuse, соединённый с узлом Material Output. Кстати, узлы могут появиться слишком мелкими и для увеличения изображения в этом окне пользуемся всё теми же кнопками, что и обычно (колесико мышки или Numpad + и Numpad -).
Принцип здесь такой, что цепочку узлов можно усложнять, но в итоге она приходит в финальный узел Material Output (чаще всего на основной его канал Surface), чтобы наконец отобразиться на объекте. Если же к Material Output ничего не присоединено, то объект просто будет отрисован совершенно чёрным.
Открыть Node Editor в нижнем окне
Щелкаем на самый левый значок в нижней панели окна и выбираем Node Editor
Теперь нижнее окно показывает редактор узлов и в самом низу выводится панель с его инструментами. Теперь мы видим узлы материала более наглядно — узел Diffuse подключен к выводящему узлу Material Output
Щёлкнем на параметр Color узла Diffuse, чтобы поменять его цвет
Если разорвать соединение узлов, то Materail Output не получает информации и выводит в качестве материала черноту
Изменим стандартный Diffuse материал в окне Node Editor. Добавим туда светящийся шейдер: Add — Shader — Emission
Узел появился в окне, но пока к выводу подключен старый шейдер Diffuse
Подключаем вместо него новый шейдер
У шейдера Emission можно регулировать силу света в параметре на самом узле или сбоку, на вкладке Material (пока в материале не слишком много узлов, тогда сбоку найти нужный параметр проблематично). Например, сейчас сила света установлена в 20, вместо 1.
Цвет узла также можно выставлять как на нём, так и в окне сбоку
Стоит освоить один из ключевых приёмов — смешивание шейдеров. Новые шейдеры добавляются через пункт Add на нижней панельке окошка Node Editor (Add — Shader — выбрать нужный из списка). Далее, чтобы смешать два шейдера вместе нужно добавить особый узел, Mix Shader, и затем присоединить их выходы к нему (находится в том же списке Add — Shader). По умолчанию смешивание двух компонентов происходит в пропорции 1 к 1, но двигая ползунок можно регулировать степень влияния каждого компонента.

Смешение двух диффузных шейдеров (белого и красного). Образец результирующего материала всегда можно видеть справа (не только на сцене), если раскрыть графу Preview
По сути, фактор смешивания в Mix Shader (параметр Fac) представляет собой элементарную маску, которая в крайних положениях ползунка может быть либо полностью чёрной (виден только первый компонент смешивания) либо полностью белой (виден только второй компонент смешивания), а в промежуточных положениях даёт различные градации серого (оба компонента вносят свою долю в результат).
В Node Editor открыт стандартный Diffuse материал. Добавим сюда шейдер смешивания Add — Shader — Mix Shader
Теперь добавим шейдер стекла Add — Shader — Glass BSDF
Разместим Diffuse и Glass левее Mix Shader
Теперь подключим выходы BSDF к двум входам Shader у Mix Shader, а его собственный выход к параметру Surface у финального правого узла
Изменим цвет Diffuse, чтобы нагляднее заметить смешивание
Переведём ползунок у параметра Fac в крайнее левое положение. Теперь в материале преобладает Diffuse
Передвинем ползунок в крайнее правое положение. Теперь материал стал полностью стеклянным.
Если хочется более интересного смешения, можно подключать к MixFactor, например, текстуры. Для простоты, в узлах NodeEditor уже содержится несколько предустановленных текстур, например, процедурные Musgrave Texture, Voronoi Texture и Wave Texture для достаточно наглядных хаотических либо упорядоченных узоров. Если подключить такую текстуру к параметру Color узла Diffuse, то можно увидеть, что объект заполнен тёмными и светлыми областями. Если же эта текстура подключена к параметру Fac узла Mix Shader, то в тёмных областях будет преобладать один из компонентов смешивания, а в белых другой.
Кстати, параметр каждого узла справа может быть подключен в разное количество мест одновременно. Например, текстура через параметр Color может быть подключена сразу и к цветам нескольких узлов, или, например, в то же время и к параметру Fac.
Ещё один полезный вариант — использовать в качестве фактора смешивания узел Freshnel (формула для упрощённого расчёта эффекта Френеля). При таком смешивании на тех частях объекта, на которые мы смотрим под углом, будет более выражен один из компонентов, а на тех, куда мы смотрим более прямо — другой компонент Наиболее частое использование — более реалистично выглядящая поверхность воды или стекла, когда по Френелю смешиваются шейдеры Glass (прозрачность при прямом взгляде) и Glossy (зеркальность и непрозрачность при взгляде под углом).
Френель в качестве фактора смешивания

Если материал должен просто накладывать на объект произвольное изображение, тогда нужно добавить узел ImageTexture, в котором есть диалог загрузки пользовательского изображения. Далее присоединить его к параметру Color, того же стандартного узла Diffuse (или Principled). Пока изображение не выбрано материал будет фиолетового цвета. Когда мы укажем текстуру, то. скорее всего изображение всё ещё не будет наложено на объект. Происходит это по причине того, что у материала в данном случае нет информации о том, как следует разместить текстуру по поверхности объекта.
Добавление текстуры к шейдеру
Узел Image Texture добавлен, но не выбрано изображение. Чтобы его подключить нужно нажать на кнопку Open и указать файл с картинкой в появившемся диалоге
Теперь изображение указано, но по прежнему ничего не видно, так как нет развёртки
Если добавить авторазвёртку (появилась строчка справа в UV Maps), то станет видно как накладывается изображение
Для того, чтобы изображение наложилось хотя бы как-нибудь, при отсутствии нормальной развёртки, можно воспользоваться парой простых методов: создать автоматическую текстурную развёртку для объекта или добавить в материал ещё один узел, который будет задавать принципы проецирования текстуры на объект.
В первом способе нужно просто зайти на вкладку Data текущего выделенного объекта и нажать на плюсик слева в окошке графы UVMaps. После чего сгенерируется автоматическая развёртка и в это окошко добавится строчка UVMap (предустановленное имя для каждой новой авторазвёртки ). Теперь на объекте появится изображение, хотя и будет наложено, скорее всего, с различными растяжками и прочими дефектами.
Упрощённое добавление авторазвёртки

Выделяем нужный объект, и на панели Properties находим вкладку Data. Нажимаем плюсик в графе UV Map. Если после этого объект будет как-то редактироваться, то желательно после редактирования удалить ему старую авторазвёртку и добавить новую.
Другой способ — добавим узел Texture Coordinate и подключим исходящий параметр Generated к входящему параметру Vector, на левой стороне узла Image Texture. После чего переключим метод проецирования с плоского (Flat) на объёмный — нужно нажать на третью кнопку в узле Image Texture (Flat) и выставить там другой вариант (Box либо Sphere).
Узел Texture Coordinate
Добавим Texture Coordinate, выбрав его в меню Add — Input
Подключим выход Generate ко входу Vector нашей текстуры — теперь появилось изображение
Изменим способ проецирования Flat на Box.
вот что получилось
Попробуем другой метод, Sphere — теперь результат стал получше
Что в первом, что во втором случае пригодится узел Mapping для изменения размера. Этот и прочие преобразующие/конвертирующие узлы следует подключать в правильные места, например, Mapping подключенный между Texture Coordinate и Image Texture будет вмешиваться в передаваемый вектор (в том числе регулировать размер текстуры), а если его поместить уже после Image Texture к линии Color, то он будет регулировать уже цвет (а не размер, поворот и смещение текстуры).
Добавляется через Add — Vector
Поначалу ничего не меняется, но зато теперь можно управлять параметрами размера смещения и поворота
Например, здесь было добавлено вращение по Y на -150 и размеры уменьшены с 1 до 0,1. Если переключаться по верхним кнопкам узла (Texture, Point, Vector, Normal), то при одних и тех же прочих выставленных значениях изображение будет накладываться несколько иным образом.
А вот что получилось бы, если передвинуть узел Mapping так, чтобы он следовал уже после Image Texture, вмешиваясь в её цвет. В данном случае установлен поворот на 90 по Z.
Для придания материалу эффекта микрорельефа любые текстуры можно подключать к параметру Displacement финального узла Material Output.
Имеем зелёный Diffuse материал
Добавляем, например, Voronoi Texture
И подключаем её ко входу Displacement
Рендер изображения
Главное, что нам понадобится для получения рендера — это обязательное наличие в сцене камеры. Добавляем её, если она отсутствует.

Для создания камеры выбираем Add — Camera
Нужно понимать, что камера смотрит на сцену со своей точки зрения и обычно показывает не то, что мы видим, работая в редакторе. Чтобы «прилететь» своим взором в текущий ракурс камеры нужно нажать Numpad 0 на цифровой клавиатуре. Повторное нажатие Numpad 0 вернёт нас обратно в тот вид из которого мы «улетели». Если же двинуть мышью с зажатой средней кнопкой мыши, то мы выйдем из ракурса камеры, но в более близкий к нему угол зрения.
Перемещаем и поворачиваем камеру, как обычный объект
После чего нажимаем Humpad 0, чтобы увидеть сцену из камеры
Если же мы хотим, чтобы камера сама встала в тот вид, который у нас перед глазами в данный момент, то нужно нажать сочетание Ctrl Numpad 0. При этом стоит немного отдалиться от текущего вида, потому как обычно прилетевшая камера немного приближает картинку. Вышеописанные манипуляции с камерой также можно найти в меню View — Cameras.
Для более точной подстройки ракурса можно дополнительно подвигать саму камеру, выделив её, как объект (здесь пригодится переключить систему координат объекта с Global на Local). Если перейти в вид из камеры, когда она выделена, то можно просто потаскать её в стороны, нажав G (либо набирая GX, GY или GZ для перемещения точно вдоль осей) или покрутить, нажав R (соответственно, RX, RY, RZ).
Добавляем камеру, если её нет на сцене. Add — Camera
Появляется камера
Передвинем её
И теперь попробуем переключится в вид из камеры, нажав Numpad 0. Как видно, камера оказалась слишком близко.
Нажмём сочетание Shift F и удерживая S (помогая прочими — A, W и D) отлетим немного подальше, после чего щёлкаем кнопкой мыши и оставляем камеру уже в более подходящем ракурсе.
Теперь выставим режим Rendered, чтобы лучше представлять себе, что в итоге отрендерится на камере в текущем ракурсе.
Ещё более удобный способ подстройки ракурса — временно переключиться в Walk Mode. Для этого приходим в вид из камеры (выделять саму камеру как объект не требуется) и жмём комбинацию Shift F. По центру экрана появится прицел и станет возможно управлять текущим видом с помощью кнопок W A S D, а нажатие пробела приближает к тому объекту, что сейчас находится в прицеле. По первому щелчку мыши Walk Mode переключится в стандартный Fly Mode.
Возможно, когда выбран вид из камеры, то по какой-то причине задний фон обрезается и часть дальних объектов не отображается. Это происходит потому, что у камеры есть параметр дальности отрисовки, отсекающий лишнее. Чтобы камера захватывала большее пространство нужно выделить её, тогда на панели Properties один из последних значков изменится на камеру (вкладка Data). Переходим туда и, находясь в графе Lens, выставляем большее значение, чем стандартное 100 в разделе Clipping: End.
Выделяем камеру. На панели Properties открываем вкладку Camera и в графе Lens видим, что дальность (End) установлена в 100
Попробуем поменять её на 20.
теперь на рендере дальняя часть сцены не отобразится
Если же мы увеличим и ближнюю точку отрезки (Start), то и ближнее пространство рендерится не будет.
Выставим нормальные параметры и снова на рендере видим всю сцену
Когда мы смотрим на сцену из камеры и на сцене включен режим рендера, то всё что находится за пределами камеры тоже пытается отрендерится. Для некоторой оптимизации можно поставить галочку на параметре Border (панель Properties, вкладка Render, графа Dimensions, внизу), тогда при виде из камеры то, что выходит за границу её видимости рендерится не будет.
Кроме камеры нам, вероятно, понадобится источник света, так как одного фонового света часто недостаточно. Например, точечный источник света (Point) или солнечный (Sun).
Для создания источника света выбираем Add — Lamp — вариант из списка (в данном случае точечный источник Point)
Источник света появляется в сцене и на панели Properties можно увидеть вкладку с его специальными настройками, когда он выделен
Для лампочки Point конкретное место размещения имеет важность, если объекты будут находится слишком далеко от него, то его влияние на их освещённость становится несущественным. У лампочки Sun, напротив, местоположение роли не играет, а важен задаваемый ею угол наклона солнечных лучей — показываемый пунктирной линией. То есть лучи не исходят из точки в которой находится Sun, а заполняют всю сцену полем параллельных лучей.
Оптимальный диапазон параметров силы источников света тоже несколько отличается. Свежесозданный Point имеет предустановленную силу света 100 и там обычно выставляются значения в сотнях и тысячах. У Sun предустановленный параметр силы света равен 1 и, как правило, крутится где-то в диапазоне от 0.5 до 3.
Переходим непосредственно к получению рендера сцены. Ещё раз убеждаемся, что камера присутствует в сцене и жмём горячую кнопку F12. В основном окне редактора (или в том окне Blender, которое шире остальных открыто сейчас), где был вид сцены появится прямоугольник заполненный шахматным рисунком, который по отдельным квадратикам станет заполнятся итоговым изображением. Стандартные кнопки для зума (Numpad +, Numpad — и колёсико) в этом окне также работают.
Процесс рендера изображения
Нажимаем F12 или выбираем рендер одиночного изображения в верхнем меню (первая строка)
Основное окно изменилось. Обратите внимание, что значок слева поменялся. Сверху справа видна полоса прогресса.
Полоска продвигается, а в окне рассчитываются квадратные кусочки изображения, постепенно заполняя картинку.
Рендер завершился и теперь можно щёлкнуть на Image, выбрав Save As Image. Альтернативный способ — горячая кнопка F3
Вводим имя файла. Слева видны предустановки — в каком формате будет сохранён файл.
Нажимаем Save as Image для сохранения картинки
Кнопка для переключения на вид с превьюшками файлов
Общий прогресс создания рендера отображается сверху, и здесь же его можно отменить, при желании. Когда картинка готова, то для сохранения выбираем пункт Image на панели и далее Save As Image. Если этот пункт горит серым, значит картинка ещё не отрендерилась до конца и нужно дождаться окончания процесса (либо принудительно остановить его, нажав на крестик правее полосы прогресса).
Когда открывается диалог сохранения изображения, то внизу слева можно выбрать формат (по умолчанию PNG), цветность, глубину цвета, качество.
Чтобы вернуться из этого окошка обратно в сцену нужно найти на его нижней панели самую левую иконку, нажать на неё и выбрать пункт 3D View.
Возврат в сцену из окна рендера

Нажать здесь и выбрать 3D View
Теперь пробежимся по тем настройкам, от которых зависит общее качество рендера — панель Properties, вкладка Render (значок фотоаппарата). В первой графе (которая тоже называется Render) в строке Device скорее всего выбран CPU, то есть итоговое изображение рассчитывается силами процессора. Если у вас дискретная видеокарта, то, вероятно, появится возможность выбрать вариант GPU, чтобы рендером занималась видеокарта и он происходил быстрее.

Вкладка Render
В следующей графе, Dimensions, показаны настройки текущего разрешения, по умолчанию 1920 на 1080 с уровнем чёткости 50%. Чем меньше каждый из этих параметров, тем быстрее рендерится картинка, но и результат будет более размытым и менее детализированным. Для итогового рендера, когда мы уже вряд ли что-то будем менять в сцене и в настройках, уровень чёткости желательно выставить в 100%.
В графе Sampling находится ещё один важный параметр качества в разделе Samples: Render. По умолчанию для финального рендера установлено 128 проходов на каждый пиксель, а для рендера в редакторе 32. Чем больше проходов тем лучше, но процесс рендера замедляется довольно сильно, поэтому стоит подбирать значения по ситуации (часто 256 или 512 проходов уже смотрятся неплохо). К тому же повышение числа проходов в некоторых сценах может не так существенно влиять на качество.

Справа указано, что для финального рендера выставлено 512 сэмплов, а в редакторе картинка прогрессивно рендерится до 32 сэмплов
Левее Samples в разделе Settings стоит обратить внимание на полезный параметр Clamp Indirect, который в первую очередь стоит покрутить, если на изображении возникают «светлячки» — грязь из отдельных светлых пикселей. Обычно они появляются, если в сцене присутствуют материалы с шейдером Glossy (или прочие, содержащие в себе эффект глянца).
Нивелирование светового шума
На рендере получается достаточно много шума из ярких пикселей
Подавляем их, попробовав выставить в Clamp Indirect 0.12 вместо 0
В графе Light Paths можно ускорить процесс рендера (иногда практически не потеряв в качестве картинки) путём уменьшения количества переотражений света — раздел Bounces: Max. Вместо предустановленных максимальных 12 отскоков световых лучей ставим, например, такое же, что и предлагаемый минимум — 3. Прочие параметры этого раздела тоже можно поуменьшать.

Ещё немного в скорости можно получить, выставив более оптимальные настройки в графе Performance. В разделе Tiles проставлены размеры кусочков из которых формируется изображение. По умолчанию там выставлен размер 64 на 64. Для рендера на процессоре (CPU) оптимальнее может быть более мелкий размер — 32 на 32 или 16 на 16. Для рендера на видеокарте (GPU) желательно ставить более крупные размеры, вроде 256 на 256, 512 на 512. Стоит поэкспериментировать, чтобы выяснить более удачные размеры на конкретном железе.
Ниже Tiles в некоторых случаях можно поставить галочку на опции Progressive Refine. Тогда рендер будет производится не по кускам, а прогрессивно — вся картинка появится сразу и будет постепенно улучшаться. Таким образом можно будет остановить рендер пораньше, именно в тот момент, когда качество проработки уже стало достаточным.
Чтобы снизить количество шума на картинке можно воспользоваться опцией Denoising (включается на вкладке Render Layers, следующей за Render), которая немного сгладит (замылит) картинку. При этом на стеклянных/зеркальных поверхностях могут появиться нежелательные разводы и артефакты. Чтобы сделать фильтр более аккуратным можно дополнительно покрутить настройки раздела Denoising.

Вкладка Render Layers — ставим галочку на Denoising. Теперь на рендере по ходу дела будет добавляться проход шумоподавления, причём он учитывает несколько кусков изображения, поэтому на самых краях видно ещё не сглаженные участки, до которых очередь дойдёт позже.
Для перевода рендера в формат более реалистичной цветопередачи желательно заглянуть на вкладку Scene и в графе Color Management сменить Default на Filmic в разделе Render: View. А также sRGB поменять на Linear в разделе Sequencer: Color Space.
Вкладка Scene
Раскрыть графу Color Management
В View параметр Default поменять на Filmic, в Color Space параметр sRGB поменять на Linear

Прочее полезное
У источников света есть свой отдельный параметр размера лампы и этот показатель может влиять на степень светового шума при рендере. Размер самих объектов в сцене тоже может оказывать своё влияние, если вся сцена содержит по сути гигантские или микроскопические объекты, которые только относительно друг друга кажутся нормальными.
Объекты сцены можно освещать не только специальными источникам света — в качестве самодельного источника может выступать объект со светящимся материалом, который обычно выносят за пределы кадра. Например, это может быть светящаяся плоскость или сфера.
В освещении также участвует фоновый свет, поэтому чтобы добиться совсем непроглядной темноты нужно понизить силу его влияния до 0. В то же время фоновый свет может содержать в себе HDRI-текстуру (как это часто используется в 3д-движках), чтобы имитировать более реалистичное освещение. Для того чтобы назначить HDRI изображение в качестве фонового цвета нужно открыть в панели Properties вкладку World, графа Surface (нажать Use Nodes, если не видно параметров). Здесь щёлкаем на кнопку с точкой правее параметра Color и в открывшемся окошке выбираем пункт Environment Texture. Теперь в режиме Rendered вся сцена будет заполнена фиолетовым светом, так как конкретная текстура ещё не выбрана. Чтобы выбрать её — щёлкаем на появившуюся в графе Surface кнопку Open. Изображения в HDRI формате можно взять, например на сайте Poly Haven (бывший HDRI Haven).

При желании HDRI изображение можно сделать и самостоятельно. Для этого переключаем режим камеры в Panoramic и ниже меняем параметр Type на Equirectangular. Теперь просто запускаем рендер кадра, на котором отобразится вся окружающая камеру сцена в несколько искажённом виде. По сути это и есть HDRI карта освещения, осталось только сохранить её в нужном формате — в диалоге сохранения меняем PNG на OpenEXR и получаем файл с расширением .exr. Для получения более правильной HDRI стоит установить для рендера разрешение по Y в два раза меньше, чем по X. А также расставить в сцене какие-то светящиеся объекты, чтобы камера их увидела и, собственно, преобразовала в области светимости. Лишние объекты с такой сцены нужно убрать, чтобы они не попали в карту освещённости.
Пользовательская карта HDRI
Поставим камеру в центр и добавим вокруг неё 4 вытянутых объекта со светящимся зелёным материалом
Зайдём в настройки камеры и поставим режим Panoramic, тип Equirectangular
Теперь просто рендерим изображение (F12). Вот что получилось.
А такой рендер получился после добавления вокруг камеры ещё 4-х объектов поменьше, увеличения силы света материала до 5 и помещения камеры вместе с объектами внутрь большой сферы с обычным диффузным материалом
Для сохранения полученного рендера как HDRI жмём Image — Save as Image (F3) и в диалоге осхранения меняем расширение с PNG на OpenEXR
Когда HDRI текстура установлена в качестве фонового света, то нас может не устраивать её расположение (так как, допустим, у нас уже выставлен кадр и хотелось бы подстроить освещение к нему, а не наоборот). Для того, чтобы повернуть текстуру как нам нужно — снова воспользуемся узлом Mapping. Откроем Node Editor, как для редактирования материала и на панели внизу переключим его с режима Object на режим World. Как видно, фоновое освещение тоже складывается из узлов, как и материалы. Подключим левее узла Environment Texture узел Mapping и добавим левее него узел Texture Cooridnate (через выходной параметр Generated). Теперь мировое освещение можно, например, вращать, меняя параметры Rotation узла Mapping.
Чтобы временно скрыть какой-то объект, оказавшийся в кадре, можно нажать горячую кнопку H. Что аналогично нажатию на значок глаза в левом верхнем окошке (Outliner) на нужном объекте в списке. Комбинация Alt H возвращает видимость всем скрытым объектам. Что касается рендера — скрытые подобным образом объекты всё равно будут нарисованы во время рендера изображения (хотя даже в режиме Rendered их не видно). Для того, чтобы исключить объекты именно с финального рендера — требуется нажать на значок фотоаппарата слева от объекта в списке, чтобы значок стал серым.
Если на объекте имеется некий материал, то при создании копии объекта (Shift D) на ней будет создан новый материал с такими же свойствами и его можно будет редактировать независимо. Если же создаётся клон объекта (Alt D), то у клона будет тот же самый материал.
Готовый материал также можно назначить на любые прочие объекты, достаточно нажать на розовый шарик левее названия материала и там появится выпадающий список со всеми материалами в сцене. Обратите внимание, что в этом списке перед названиями некоторых материалов может стоять 0 — это значит, что на данный момент в сцене эти материалы оказались не назначены ни на один объект.
Материалы без носителя

У материалов, отмеченных 0, в данных момент нет ни одного объекта-носителя
Если нужно применить один материал сразу к большому числу объектов, то не получится просто выделить их все и поменять материал. Правильный способ — выделить все нужные объекты и через Shift добавить последний, на котором есть материал, который мы хотим растиражировать. Далее нажимаем сочетание Ctrl L и в появившемся окошке Make Links выбираем вариант Materials. Теперь все эти объекты имеют один и тот же материал и его изменения отразятся сразу на всех них.
Вместо Ctrl L можно было нажать на стрелку под первым окном вкладки Materal и выбрать там вариант Copy Meterial to Others. Там же скрывается ещё пара опций — Copy Material и Paste Material. Они пригодятся, если хочется сделать отдельную копию материала, со всеми настройками, чтобы переделать её, не меняя сам оригинал. Более прямолинейный способ — просто сделать копию самого объекта с нужным материалов, тем самым получив новый независимый материал, после чего назначить уже этот материал из списка на какой-то другой объект.
Если вам не требуется рендерить фон на финальной картинке, а требуется только отрисовать сами объекты в кадре, то нужно включить прозрачность фона на итоговом рендере, чтобы Blender не занимался ненужной работой. Панель Properties, вкладка Render, графа Film — поставить галочку на пункте Transparent.
На итоговом кадре не только фон, но и прочие объекты могут создавать область прозрачности. Для этого нужно назначить им материал с шейдером Holdout. При этом у самого фона прозрачность должна быть тоже включена (пункт Transparent).Кстати, объекты с Holdout продолжают отбрасывать тени, хотя сами становятся невидимыми на рендере. Чтобы это убрать нужно выделить объект, зайти в панель Properties, вкладка Object, в самом низу открыть графу Cycles Settings этого объекта и убрать галочку с Shadow.
В Blender можно рендерить и двухмерные изображения, не обязательно трёхмерную сцену. Например, логотипы, значки, прочие плоские картинки. У плоского изображения обычно нет пространственных искажений, часто отсутствуют блики и тени, потому что не требуется делать акцент на его объёмности. Поэтому для плоских рендеров лучше перевести камеру в режим ортографической проекции (Ortographic) вместо перспективной и отключить прочие источники света кроме фона. Плюс можно добавить обводку по краям объектов, отметив галочку на параметре Freestyle (графа на вкладке Render). Тогда после рендера всего кадра Blender будет делать дополнительный проход, чтобы добавить поверх него обводку.
Переключим камеру в Ortographic
Даже выставив более прямолинейный вид в ортографической проекции, мы можем получить не особо плоское изображение, так как свет, тени и блики могут давать слишком ярко выраженный объём
Отключим источники света, отрегулируем свет фона, попробуем дополнительно отключить тени и отсветы от светящихся материалов (вкладка Object, настройки в графе Cycles Settings). Теперь картинка приобрела более плоский вид.
Включив опцию Freestyle (на вкладке Render) получим обводку в конце процесса рендеринга
После того как изображение отрендерилось и готово к сохранению, можно внести в него ещё какие-то изменения на стадии композитинга. Например, подавить шумы уже на этом этапе. Для этого нужно открыть уже знакомый Node Editor, переставить режим на нижней панели с Shader на Compositing и отметить правее на панели галочку Use Nodes. Появится два связанных узла: Render Layers, замкнутый на Composite. Добавив между ними, например, узел Despeckle (Add — Filter — Despeckle), можно немного размыть изображение.
После того как рендер изображения готов на верхнем окне, в окошке Node Editor внизу переключаемся на режим Compositing
Отмечаем параметр Use Nodes
Если убрать связь между узлами, то в верхнем окне изображение рендера пропадёт.
Добавим, например, узел Brigt/Contrast (на панели внизу через Add — Color — выбрать из списка) и отрегулируем яркость/контраст
Также можно выполнять композитинг для прочих, уже сохранённых изображений, а не только того, что сейчас отрендерилось. Для этого нужно отключить узел Render Layers и добавить другой узел: Add — Input — Image. Открыть в узле Image файл картинки, нажав на Open и подключить его к выходу Composite вместо Render Layers, после чего добавлять прочие узлы в эту связь.
Коррекция загружаемых изображений
Добавляем узел для загружаемой картинки, Add — Input — Image
Добавляем файл с картинкой, щёлкнув на Open
Теперь в окне сверху видна загруженная картинка (если мы не делали рендер, то самостоятельно переключаем верхнее окно с режима 3D View на UV/Image Editor нажав на самую левую иконку на его панели)
Теперь можно подключать прочие узлы и вносить изменения, например подкрутить яркость/контраст. Когда результат устраивает, то сохраняем картинку, как обычный рендер.
Текстуры, помимо всего прочего, могут помогать в процессе моделирования. Например, трипланарно наложенная текстура в клетку пригодится при моделировании игрового уровня, чтобы соотношение размеров элементов было более наглядным. Для этого нужно подключить подобную текстуру между Texture Coordinate (через Generated) и Diffuse (либо другому шейдеру на вход Color). Если же текстуры в клетку нет под руками, то в Blender есть своя встроенная Checker Texture (находится в списке по Add — Texture), у которой можно настроить цвет клеток и она не требует наличия подключенного слева узла Texture Coordinate.
Трипланарное наложение: локальные координаты
В данном случае используется своя текстура из 4-х квадратов и левее подключен узел Texture Coordinate
Здесь узел Checker (Add — Texture — Checker Texture) генерирует собственный настраиваемый клетчатый рисунок
Вышеупомянутый способ может не подойти, если собираемый уровень состоит из нескольких объектов, потому что на каждом отдельном текстура будет наложена локально, не всегда совпадая с направлением прочих. Поэтому на несколько объектов нужно проецировать текстуру глобально — в этом поможет другой узел, который нужно подключать слева от Image Texture или Checker. Выбираем Add — Input — Geometry, появляется узел Geometry, который подключаем через выходящий параметр Position. Теперь если перемещать объект, то видно, что текстура начинает ползти по нему, так как её мировые координаты остаются неизменными. Соответственно, несколько объектов с этим материалом теперь можно будет выстроить в соответствии с этими общими для них всех направляющими.
Трипланарное наложение: глобальные кооридинаты

Подключаем слева узел Geometry, параметр Position
Рендер и обработка в Blender. Часть 1
Привет, меня зовут Сергей Мингулин, я — 3D-художник, посмотреть на мои проекты можно здесь. Это — третья статья из цикла о визуализации в 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 и получаем более-менее правдоподобное свечение.
Здесь же есть следующие настройки:
1.Качество свечения (high, medium, low).
2.Mix — это линейная интерполяция между исходным изображением (-1) и обработанным (1). Оставляем «0» — это 50/50.
3.Threshold — настройка, которая определяет, какие объекты будут давать блики. Чем ниже порог, который мы выставим, тем больше будет таких объектов. Соответственно, высокий порог — свет излучают только наиболее яркие объекты.



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 — даёт эффект зернистости плёнки.
На просторах интернета можно найти целые библиотеки шумов, в которых можно подобрать имитацию конкретной плёнки. Но если нет цели добиться максимального сходства, можно просто поставить галочку в программе.
Система рендеринга Blender
Рендер — вот оно сладкое слово для каждого моделлера. Это момент истины, заключительный этап работы над проектом. И хотя создание сцены завершено, от правильной настройки системы обработки зависит очень многое. Малейшая неточность и результат будет испорчен. А ведь визуализация даже одного кадра может длиться часами.
В этой главе вы узнаете, что такое рендер, как его настраивать, как сбалансировать качество и быстроту для достижения наилучшего результата.
8.1. Основы обработки
На протяжении всей книги вы часто встречали слово «рендер» и даже выполняли быстрый прогон сцены с помощью клавиши <F12>.
Рендер (Render) — это система визуализации проекта и сохранение результата в виде графических или видеофайлов. В то же время рендером называется собственно результат обработки.
В мире существует много систем визуализации 3D и некоторые из них поддерживаются программой. Поэтому различают встроенные рендеры и сторонние. В этой версии Blender уже имеется три встроенных обработчика, которые можно найти и выбрать в меню Engine (Движок), расположенном в заголовке главного окна программы (рис. 8.1).
Рис. 8.1. Встроенные рендеры Blender
Blender Render — это самый первый визуализатор программы, он используется по умолчанию;
Blender Game — движок для визуализации сцены в режиме реального времени. Blender — это не только программа для создания 3D, но и мощный игровой конструктор. Выбирайте этот пункт, если вы создаете игру или приложение реального времени;
Cycles Render — новый рендер, появившийся в версии программы 2.61. Разработчики пророчат ему великое будущее и в дальнейшем предполагают использовать его по умолчанию. Движок сырой, но имеет очень хорошие возможности.
Помимо встроенных обработчиков вы можете использовать некоторые другие.
Наиболее популярными являются: YafRay , LuxRender , Pov-Ray , Rendermfarm .
Эти движки подключаются к программе с помощью встроенного механизма плагинов.
Каждый рендер хорош по-своему, у каждого есть свои сильные и слабые стороны. Так, к примеру, новейший Cycles имеет возможность ускорения просчета за счет ресурсов графического GPU (видеоплаты). YafRay советуют использовать для сцен, содержащих материалы с преломлением и отражением. Но нужно знать, что в большинстве случаев сцену и материалы объектов придется подгонять под требования конкретного рендера. Поэтому в данной главе будет рассмотрен лишь стандартный Blender Render . Его возможностей вполне достаточно для визуализации сложнейших сцен.
Обработчик Blender способен сохранять результат в различных форматах графических и видеофайлов. Так, при нажатии клавиши <F12> выполняется обработка одного текущего кадра, который можно сохранить на диск. Это делается либо с помощью меню Image | Save As Image в окне результата обработки, либо просто нажав клавишу <F3>. По умолчанию программа предложит сохранить картинку в формате PNG. А вот изменить его можно в настройках рендера (рис. 8.2).
В верхней части панели Render присутствуют две большие кнопки, которые позволяют запустить процесс обработки — это Image (Картинка) и Animation (Анимация). Уже по названию понятно, что за что отвечает. Процесс обработки Blender демонстрирует в окне Image Editor , которое автоматически запускается при старте. Но вы можете выбрать иной тип вывода в меню Display .
Однако перед обработкой сначала нужно правильно определиться с выбором выходного формата и качеством картинки. Вообще, подобные вещи лучше делать на самом первом этапе создания сцены. Так как даже банальное изменение разрешения картинки может привести к необходимости корректировки объектов в сцене и анимации.
Настройки изображения выполняются на закладке Dimensions (Размеры) (рис. 8.3).
При запуске программа предлагает обрабатывать картинку в разрешении Full HD, т. е. 1920 на 1080 пикселов. Это, конечно, великолепно, но в большинстве случаев излишне. Вы можете вручную установить разрешение в полях Resolution . Только учтите, что необходимо правильно установить соотношение сторон ( Aspect Ratio )
Система рендеринга Blender
и частоту кадров ( Frame Rate ). Ведь существуют определенные стандарты телевизионного вещания (на них ориентируются форматы видео). Так, у нас в стране используется PAL, который имеет разрешение 720×576 пикселов с частотой 25 кадров в секунду. В странах Европы популярен NTSC с совсем другими пропорциями и частотой, а ведь есть еще всевозможные варианты HD. Если вы не знаете конкретных данных необходимого стандарта, то лучше воспользоваться заготовками Blender в меню Dimensions . Здесь есть практически все популярные телевизионные стандарты разных стран.
Рис. 8.2. Настройка рендера
Рис. 8.3. Настройки разрешения
После того как вы определились с разрешением картинки, нужно выбрать, в каком формате будет сохранен результат. Это делается на закладке Output (Выход)
По умолчанию Blender сохраняет результат в папке Tmp. В зависимости от операционной системы, она может находиться в разных местах. Вы можете указать другой путь, щелкнув по кнопке с характерным рисунком папки.
Главный выбор осуществляется в меню File Format (Формат файла) (рис. 8.5).