Как смоделировать и создать текстуры для реалистичного АК-74 в 3ds Max, ZBrush и Substance 3D
Ориол Салом рассказал о рабочем процессе над проектом АК-74, подробно описав, как он моделировал реквизит с помощью среднеполигональной сетки, что позволило ему добавить больше деталей. Также он объяснил, как он накладывал текстуры на различные материалы оружия, чтобы оно выглядело реалистично.


Введение
Привет! Меня зовут Ориол. Я 22-летний 3D-художник из Барселоны, страстно увлечённый играми и кино! С четырёх лет я знал, что хочу зарабатывать на жизнь видеоиграми, но не знал, как к этому подступиться. Моей целью было научиться программировать, но уже на втором месяце занятий я понял, что это не моё.
В 18 лет я поступил на курс профессионального образования в области 3D, и благодаря одному из моих учителей, Жерару, я понял, что 3D — это то, чем я хочу внести свой вклад в процесс создания видеоигр и фильмов. В начале учёбы мне посчастливилось познакомиться с ещё одним учителем, Маркосом, который многому меня научил в плане различных рабочих процессов и познакомил меня с ArtStation.
Как-то раз, когда я впервые открыл ArtStation дома, одно произведение искусства изменило мою жизнь. Это был SKS для Rust от Томаса Баттерса. Я не знал, как можно создать такое произведение искусства с помощью 3D-программ. В тот же момент моя планка качества поднялась; я захотел достичь этого уровня, и с того момента я стал более серьёзно относиться к своему 3D-путешествию.
За время этого обучения я встретил множество потрясающих художников, которые помогли мне сформировать свой стиль работы. Одним из самых значимых для меня стал Хуанса Торрес, который был одним из моих учителей по 3D-моделированию, а теперь является другом, который очень помогал мне и направлял на протяжении всего моего пути в 3D-искусстве и многому меня научил.
Я много раз терпел неудачи и создал множество моделей. Благодаря повторению, упорному труду, преданности делу и помощи некоторых потрясающих художников, которые меня окружают, я достиг того уровня, на котором нахожусь сегодня. Сейчас я заканчиваю магистратуру по 3D-моделированию в La Florida Universitária, параллельно работая стажёром по 3D Hard Surface в Hunting Souls. Не могу дождаться, чтобы увидеть, что ждёт меня в профессиональной карьере!
Проект АК-74 начался как задание для моей магистратуры. Я мог бы выбрать любое другое оружие, но решил остановиться на АК-74, потому что это был преемник первого оружия, которое я когда-либо моделировал в своём 3D-путешествии, — АКМ.
АК-47, АKM и АК-74 имеют слишком большую историческую и культурную значимость, чтобы их можно было игнорировать. Это также оружие, которое содержит как минимум три разных материала с различными уровнями износа, что делает его действительно интересным для текстурирования.
Моя цель в этом проекте — продемонстрировать свои навыки в создании оружия и сосредоточиться на мелких деталях, которые делают любое историческое оружие интересным для разглядывания.
Сбор референсов для АК-74
При поиске референсов я заметил, что существует множество различных моделей АК и разных мест их производства. Также около половины деталей АК-74 совместимы с АКМ. Основное различие между моделями — это изменение калибра с 7,62×39 мм на 5,45×39 мм.
Зная всю эту информацию, я пришёл к следующей доске с референсами, где изучил различные версии совместимых с АКМ деталей АК-74, разнообразные приклады и цевья с различным износом от разных моделей АК и, наконец, все внутренние и внешние важные детали АК-74, чтобы узнать, как работает оружие, и правильно смоделировать их:

Обычно я собираю референсы, которые не добавляю в окончательный PureRef, так как теряюсь, когда на доске для референсов слишком много изображений. Вот структура папок с дополнительными ссылками на различные модели АК (~1000 ссылок), к которым я часто возвращаюсь, чтобы посмотреть:

Чтобы найти референсы, я всегда стараюсь найти следующее: видео с YouTube о разборке и обзор оружия, пакеты с референсами, включающие оружие, которое я моделирую (ещё лучше, если в нём будет больше одного оружия, которое вы хотите смоделировать), сайты аукционов и список деталей оружия либо со случайного форума, либо от производителя оружия, чтобы потом поискать их.
Моделирование
При моделировании я использую как 3ds Max, так и Blender. Оба — потрясающие программы, и один и тот же рабочий процесс можно использовать с разными путями. Хотя я использовал 3ds Max для этого оружия, я объясню, как рабочий процесс применяется в Blender.
Говоря о реалистичных играх, почти каждое хорошее 3D-оружие/декор сначала фокусируется на высокополигональной модели, а низкополигональную использует как метод проецирования высокополигональной модели. Сосредоточение внимания на адаптации высокополигональной модели к низкополигональной в большинстве случаев накладывает ограничения на творчество художника и окончательный вид оружия. Мой личный рабочий процесс в основном сосредоточен на:
- Создании «среднеполигональной» модели, в которой основное внимание уделяется формам, а не топологии.
- Переносе «среднеполигональной» модели в ZBrush и её полировке до достижения желаемого вида.
- Взятии уменьшенной высокополигональной модели из ZBrush и адаптации предыдущей «среднеполигональной» сетки к высокополигональной форме из ZBrush, корректировке топологии до нужной для создания низкополигональной модели.

Как вы можете видеть, сетка «mid-poly» полна N-угольников и имеет совершенно другую форму накладки по сравнению с low-poly. Топология в основном упрощена, и с low-poly сеткой у неё мало общего. Как работает рабочий процесс полировки в ZBrush? Я покажу небольшую демонстрацию того, как я использовал его для АК-74 с помощью следующего элемента:

Я всегда начинаю с mid-poly. Чтобы создать эту форму, я добавлю куб, цилиндр с достаточной топологией и шестиугольный цилиндр сверху.

Для такой формы я всегда стараюсь добавить топологию, похожую на ту, которую я хотел бы видеть у low-poly, чтобы позже мне не пришлось так сильно очищать геометрию. Если бы я добавил цилиндр с 72 гранями вместо 24, мне пришлось бы многое очищать, а я хочу быть как можно быстрее и аккуратнее.
Вы можете выполнить булевы операции в 3ds Max или в ZBrush с помощью функции Live Booleans, и это не будет иметь никакого значения. Я выполню булевы операции в 3ds Max, чтобы продемонстрировать некоторые распространённые проблемы, которые могут возникнуть при использовании этого рабочего процесса. Вот сетка с применёнными булевыми операциями:

Если я треуголизировал эту сетку, которая выглядит довольно хорошо, и открыл её в ZBrush, у меня возникнет проблема. ZBrush не понимает жёстких краёв или групп сглаживания. Сетка будет выглядеть просто так:

Если бы я применил булевы операции непосредственно в ZBrush, история была бы другой, но для более сложных форм мне нравится второй вариант — применять булевы операции в 3ds Max/Blender и использовать функцию Turbosmooth. Это выглядит так:

По сути, флажок в модификаторе ищет группы сглаживания и автоматически применяет излом там, где они меняются. Сейчас это выглядит ужасно! Проблема, с которой мы столкнулись, довольно проста: каждый раз, когда мы подразделяем грань, края которой направлены под углом больше 180° друг к другу, поверхность подразделения/Turbosmooth запутывается и создаёт артефакты, которые мы видим на изображении выше. Поэтому, чтобы решить эту проблему, я добавлю немного простой геометрии, которая избавит от проблемы, как на следующем изображении:

Я совсем не против оставлять N-угольники, так как они будут решены с помощью Turbosmooth/Subdivision. Каждая сетка при подразделении становится четырёхугольной сеткой, и чтобы попасть в ZBrush, нам это и нужно. Сетка должна выглядеть так, как на следующем изображении, при подразделении с помощью Turbosmooth по группам сглаживания:

Как видите, границы теперь суперчистые благодаря количеству топологии, которое у нас есть! Как мы можем воспроизвести эту подготовку в ZBrush в Blender? Довольно просто! Вместо того чтобы ставить галочку на модификаторе, нам нужно сначала отметить острые края, измять их, а затем добавить модификатор поверхности подразделения!

Как только сетка будет правильно адаптирована, как показано выше, я отправлю её в ZBrush, где я сделаю её динамической. При динамическом моделировании мы должны внимательно посмотреть, чтобы увидеть некоторые артефакты, которые может создать DynaMesh, такие как выпуклости и вдавленные углы. Чтобы избежать этих артефактов, вам нужно сделать DynaMesh с более высоким разрешением. Вот демонстрация хорошего и плохого DynaMesh:

Как только динамическое моделирование будет выполнено, мне нравится использовать инструмент полировки острых краёв в меню деформации и кисть Morph, чтобы настроить края по своему усмотрению. Обычно я добавляю мелкие детали, если это необходимо, например вмятины или выпуклости.
Сетка high-poly готова, теперь я воспользуюсь инструментом мастера децимации ZBrush, чтобы уменьшить топологию и иметь возможность более удобно работать с ней в 3ds Max/Blender. Вот сравнение децимированной и недецимированной версии сетки:

Адаптация среднеполигональной сетки к сетке ZBrush не составляет труда. Если сетка была сильно модифицирована в ZBrush, рекомендуется выполнить ручную ретопологию. Если это что-то более простое, например, булевы операции или фаски, применение их к среднеполигональной сетке занимает не так много времени. Вот как я бы подошёл к созданию низкополигональной модели:

Это мой основной рабочий процесс моделирования с низким разрешением. За UV-развёрткой, запеканием, текстурированием и рендерингом последует! Я добавил некоторые детали АК-74 в ZBrush, например, рисунок рукоятки, который позже был запечён в низкополигональную модель. Всё оружие было смоделировано с использованием этого рабочего процесса.

Ещё несколько видов высокополигональной модели в Z:

Существуют варианты показанного рабочего процесса, одним из самых популярных является учебник Саймона Фукса по Mauser и учебник Дилана Эбернети по Writing Machine (рабочий процесс Maya). Все они работают и представляют собой разные способы достижения результата полировки в ZBrush. В итоге я взял некоторые приёмы из разных источников и адаптировал рабочий процесс под свои нужды.
Развёртка и упаковка UV
Одной из основных целей при моделировании АК было создание возможности генерации изображений крупным планом и, возможно, создание некоторых вариантов в будущем, поэтому я должен был осознанно подходить к распределению UV-карт:

У АК есть различные детали, которые различаются от модели к модели, в основном это приклад, цевьё, магазин, рукоятка и дульная часть, каждая из которых разделена разными UV-картами. Я хотел сохранить одинаковое количество плотности текселей от набора текстур к набору текстур, что было основной причиной выбора разрежений. Средняя плотность текселей составляет 103 и варьируется примерно на 20, с наименьшей картой 83 и наибольшей TD-картой 123:

Чтобы убедиться, что UV-наборы правильно развёрнуты и упакованы, я использовал RizomUV и UVPackmaster, которые имеют лучшие функции упаковки, которые я видел за последнее время. При необходимости я вручную упаковываю некоторые UV.

Текстурирование
Для текстурирования дерева я сделал базовые полосы, используя технику, которую я видел в статье 80 Level SKS и в учебнике Дэна Кентона по револьверу. Я спроецировал линии на высокополигональную модель, чтобы получить более высокое разрешение. Я также начал рисовать некоторые полосы на цевье, когда мне не понравилась проекция. После завершения детализации линий я запекаю полосы на низкополигональную модель через канал базового цвета в Marmoset Toolbag. В следующем видео я работаю над полосами на цевье.

Я добавил точку привязки к основанию полос и создал две разные цветовые основы. При текстурировании неметаллических материалов я всегда следую такому порядку: базовые цвета, добавление цветовой вариации, добавление нормалей и блеска, добавление поверхностных дефектов.
Наконец, последние штрихи и Ambient Occlusion. Дерево для меня — действительно сложный материал. Мне пришлось сделать несколько итераций и этапов обратной связи, чтобы достичь точки, когда я наконец остался доволен результатом.
То же самое касается и приклада:
Для металла АК я хотел добиться наполовину покрашенного, изношенного и немного ржавого АК. Для этого я создал три материала и объединил их с помощью кистей. Один материал для ржавчины, один материал для краски и один последний материал для смазки. Ржавчина действует как кисть, поэтому я могу рисовать ею как угодно:
То же самое касается и смазки, которая находится на отдельном слое краски. Я считаю, что уникальность модели придаёт ручная прорисовка деталей. Генераторы и заполняющие слои с масками определённо не дадут вам того, что может дать ручная прорисовка смазки или ржавчины. Я настоятельно рекомендую вам использовать трафареты/кисти для детальной проработки! Вот разбор текстуры всего ствола.
Для ствольной коробки, верхней ствольной коробки, прицела и дульного среза структура текстуры выглядит так же, как и для ствола, с той разницей, что я не хотел жёсткого контраста. Я посчитал, что более уместно поиграть с едва заметными, но различимыми цветовыми вариациями. В зоне ствольной коробки также много более агрессивных царапин, таких как на переключателе огня или царапины снизу.
Одна деталь, которую мне всегда нравится текстурировать, — это шрифты. Маленькие серийные номера, буквы выбора огня... Шрифты АК имеют красивую глубину, которая придаёт им уникальный вид на 3D-моделях. Чтобы добиться желаемого результата, достаточно просто написать текст в Substance 3D, добавить высоту, размытие и фильтр High-Pass.
Я также установил точку привязки в папке с цифрами, чтобы позже заполнить её нужным мне цветом. Я также добавил вычитание в цветовой слой, чтобы добавить немного изношенности краски. Процесс показан в этом видео:
Последними материалами, которые я текстурировал, были пластиковая рукоятка и магазин. Рукоятка была самой простой текстурой. Это был базовый пластик с вариацией цвета, нормалей и некоторой шероховатостью. Однако текстура магазина была немного сложнее.
Процесс был похож на дерево, которое я создал для ложа и цевья, но мне пришлось проявить больше творчества, чтобы создать переход магазина. В итоге я нарисовал полосы следующим образом:

Как я уже упоминал, процесс текстурирования был похож на дерево:
Рендеринг
Рендеринг должен быть одной из самых важных частей проекта. Я хотел получить простые студийные рендеры для АК, но в то же время я хотел добавить что-то, что хорошо представило бы оружие. Поэтому я использовал BigMediumSmall Special Ops rig.
Настройка сцены была очень простой, так как это только солдат с моим оружием. Риг поставляется с несколькими позами, что делает его очень удобным для рендеринга:
Остальной рендер — это белая сцена с плоскостью, HDRI и парой источников света. Для достижения желаемого результата не нужно ничего лишнего.
Одна вещь, которую я люблю делать, — это добавлять очень мало зерна в Marmoset Toolbag, а зерно, виньетку и цветокоррекцию — в Photoshop. У меня есть большой контроль над тем, как я хочу, чтобы это выглядело:

Некоторые из финальных рендеров:


Заключение
В этой статье я хотел продемонстрировать крутой и привлекательный рабочий процесс, на который я обращаю внимание больше всего при создании реквизита/оружия. Я надеюсь, что вы нашли кое-что из прочитанного интересным, и я очень надеюсь, что вы узнали что-то из этой статьи.
Я многому научился в процессе создания этого ассета, и я не могу не выразить благодарность Паскуалю Эрнандесу и Хорхе Фалькону за всю обратную связь, которую они мне дали во время проекта, моей магистратуре в La Florida Universitària за то, что предоставили мне платформу для знакомства с ними, а также Жерару, Маркосу и Хуансе за то, что дали мне стимул и направление, когда я в этом больше всего нуждался.
Я считаю, что страсть — это источник радости и успеха, и я также считаю, что время и самоотверженность в совокупности являются источником совершенствования. Если у вас есть эти три вещи и вы никогда не перестанете создавать искусство, вы будете непобедимы!
Спасибо, 80 Level, за эту возможность, и спасибо за чтение!
Ориол Салом, художник по твёрдым поверхностям 3D
Интервью проведено Глорией Левин
Автор: Oriol Salom