Оффтоп Стас Шиловский
1 416

Использование сканов при создании стилизованных персонажей

3D-художник и иллюстратор Константин Гдалевич рассказывает о создании стилизованного персонажа по концепту Jesus Blons. Текстурирование этого прекрасного кита было выполнено с помощью Quixel Suite и Megascans.

В закладки

Знакомство

Здравствуйте! Меня зовут Константин, я родился в России, но сейчас живу в солнечном Израиле. Я работаю в индустрии игр для мобильных платформ, а также занимаюсь пост-продакшеном в качестве дизайнера и 3D-художника. Помимо игр мне довелось поучаствовать в самых разнообразных проектах, от рекламных до маркетинговых. В 2015 году я вместе с очень талантливыми ребятами из 7 Elements Studios занимался разработкой игры Sky Wars: Archon Rises. К сожалению, она так и вышла, но вы можете увидеть некоторые элементы UI и маркетинговые шоты в моем портфолио.

В 2014 году я понял, что моих навыков рисования недостаточно, чтобы реализовывать образы, которые я видел в моем воображении, тогда я начал интересоваться миром 3D, и в частности, Maya. В то время я работал в пост-продакшен студии Gravity вместе с талантливыми 3D-художниками, у которых я учился. Я был дизайнером, а между проектами, бегал в «волшебную» комнату 3D, чтобы осваивать навыки моделирования. Это было прекрасное время.

Кит

Кит Эндрю (Andrew the Whale) — моя работа для конкурса Beneath the Waves на Artstation. Просматривая великолепные концепты художников, я обнаружил этот потрясающий рисунок, сделанный Jesus Blons (обязательно зацените его страничку!).

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

Скульптинг

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

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

Я хотел соединить стилизованный вид концепта с реалистичным подходом к детализации и моделированию в целом. Вдохновением для финального рендера мне послужил трейлер из Beyond Good and Evil 2. Ребята из Ubisoft проделали отличную работу по оживлению стилизованных персонажей благодаря потрясающим текстурам и освещению.

Для лучшей организации процесса я разбиваю скульптинг на 4 этапа:

1) Блокаут – самая важная часть. Моделирование похоже на пирамиду – если основание плохое, то качество последующей работы уже неважно.

Результат блокаута:

2) Вторичные формы – я продолжаю работу с большими массами и добавляю крупные мышцы, жир и тд. Всегда помните о правилах хорошей композиции и пластике персонажа. Иногда очень сложно понять, когда заканчивается блокаут и начинаются вторичные формы. На этой стадии я легко могу вернуться на шаг назад и подправить болванку.

Кит с вторичными формами (я быстро поставил его в позу, чтобы передать настроение финальной версии работы):

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

Результат скульптинга третичных форм:

4) Детализация – последняя стадия, когда вы применяете альфы, карты с texturing.xyz и сканы с surfacemimic.com. Если на предыдущих стадиях все сделано правильно, то сейчас вы радуетесь, как младенец, нанося мелкую детализацию на сбалансированную модель персонажа.

Результат детализации (о том, как добавить морские желуди, я расскажу позже):

В работе я использовал базовые кисти: Standart, мой любимый Clay Buildup и, конечно, Orbs crack. Все отверстия (рот, глазницы, дыхало) я выполнил в Maya. Мне гораздо проще просто закинуть туда модель, удалить полигоны, и отправить в Zbrush для замены меша без сабдива.

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

Для их нанесения я сделал быструю UV-развертку в Zbrush с помощью UV master. Мне нужна была только область живота, поэтому я объединил ее в одну полигруппу и нажал на Unwrap. Вот, что я получил:

Очень грубая развертка, но без искажений. Я отправил ее в Illustrator и нарисовал аккуратные полосы. Я сделал одну полосу, клонировал ее и применил функцию Envelope Distort, чтобы поместить копии полосы на нужный мне участок UV.

Полученный результат я загрузил в Zbrush через меню Surface и нажал MaskByNoise:

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

Для детализации кожи я использовал c XYZ и Surfacemimic, массу кистей из набора XMD и альфы, которые я сделал сам. Эта стадия, скорее всего, окажется весьма долгой.

Для постановки модели в позу я использовал Transpose Master, и на это ушло достаточно много времени. Хорошая поза персонажа может вывести вашу работу на новый уровень, поэтому я не торопился. Я сделал фотографии себя с разных ракурсов, притворяясь максимально расслабленным и пьяным, и тщательно изучил их. Я вносил правки в позу кита часами напролет, пока, наконец, не остался доволен результатом.

Детализация

Нанесение морских желудей (усоногих раков, живущих в известковой раковине) на меш было весьма интересным процессом. Этими сканами в формате STL со мной любезно поделился Paul.

Я открыл их в Zbrush, почистил и превратил в IMM-кисть.

Главное в этом процессе – сначала сделать UV-развертку, назначить текстуру ( временную), а затем наносить на меш. Чтобы кисть сработала наилучшим образом, ваш меш тоже должен иметь развертку и текстуру ( они могут быть какого угодно качества). С таким подходом вы быстро получите сотни морских желудей с прекрасной разверткой.

Вы можете загрузить кисть отсюда. (Помните, что у них уже есть UV-развертка.)

Кружка

Я быстро замоделил базовую форму кружки в Maya, затем отправил ее в ZBrush, добавил несколько уровней сабдива и выполнил Zremesh. Мне нравится такой подход, потому что с самого начала вы работаете с лоу-поли мешем, а это моя нежно любимая зона комфорта. Даже щупальца я делал в Maya, использовав функцию Animation Snapshot для создания маленьких присосок.

Кракен был создан в Zbrush.

Таким же образом я смоделил бочку и швабру.

Текстуры

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

Реквизит и одежда были сочетанием базовых материалов со сканом мха, который я скачал с Megascans (вы можете загрузить их в Suite в один клик, и использовать с великолепной системой маскирования DDO):

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

Вот пример сетапа материалов для кружки:

Я использую пасс occlusion для маскинга , а сверху добавляю оттенков красного, чтобы сделать модель более реалистичной.

Кожа

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

Для базы я взял резину. Поработав с каждым каналом ( albedo, specular, gloss и normal), я начал добавлять новые материалы, сочетая их с помощью процедурных маск (procedural masks) и режимов смешивания (blending modes), чтобы получить такой красочный вид.

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

Когда я закончил с albedo, spec, и gloss, то отправился на Megascans за подходящим материалом для кожи и подключил его только в карту normals, чтобы получить дополнительную детализацию:

Естественно, после использования поверхностного рассеивания (SSS) и установки освещения текстуры станут еще лучше…

Я хотел получить классические олдскульные тату, поэтому я скачал их из сети и добавил им небольшие помарки, чтобы они имели реалистичный вид. Сначала я набросал их на скрине c китом, чтобы понять масштаб, детализацию и композицию в целом, а затем отрисовал их в Photoshop:

Тату были нанесены на SSS-текстуры кожи и подкожного слоя, об их сетапе я расскажу позже.

Камни

Да, камни я взял с Megascans:

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

Клевер – это лоу-поли меш со всеми необходимыми картами. Он выглядит вот так:

Я назначил для него двусторонний материал V-ray, подключил карты – и дело в шляпе.

Вам осталось выставить правильное освещение, и вы быстро получите реалистичную растительность.

Жидкость

Жидкость была симулирована в PhoenixFD, который отлично подходит для подобных задач. Там даже есть предварительные настройки для пива. Ну как можно не любить такую программу!?

Я использовал лоу-поли меш для рассчета столкновений, изменил некоторые параметры- и вот результат:

Если нужно, PhoenixFD может симулировать пену прямо с пассом жидкости. Пена – это то, что делает пиво – пивом… Для рендера я использовал «родной» шейдер частиц PhoenixFD, а для жидкости – подкрашенный преломляющий свет материал V-Ray. Как и в случае с клевером, для отличного результата вам нужно правильно выставить освещение.

Рендер

Разделим эту тему на два пункта: свет и шейдинг.

У меня ушло довольно много времени на то, чтобы создать сложное освещение, которое меня устроило:

Например, это – плохое освещение:

Сравним с финальным рендером:

Я начал с базовой HDRI-карты, настроил классическую трехточечную схему освещения, а затем начал добавлять небольшие светильники с различным уровнем интенсивности для подсветки проблемных участков. Когда вы ставите свет для сцены, которая состоит из материалов с различными коэффициентами преломления (IOR) и значениями albedo и specular, базовых схем освещения будет недостаточно.

Я не использовал никаких сложных шейдеров. Для всего реквизита я просто подключил карты, откорректировал IOR – и все. Для кожи я взял blend-материал. База – непрозрачный глянцевый шейдер для большего контроля над бликами. Во второй слот я подключил другой blend-материал – на этот раз базовым был материал кожи V-Ray, а во втором слоте – материал для татуировок – стандартный шейдер V-Ray с тату, подключенными в слот цвета.

Opacity тату-материала – всего 6%, вид большинства из них зависит от SSS и карт diffuse:

Поговорим о шейдере ткани. Для дисплейсмента я использовал XYZ-сканы, отличительной особенностью которых является наличие карты opacity. Сверху я добавил волоски с помощью шерсти V-Ray. В сочетании с картами из Quixel я получил весьма приличные результаты.

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

Спасибо и до свидания!

*звук падения микрофона на сцену*

Читайте новости первыми на нашем канале в Телеграм.
#3d #gamedev

Материал опубликован пользователем. Нажмите кнопку «Написать», чтобы поделиться мнением или рассказать о своём проекте.

Написать
{ "author_name": "Стас Шиловский", "author_type": "self", "tags": ["gamedev","3d"], "comments": 6, "likes": 65, "favorites": 32, "is_advertisement": false, "subsite_label": "flood", "id": 20563, "is_wide": false }
{ "id": 20563, "author_id": 34176, "diff_limit": 1000, "urls": {"diff":"\/comments\/20563\/get","add":"\/comments\/20563\/add","edit":"\/comments\/edit","remove":"\/admin\/comments\/remove","pin":"\/admin\/comments\/pin","get4edit":"\/comments\/get4edit","complain":"\/comments\/complain","load_more":"\/comments\/loading\/20563"}, "attach_limit": 2, "max_comment_text_length": 5000, "subsite_id": 64955 }

6 комментариев 6 комм.

Популярные

По порядку

Написать комментарий...
5

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

Ответить
1

Ну сейчас хоть проще это сделать, на али продается огромное количество 3d сканеров, и за относительные копейки

Ответить
9

Осталось только найти пьяного прямоходящего кита...

Ответить
1

А почему это в оффтопе? Геймдев же есть

Ответить
0

Полагаю, потому что это не имеет отношения к геймдеву.

Ответить
2

Эта статья имеет большее отношение к геймдеву чем процентов 30 статей из раздела геймдев. К тому же тег геймдев есть

Ответить
0

Прямой эфир

[ { "id": 1, "label": "100%×150_Branding_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox_method": "createAdaptive", "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfl" } } }, { "id": 2, "label": "1200х400", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfn" } } }, { "id": 3, "label": "240х200 _ТГБ_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fizc" } } }, { "id": 4, "label": "240х200_mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "flbq" } } }, { "id": 5, "label": "300x500_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfk" } } }, { "id": 6, "label": "1180х250_Interpool_баннер над комментариями_Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "clmf", "p2": "ffyh" } } }, { "id": 7, "label": "Article Footer 100%_desktop_mobile", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjxb" } } }, { "id": 8, "label": "Fullscreen Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjoh" } } }, { "id": 9, "label": "Fullscreen Mobile", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjog" } } }, { "id": 10, "label": "Native Partner Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyb" } } }, { "id": 11, "label": "Native Partner Mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyc" } } }, { "id": 12, "label": "Кнопка в шапке", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fdhx" } } }, { "id": 13, "label": "DM InPage Video PartnerCode", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox_method": "createAdaptive", "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "clmf", "p2": "flvn" } } }, { "id": 14, "label": "Yandex context video banner", "provider": "yandex", "yandex": { "block_id": "VI-250597-0", "render_to": "inpage_VI-250597-0-1134314964", "adfox_url": "//ads.adfox.ru/228129/getCode?pp=h&ps=clmf&p2=fpjw&puid1=&puid2=&puid3=&puid4=&puid8=&puid9=&puid10=&puid21=&puid22=&puid31=&puid32=&puid33=&fmt=1&dl={REFERER}&pr=" } }, { "id": 15, "label": "Плашка на главной", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "byudo", "p2": "ftjf" } } }, { "id": 17, "label": "Stratum Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fzvb" } } }, { "id": 18, "label": "Stratum Mobile", "provider": "adfox", "adaptive": [ "tablet", "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fzvc" } } } ]
Новая игра Ubisoft на релизе выглядит
точно так же, как и на E3
Подписаться на push-уведомления