Top
Папа рекомендует

Создание стилизованного персонажа в Blender

Перевод статьи с портала 80 Level.

В этой статье Lukas Walzer рассказал о работе над персональным проектом «Dean», создании hand-painted текстур и hard surface моделировании.

Вступление

Привет, я Lukas Walzer, 3D-художник из Германии. Мой путь в CG-индустрию начался со времен обучения промышленному дизайну в родном городе Регенсбурге. Мне всегда нравилось создавать дизайн. Тем не менее, по ходу обучения я заметил, что финальная визуализация модели в Blender, это моя любимая часть работы. Потому, окончив обучение я начал заниматься созданием собственных проектов в CG.

Вскоре я устроился на работу, как художник-моделер в Mackevision в Штутгарте, а затем в качестве 3D-художника в UP Design Studio. В 2018 году меня пригласили в Animationsfabrik, находящиеся в Гамбурге, где я сейчас и работаю лид-художником. Тут я занимаюсь разработкой образов и другими аспектами VFX. Сейчас мы делаем ремейк полнометражного фильма «Звезда Лоры», который выйдет в декабре этого года.

Проект Дин

Как и многие другие проекты, этот начался с отличных референсов, концепта и большого желания научиться чему-то новому. В работе я всегда стараюсь найти особенный подход к делу, выработать стиль или найти способ сделать что-то своим методом. Увы, чаще всего это не удается и часть меня негодует, ведь очень хочется отыскать и попробовать, что-то новое в CG.

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

Также, недавно я открыл для себя творчество deepfry на ArtStation. В своих персонажах он сочетает винтажный стиль уличных бандитов и технологичность киберпанка, что очень привлекло мое внимание. Среди его концептов мне особенно понравился Дин. В нем собралось несколько элементов, которые я хотел воплотить. Интересное лицо, одежда и крутые hard surface элементы в стиле, который я еще не пробовал.

Потому, я решил объединить две идеи — Дина и Tall Grass, создав своего 3D-персонажа стилизованного нефотореалистичным рендером.

Создание лица, тела и одежды

Когда я работаю над человеческими персонажами, я почти всегда начинаю с уже имеющейся базовой модели. В данном случае я сделал ее в бесплатном генераторе MBLab для Blender. Так я получил модель с приличной топологией, правильной анатомией и даже базовым ригом, который позволил расположить модель с перспективой, как на концепте. 

Создавая лицо я использовал аддон FaceBuilder от KeenTools. Он сильно упрощает создание основной 3D-сетки, которая повторяет формы лица. Изначально аддон использовали для подгонки лиц актеров в VFX-продакшене, но также он хорошо работает и для рисованных персонажей.

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

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

Все три типа сеток (лицо, одежда, hard surface) требуют разных подходов.

Делая лицо и волосы я использовал исключительно скульптинг. Подчистив модель сделанную FaceBuilder, я взялся уточнять формы лица и максимально придерживался оригинального концепта. Мне хотелось, чтобы лицо выглядело нарисованным, потому я добавил грубых мазков кистью, как на лице главного героя в Tall Grass. Затем я сгладил их с помощью Scrape Brush, как это сделал бы настоящий художник по глине.

Для hard surface деталей я использовал пару способов моделирования. Обычное SubD-моделирование (для более простых форм), либо сперва создавал более сложные формы в виде 3D-эскиза, следуя методу, описанному Rachel Frick. Он заключается в том, что сначала создается основная форма, например, панель на браслете. После чего вырезаются и уточняются элементы с помощью функции Booleans. Затем можно ее преобразовать в скульптурную сетку с помощью Remeshing и указать контуры панелей в режиме Sculpt Mode с помощью кисти Crease Brush. Остальное — обычная ретопология.

Я рекомендую сначала моделировать более грубые формы (панели), затем разделить их и уменьшить до чистовой модели. Тем самым вы получите дополнительное разрешение, необходимое для мелких деталей, сохраняя при этом чистый силуэт. Признаюсь, детали экзоскелета с панелями были самыми сложными в этом проекте. Мне понадобилось несколько попыток, пока я не добился желаемого результата.

Делая элементы из ткани я всегда начинаю с low poly. Большая часть одежды имеет очень простую форму, которая усложняется за счет кроя, швов и складок. Потому я стараюсь реалистично создавать блокаут, чтобы форма и размер элементов выглядели правдоподобно. Также регулярно сверяюсь с референсами, чтобы подмечать, где ткань кроится и сшивается. Я почти хирургически точно разрезал свою сетку и соединял разные части с достаточным нахлестом. Местами я применял модификатор Solidify, чтобы добавить дополнительной толщины. Используя лишь команды Bevel и Shrink/Fatten (Ctrl+B и Alt+S), я дополнительно детализировал некоторые места, чтобы из них получились швы.

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

Закончив с SubD-основой одежды, я использую модификатор Multires для аккуратного скульптинга поверх модели. Добавляя складки и помятости с помощью альфа-штампов и применяя кастомную кисть для небольших складочек в местах сгибов ткани. Помимо этого у модификатора Multires есть еще одно весомое преимущество. С ним можно не беспокоиться об артефактах при запекании, поскольку обработка созданная модификатором, всегда очень простая и точная. Это важно при работе с наложенниями и плотно скомпонованной геометрией, которая в ином случае может вызвать кучу проблем.

Наконец, я создаю копию high poly и выделяю все линии-швы. Конвертирую их в кривые и с помощью модификатора Array и Curve вставляю простую цилиндрическую форму шва во все линии, создавая швов. High poly одежды практически завершена и готова к развертке.

Развертка и репотология

Сама UV-развертка несложный процесс, если должным образом подготовить сетку. К этому моменту уже удалена лишняя геометрия, которая не будет видна камере, например, обращенные внутрь грани, созданные модификатором Solidify. Они занимают много UV-пространства впустую, поэтому стоит потратить время на тщательную проработку сетки. Если детали одежды расположены так, как я описал выше, то развернуть их будет проще простого, поскольку они будут представлять собой плоские поверхности, изогнутые в свою форму. Значит и обратный процесс так же прост! В целом, функция автоматической развертки справляется со своей задачей, и скорее всего вам даже не придется ничего поправлять. 

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

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

Я использовал бесплатный аддон UV Packer для Blender, который избавил меня от рутинной работы по упаковке каждого отдельного UV-слоя. Он отлично справился.

Что касается ретопологии, то ее мне не пришлось делать. Как я говорил, все (кроме головы) было смоделировано в обычном SubD с использованием Multires. Все, что осталось сделать, это запечь более высокие уровни SubDivision в Normal для более низких уровней в Blender, а это быстро делается при использовании Multires.

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

Я намеревался считай вручную раскрасить всю модель, чтобы добиться высокого уровня детализации, но рисовать несколько 4k или даже 8k UDIM было бы очень проблематично. Поэтому я сделал прокси 1k UV, с помощью которого Blender без проблем работал в режиме рисования текстур. Я использовал прокси-текстуры для подбора цветов, заимствуя их из оригинального концепта.

Затем я перенес прокси в Photoshop, увеличил и начал рисовать поверх них. Уже определившись с цветом, я лишь старался добиться большей глубины и детализации, снова и снова делая мазки грубой кистью, больше похожей на щетку. Затем я создал карты AO и Curvature Maps в Blender и наложил их в Photoshop на металлические детали, чтобы придать им дополнительную выразительность.

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

В качестве завершающего штриха я значительно повысил резкость текстур в Photoshop.  Мазки кисти стали более заметными и удалось добиться зернистого, контрастного и фактурного вида.

Практически для всех частей эта процедура была одинаковой. Потрудиться пришлось только с головой, чтобы удержать планку качества. Я использовал проекционное наложение для переноса оригинального рисунка на текстуру, а затем закрасил ее в Substance Painter. Там, пробуя разные настройки я подбирал, насколько сильно должна просвечиваться проекция. Это было особенно важно при работе над глазами. Было непросто подобрать похожий на оригинальный концепт оттенок вокруг них.

Еще я использовал некоторые хитрости с шейдерами, чтобы сделать внешний вид персонажа еще более интересным. Стандартный Principled Shader я применял для всего, плюс немного смешивал его со стареньким Cycles Toon Shader из Blender, который выглядит реалистично, но я сделал его немного более мультяшным.

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

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

Рендеринг и освещение

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

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

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

Заключение

Думаю, в данном случае большую роль играл концепт взятый за основу. Я старался максимально не отходить от заданного стиля, что даже шейдерам придал рисованный вид. deepfry уже проделал потрясающую работу, и мне оставалось только перенести 2D-дизайн в 3D-пространство.

Даже начиная с собственного концепта, на мой взгляд, важно иметь четкое понимание того, чего вы хотите добиться.

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

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


Подписывайтесь на нас в Facebook, Telegram, Vkontakte, Pinterest.

+1
5
+1
2
+1
1
+1
1
+1
0
+1
0
+1
0
Поделиться: