Making of: Rolling On by Tamás Gyermán [RUS]

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

Making of: Rolling On by Tamás Gyermán [RUS]


Основным объектом изображения является старый дизельный тепловоз. Это М43, который используют в моём регионе. Модель данного тепловоза была полностью создана в 3D, используя subdivison, UV карты, текстуры и конечно же шейдеры. Важной частью изображения является стрелочный перевод, который также был создан в 3D.

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

Для моделирования и развёртки я использовал Cinema 4D и Maya. Тепловоз был затекстурирован в Bodypaint и Photoshop, а элементы окружения созданы в Mari. Для придания объектам детализированности и получения Cavity карты я использовал ZBrush, а для рендера V-Ray. Огромную помощь в текстурировании привнёс Substance Painter, дав добротные маски грязи, потёртостей и повреждений. Даже не смотря на то, что я потратил несколько часов на исправления артефактов, SP сохранил мне очень много времени.

В CGI я всегда люблю создавать изображения, которые рассказывают историю и позволяют зрителю почувствовать эмоции. Я люблю работать с настроением и глубиной, цветом и композицией. Именно на этих аспектах я и фокусируюсь, а не на создании ассетов. Я надеюсь вам понравится этот «Making of: Rolling On».

Шаг 1: Моделирование

Инструменты моделированияЯ использую традиционные инструменты, такие как: extrude, bevel, inset, brush, interactive cut и fill holes. Тепловоз был создан посредством полигонального моделирования, без применения скульптинга. Первым делом я создал колесо, затем средний корпус и в конце верхний корпус. После того как я закончил с большими элементами, я перешёл к деталям поменьше. Я старался сохранить баланс по детализации по всей поверхности. Мелкие детали необходимы всегда, они определяют размер объекта и могут разнообразить скучный силуэт придав более интересный вид объекту.

Железнодорожное полотно было также создано с помощью полигонального моделирования.
Тут я использовал несколько деформаторов, таких как Bend, FFD(Box), а также сплайновые объекты Sweep/Tube. Используя Scatter инструменты, я создал камни и траву.

Soft selection

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

Сетка

На изображении выше показана сетка с первым subdivide уровнем.

Шаг 2: Текстурирование, Скульптинг.

ZBrush инструменты и displacement

Скульптинг деталей

Эти 2 части работали вместе. Я создал текстуру деталей, которую использовал для displacement‘а в ZBrush. В ZBrush я получил Cavity и Normal карты, для улучшения диффузного цвета деталей. Для сглаживания углов и граней я использовал TrimDynamic кисть. На плоских поверхностях я использовал soft wave/noise эффект, используя стандартную кисть в режиме Scatter Projection. Когда используете эту кисть не забывайте переключать параметр Backface Culling, дабы не создавать ненужную детализацию.

Весь тепловоз я разделил на 4 отдельных части. Корпус с 6к текстурой, элементы корпуса с 4к текстурой, колёса с 4к текстурой и объекты детализации с 3к текстурой. Я хотел использовать displacement в качестве лёгкого повреждения граней, поэтому эти смещённые элементы отнёс в группу объектов детализации. Эта геометрия была дополнительно сглажена, для придания более ровной топологии для последующего displacement‘а. Другие части тепловоза были созданы только лишь с картами нормалей.

Группы материалов

Маски в Substance
Рассматривая слои диффузной текстуры я хотел бы продемонстрировать структуру элемента красной пластины. Я считаю, что первый базовый слой всегда должен быть 50% серого. Это помогает в управлении силы тональности цвета и базового цвета/баланса детализации. Это необходимо потому, что мы видим оттенок цветок по разному, в зависимости от того, есть ли у нас чёрный или белый фон. Так же, фон с серой 50% заливкой помогает нам при ручном создании bump и displacement карт. Следующим шагом является создание материала и UV масок для покраски и процедурных расчётов. К этому времени я создал множество групп полигонов с различными цветовыми шейдерами. Это помогает в создании групп материалов внутри каждого UV сета. Этот этап создания масок также важен на стадии композа, дабы я мог создавать градиентные маски проще и быстрее.

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

Следующий этам имеет в основном процедурный характер. Я использовал Substance Painter для получения масок потёртых краёв, повреждений и грязи. Я использовал простой слой заливки(fill color) и базовый генератор для их создания. Для масок краёв я использовал «edge damage generator» и «dirt» для масок грязи. Думаю названия слоёв сами за себя говорят. Я лишь поигрался с контрастностью и силой эффектов в генераторах. Они сработали отлично, вручную исправил лишь несколько артефактов. Я также нарисовал дополнительную грязь, которой не было при запекании текстур, а именно Ambient Occlusion и Thickness, для имитации грязи на поверхности.

Diffuse и Specular

Я добавил синий цвет поверх оранжевого для уменьшения насыщенности цветового тона от изменений окружающей среды. Наилучшим образом это работает в Specular. Также, к цвету, я добавил подтёков и ржавых деталей. Я был осторожен при покраске и повреждении краёв для недопущения создания подтёков, и также использовал грязь поверх них. Выше я привёл 4 простых шага их создания. Последним шагом был слой High Pass, который подчеркнул строение поверхности и мелкие детали. Когда я закончил с diffuse цветом, я создал необходимые для шейдинга текстуры — Diffuse,Specular Color,Roughness/Glossy, Reflectivity, Normal/Bump (16 bit), Alpha и Displacement (16 bit) для каждого объекта.

Материалы в сцене

Я использовал V-Ray для создания элементов сцены. Для Diffuse, Glossy, Specular, Reflectivity, Normal/Bump and Transparency использовался простой V-Ray материал. По настройке материала я не могу дать достаточно советов, поскольку они всегда зависят от освещения и положение объекта. Важной частью шейдеров является эффект Френеля. Этот эффект означает то, как себя ведёт материал в точке затухания. Почти все материалы ведут себя по-разному в зависимости от того под каким углом вы смотрите на них. К примеру, основные металлы становятся темнее, а пластик и дерево ярче. Сила этих затуханий может быть вычислена посредством Френеля.

В визуализации я также использовал Two-Sided материалы. Это очень полезно с плоскими 2D объектами. Двусторонние материалы позволяют добиться эффекта объёма для плоских объектов. Двусторонний материал генерирует поддельную толщину для 2D объектов дабы сделать их 3D геометрией. Это необходимо потому, что CGI объекты имеют положительную (“positive”) и обратную (“negative (backface)») стороны, которые определяют ориентацию поверхностей по отношению к источнику света. Нормаль поверхности зависит от внешней и внутренней поверхностей геометрии, поэтому если геометрия закрытая, то каждая нормаль имеет положительную внешнюю сторону. Когда художник создаёт симуляцию ткани, волос, частиц, симулятор/генератор полагается на направление поверхности («реальной поверхности объекта»). В случае с симуляцией ткани, свет не проходит сквозь коллайдер объекта (частицы движутся только в одном направлении), поэтому лучи рендера останавливаются на поверхности. Из этого правила есть исключение — подповерхностное рассеивание (SSS).

Я также использовал плоские 2D объекты для травы и покрашенных элементов. Т.к. противоположная сторона будет игнорироваться для Bump/Normal и GI расчётов рассеивания я подделал двусторонность нормали поверхности используя двусторонний материал. Т.к. 3d объект не будет отражён с альфой (к примеру полоска травы) то нужно использовать плоский 2d объект с альфой и двухсторонним направлением нормалей.

Рендеры или игровые движки игнорируют внутренние поверхности при просчёте, для экономии ресурсов. Двусторонний материал заставляет рендер просчитывать обе стороны, поэтому 2D элементу всё равно, какой стороной он повёрнут. Я также использовал Compositing Tag, который помогает разделить элементы при рендере. Когда я использую этот тег на объекте, то он всё равно участвует в процессе обсчёта GI, теней и тд., но он будет отделён на финальном слое. Это также полезно для разделения элементов в составе класса.

Шаг 3: Создание 3D окружения

Элементы окружения
Окружение содержит больше элементов нежели сам тепловоз. Испытанием стало жд полотно и каменистый участок, они потребовали много вычислительной мощности. Я создал 4 вида низкополигональных камней с простой UV развёрткой. Я использовал инструменты разбрасывания (Scatter) дабы создать каменистый участок. Поверх камней я создал деревянные доски в качестве основы для жд полотна. В конце я создал рельсы, просто экструдировав их из простых 2D объектов, сделав их длиною в 50м, согнул где надо, использовав Bend деформатор и склонировал шпалы вдоль них. Развилка жд полотна была сделана вручную с использованием уникальных элементов. Стрелка является центральным фокусом и все остальные объекты добавлены для обслуживания сцены. Трава и другие растения были созданы аналогичным камням способом.

Эти разбросанные элементы требовали слишком много вычислительной мощности, поэтому мне пришлось использовать их как референсные объекты, это значит, что некоторые части итоговой картинки были использованы из другой сцены. К примеру, трава, камни и растения. Шейдеры этих элементов находятся в отдельной сцене, поэтому для внесения каких либо изменений в них, мне приходилось работать в разных файлах. Это помогло GPU обрабатывать меньше полигонов и текстур одновременно.

Железнодорожная грязь

Для создания эффекта грязи между шпалами и камнями я использовал Mari с Paint Merge. Для соединения поверхностей и разнообразия деталей я использовал лишь цвет для получения этого эффекта. Элементы жд полотна и травы были отрендерены в разных проходах, что упростило их соединение на этапе постобработки.

Шаг 4: Освещение

Сцена в процессе её создания

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

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

Шаг 5: Поддержка сцены, дополнительное окружение

Для заполнения фона я использовал простенькие объекты гор. Это было необходимо для этапа matte-painting‘а, дабы помочь взгляду почувствовать перспективу/глубину. Это также было очень полезно на предварительном освещении и при вычислении освещения/теней. В исходной сцене я создал высокие горы, но т.к. поезд требует больше пространства в кадре, ибо весь акцент на нём, то горы в финальный вариант не попали.

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

Фоновый ландшафт без тепловоза

Matte-painted элементы
На изображении выше показано то множество слоёв контента который был использован в сцене. Жёлтые элементы представляют собой объекты вне фокусировки. Красные элементы — главные объекты сцены. Бирюзовые и фиолетовые элементы — второстепенные объекты сцены. Голубые элементы — matte-painting объекты используемые для соединение с 3d элементами должным образом. Светлым коричневым цветом выделена область, которая разделена зелёной областью деревьев. Тёмно-красная область представляет собой реку. Фиолетовая часть — горы. Ну а в чёрной области расположен другой поезд который был также добавлен посредством matte-painting‘а.

Шаг 6: Композиция, глубина, градации

Композиция

Композиция является самой сложной и в тоже время самой важной частью создания изображения. Освещение также важно, т.к. оно сразу же позволит зрителю сделать вывод, хорошее или плохое это изображение. У каждого есть ощущение того, как должна выглядеть картинка. Прежде чем создавать органичные картины, художник может потратить много лет на обучение и приобретение нужного опыта. На данный момент существует множество программного обеспечения, которое помогает в создании изображений. Есть также и основа, т.н. золотое сечение, которое помогает правильно расположить объекты в сцене. В данной работе я использовал 2 таких сечения, зелёное — основное, и красное — для окружения. Для достижения наилучшего результата, я изменял размер 3d объектов. Объекты обслуживают сцену, а не наоборот.

Глубина атмосферы

Атмосфера — это один из наилучших способов для ощущения размеров объектов и глубины изображения. В основном это снижение насыщенности и контрастности, что позволяет ощутить одно пространство на расстоянии от другого. Когда создаёте сцену, полезным будет эффект де-фокуса, который помогает зрителю сфокусировать взгляд на одном объекте или группе оных, объекты же которые не столь важны скроются в де-фокусе. То же самое и с освещением, если мы видим что-то в ярком свете, глаз сужает диафрагму, тем самым создаётся эффект свечения вокруг объекта. Когда убираем источник освещения, то глазам нужно время, чтобы адаптироваться к низкой освещённости и иметь возможность рассмотреть что-то снова. Эти эффекты помогают создать более реалистичную графику и придать глубину сцене. В данном случае я использовал 4 слоя глубины. Это простые чёрно-белые градиента. Я также использовал мягкое свечение в верхней части локомотива, т.к. небо более освещённое нежели поезд. На изображении выше показан пример с одним слоем цвета, с мягкой альфа кистью и 15% прозрачности.

Советы по градациям оттенков

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

Маски градаций

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

Улучшение переднего плана

При использовании высоко детализированных текстур, эти самые детали любят теряться на этапе рендеринга. Если мы работаем с изображениями большого размера, нам необходимо улучшить изображение, в тех местах, где эти детали будут утеряны. Я отметил блики зелёным, а слой грязи красным. Эти детали будут видны лишь при полном разрешении или при увеличении изображения, но они нужны для получения реалистичного изображения. Также небольшое улучшение шероховатости граней, дабы придать им более естественный вид. Ambient occlusion — создаёт красивый эффект перехода между тенями и отражениями; используйте её с крайней осторожность, т.к. переусердствовав, вы можете создать эффект мультяшности.

Пост эффекты

Финальным шагом было добавление в сцену пост эффектов, а именно: виньетка, хроматическая аберрация, блики и световые лучи; также был добавлен падающий снег, который представляет собой лишь белые точки под motion blur‘ом.

Итоговое изображение

Рекомендуем посмотреть
  • Фотограмметрия с использованием смартфона В том случае, если вы будете снимать на телефон, то используйте приложение которое не пережимает фотографии и в котором можно вручную задать значение экспозиции. В нашем случае это был Samsung Galaxy
  • Конвертирование текстур в/из PBR формат В данной статье, я собираюсь продемонстрировать то, как контент созданный для традиционных шейдеров может быть сконвертирован в физически корректные шейдеры (PBR), как сконвертировать контент из
  • Статическое освещение в Unreal Engine 4 Каждый проект уникален и имеет собственные цели, поэтому этот раздел даст вам основные концепции и базисы для познания того, что вы хотите получить от статического освещения.
  • Динамическое освещение в Unreal Engine 4 В данной части статьи мы рассмотрим решения, направленные на улучшение качества теней соответствующих геометрии. Это также поможет улучшить качество динамических теней.
  • Проблемы с освещением и методы их решения в Unreal Engine 4 По правилам освещения, чёрные тени обычно используются, если у вас нет заполняющего света. Это часто происходит по тому, что окружающая среда имеет один направленный поток света, представленный как