Создание персонажа «Чародейка»

Перевод статьи художника Эммануэля Лекутюрье (Emmanuel Lecouturier).

Эммануэль Лекутюрье — 3D-художник из Франции. Он разрабатывает персонажей в игровой индустрии с 2010 года, участвовал в проектах «A Plague Tales: Innocence» и «Marvel's Guardians of the Galaxy».

В этом уроке он разберёт несколько аспектов работы «Чародейка», включая создание волос, освещение и подачу финальных рендеров с помощью Marmoset Toolbag.


emmanuel-lecouturier-main.jpg


Разработка волос


Коллекция референсов


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


Моделинг

Hair_Sculpt.jpg


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


HAIR_BASE.jpg


Все карты для волос сделаны вручную в 3ds Max. Я использовал как можно меньшее количество полигонов, чтобы легко редактировать и разделять их на части позже для более гладкого вида. Я начал строить несколько нитей поверх моей скульптуры в Zbrush, тщательно настраивая поток и объём. Я раскрасил пряди точно так, как раскрасил свой референс, чтобы помочь себе. Первый слой волос предназначен для понимания стиля, объёма и формы. Этот слой должен был быть достаточно плотным, чтобы скрыть скульпт под ним. С этого момента я начал работать над текстурой, чтобы лучше понимать, как будет выглядеть конечный результат.


HAIR_LAYERS.gif


Я продолжал формировать слой за слоем, стараясь свести к минимуму наложение локонов. Ниже мой пайплайн:

  1. Базовый слой: для придания прическе плавности и объёма.
  2. Большие формы: крупные пряди волос, которые нарушают общую плавность и придают причёске более естественный вид.
  3. Мелкая детализация: мелкие прядки, чтобы добавить неопрятности.
  4. Выбивающиеся волоски: они позволяют разбить силуэт.
  5. Переходные волоски: переход от волос к коже на лбу.

Создание плейнов — очень итеративный процесс, в котором моделирование и текстурирование действительно связаны. Рекомендуется сохранять последовательность, сохраняя каждый слой волос в отдельном объекте, чтобы их можно было легко модифицировать. Обязательно проверяйте результат в Marmoset Toolbag почаще.


Текстурирование


HAIR_XGEN.jpg


Я создал текстуры волос в Maya, используя XGen и Arnold. Все текстуры были созданы в render passes, кроме specular map, отрисованной в Photoshop.

  1. Базовые волосы
  2. Мелкие локоны
  3. Большие формы
  4. Выбившиеся волосы
  5. Переходные пряди
  6. Кончики косы


Настройка материала


HAIR_TEXTURES.jpg


Ниже приведены карты текстур, которые я создал для текстур моих волос:

  1. Albedo
  2. Opacity
  3. Specular
  4. Normal
  5. Direction
  6. Occlusion


HAIR_MATERIAL_PROGRESSION.gif


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

Normal Map (4): На этой карте у меня есть только информация о каждом нормале волос, чтобы помочь разбить блики. Я не хочу никакой другой информации о нормалях (волнистости или кривизны), поскольку она должна полностью контролироваться геометрией.

Albedo Map (1): На этой карте нет особых различий, так как я хотел почти полностью белый / серый цвет волос. Существует небольшой градиент от корней до кончиков и несколько небольших изменений в каждой пряди волос.

Gloss: Я не использовал карту блеска. Изменение было сделано в моих картах отражательной способности и полости.

Horizon Smoothing: Я немного смягчил эффект, чтобы отражения на краях, где возникает эффект Френеля, выглядели более плавными.

Diffusion: Я использовал модель Subsurface Scatter Diffusion, чтобы имитировать, как свет рассеивается через волосы. Чем светлее волосы, тем больше рассеивание, поэтому я использовал довольно высокое значение Scatter Depth из-за масштаба сцены. Чтобы проверить масштаб, выберите параметр «Show Scale Reference» в свойствах объекта «Scene». Рассеяние также помогает сгладить любые жесткие тени.

Specular map (3): Этот вариант получился очень простым и был выполнен в Photoshop. Это серый цвет с добавлением шума, нанесённым и растянутым по направлению к волосам. Помогает придать волосам блеск.

Fresnel: Как и в случае с установкой Horizon Smoothing, я уменьшил значение Fresnel, чтобы уменьшить блеск на волосах.

Reflection: Я использовал модель Anisotropic Reflection, чтобы имитировать отражение света на волосах, и подключил Direction Map (5) для контроля процесса. Убедитесь, что анизотропные отражения следуют направлению каждой карты волос.

Secondary Reflection: Имитирует свет, проходящий через волосы, его отражение на другую сторону и отражение от волос. Я использовал низкое значение Gloss, чтобы иметь больший спред, чем первичное отражение. Это более заметно на светлых волосах, поэтому я использовал очень высокое значение Intensity. Я использовал ту же карту Directional и настройку Anisotropy, что и для основного отражения. Из-за чешуйчатой структуры волос, которая при увеличении выглядит как серия конусов, вторичное отражение смещено от основного отражения вдоль направления корня. Параметр Refraction Shift перемещает вторичное зеркальное отражение вдоль волос и имитирует этот эффект.

Cavity: Я использовал карту Ambient Occlusion, которую я сделал в Maya в слоте Cavity. Это была, пожалуй, самая важная карта, так как мои карты Albedo и Specular были просты. Слайдер Diffuse Cavity помог создать микротени в волосах и дал ощущение глубины. Слайдер Specular Cavity заблокировал отражательную способность в области микротени, чтобы придать большую глубину и нарушить равномерность отражения.

Transparency: Я использовал модель Dither Transparency с Alpha Map (2) и отключил параметр «Cull Back Faces», чтобы получить двусторонние грани.


Rendering Normal & Directional Maps


YSuP4DR7Jr9gx7C5jZpUeZdRBU3QxrCpN2hRlVL4_fvCj1D6WsHO-0bVwfOVSLfUT5Upv4xF.jpg


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

  1. Node graph for Normal map
  2. Node graph for Directional map
  3. Set Range Node for remapping value in the 0-1 range
  4. OAVs configuration
  5. Normal map
  6. Directional map
  7. Ambient occlusion map

Я настроил материал для использования в качестве прохода рендеринга с использованием Maya’s Hypershade. Таким образом, мне не нужно преобразовывать волосы в геометрию и отображать карту нормалей в другой программе. Я использовал встроенный нод Sampler Info, потому что он помогает отображать много различной информации. В нашем случае нас интересуют обычная камера и Tangent VCamera. По умолчанию для выходных значений узла задан диапазон от -1 до 1, поэтому мне потребуется переназначить диапазон значений от 0 до 1, чтобы сохранить правильное значение для карты нормалей.

Мне нужно будет поместить этот шейдер в новый AOV, чтобы произвести проход рендеринга для моей карты нормалей и карты направлений. Обязательно установите тип данных как вектор для экспорта в линейное цветовое пространство вместо sRGB. Я добавил плоскость позади волос с нанесенным нейтральным цветом, который соответствует моей карте. Это помогает избежать ошибок на границе каждого волоса, когда они сглаживаются с черным фоном по умолчанию. После их создания вы можете подключить эти карты в слот для Marmoset Toolbag (как показано в разделе «Настройка материала» выше). На GIF ниже показано, что происходит, когда карта направления наносится на волосы.


Hair_Directional_Map.gif


В этом файле Maya содержатся мои шейдеры для карт Ambient Occlusion, Normal и Directional, которые вы можете использовать в качестве AOV для рендеринга ваших карт. Просто зайдите в Hypershade -> File -> Import files и добавьте шейдеры в вашу сцену.

Примечание: файл, скорее всего, будет работать только с Maya 2017 и более новыми версиями.


Создание кристаллов


Crystal_turn.gif


Я хотел, чтобы что-то контрастировало с холодным тоном сцены, поэтому я добавил этот волшебный светящийся кристалл. Помимо баланса композиции изображения он дал мне возможность поиграть с Refraction и Emissive возможностями Marmoset Toolbag. Модель кристалла была создана и обработана в ZBrush с использованием UV. Текстуры были созданы в Substance Painter и Photoshop.


Crystal_material.jpg


Ниже приведены карты текстур, которые я создал для кристалла:

  1. Gloss map
  2. Heat map
  3. Albedo map
  4. Specular map
  5. Normal map

Кристалл состоит из двух слоёв геометрии с двумя различными материалами. Первый использует Refraction в модуле Transparency. Я установил флажок Use Microsurface, чтобы использовать карту блеска (Gloss Map) для размытия преломления. Еmissive material внутри кристалла создает ощущение полупрозрачности. Второй слой использует тепловую карту для создания эффекта свечения. Этот режим очень удобен, так как нужно только создать карту в оттенках серого, которую можно легко сгенерировать из Substance Painter. Toolbag позаботится об отображении физически правильного цвета в соответствии со значением температуры. Чтобы усилить свечение, я добавил яркий цвет для Reflectivity и установил значение Intensity до 2. Добавление Secondary Reflection с настройками ползунков Anisotropy и Refraction Shift даёт непредсказуемый эффект свечения.


Подача


LIGHTING_PROGRESSION.gif


Здесь показано, как я использовал систему освещения и функции постобработки в Marmoset Toolbag для окончательного рендера.


Освещение


Light_setup.jpg


Отправной точкой для моего освещения была простая трёхточечная установка освещения. Ниже приведено полное описание Sky и Light. На левой стороне изображения показаны мои 4 основных источника света, а на правой — установка со всеми источниками света.

HDRI: Я использовал пресет Ennis House Sky Preset. Он идеально подходит для моей сцены из-за слабого освещения. Это дало мне достаточно света, чтобы заполнить изображение и усилить контраст в светлой области. Кроме того, он создал красивые блики на глазах и металлических поверхностях.

Main Light (1): Это тёплый свет, излучаемый кристаллом. Поскольку свет перед её лицом, я использовал достаточно низкое значение, чтобы придать персонажу тёплый оттенок, сохраняя тени на её лице.

Back Light (2): Яркий синий цвет, дополняющий оранжевый кристалл.

Rim Light (3): Поскольку фон почти полностью чёрный, мне нужно было больше света, чтобы отделить персонажа от фона и иметь больше видимых форм. Я использовал около 8 контровых источников света, чтобы создать подсветку персонажа. Я использую длинные, тонкие источники света, когда мне нужно создать контур и подчеркнуть силуэт персонажа. Я также добавляю точный (действительно небольшой по ширине) точечный источник света, чтобы выделить зеркальные блики на отражающих материалах, таких как кожа или металл.

Key Light (4): Я добавил яркий синий свет на её лицо, чтобы подчеркнуть фокус и слепить черты лица. Синий цвет также уравновешивает тёплый свет кристалла и световые блики на коже.

GI: Добавление Global Illumination помогло с правильной окклюзией и выводом реалистичного отражения.

Fog: Это помогло создать нужную атмосферу и смягчить общую контрастность изображения.


Shadow_Quality-1.jpg


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

  1. Omni Light с разрешением тени, установленным на High.
  2. Omni Light с разрешением тени, установленным на Ludicrous.
  3. Spot Light под углом 120 с разрешением тени, установленным на High.
  4. Spot Light под углом 30 с разрешением тени, установленным на значение High.


Постобработка


POST_PROCESS.jpg


Поскольку я хотел получить атмосферное изображение, я сильно полагался на встроенные возможности постобработки Marmoset Toolbag, чтобы закончить рендеринг. На изображении выше показан мой рендер до (1) и после (2) постобработки. Я добавил немного шума и кривых в Photoshop.


Портретное освещение


Portrait_LIGHTING_PROGRESSION01.gif


Портретное освещение в реальном времени может быть довольно сложным, в основном из-за низкого качества теней. Однако благодаря мощной системе освещения Toolbag работа становится лёгкой и увлекательной. Для этой настройки не использовались ни GI, ни Sky lights — она опиралась исключительно на обычных источниках света Toolbag.


j3tvO7V62rSfW92ICKf1fy9rHQTYJjH-Bc7Faqhd5qies_7Sh6GdstubepZyRK6cg_vSUuKG.jpg


  1. Main Light: Яркий синий свет помещён слева от её лица. Я могу перемещать свет влево или вправо, в зависимости от количества теней, которые я хочу получить на правой стороне лица. Так как нет Sky Light, нет отражения от окружающей среды. Это будет единственный источник света, который создаст зеркальность глазам. Я увеличил ширину (Width) света для того, чтобы красивые блики в глазах помогли придать ей живой вид. Это также поможет сгладить резкие тени.
  2. Rim Light: Он подчёркивает её силуэт на тёмном фоне и создаёт некоторые блики на волосах и украшениях.
  3. Fill Light 1: Я хотел, чтобы её правая сторона сливалась с тёмным фоном. Так что я сохранил значение интенсивности (Intensity) очень низким, чтобы добавить немного окружающего освещения и вернуть некоторую информацию из тени.
  4. Fill Light 2: Это то же самое, что п.3, но для волос.


* * *


Спасибо за внимание!

Перевод подготовила Костина Арина специально для школы CG LAB, редактор — Лина Сидорова.



721 0 850 1
0
RENDER.RU