Skills Up School
Меню

Нажмите ESC для закрытия

Пропсы18 февраля 2025 г.

Процесс создания реалистичного 3D-автомобиля Toyota Land Cruiser FJ60 в Unreal Engine 5

Александр Коляса показал нам свой рабочий процесс по созданию Toyota Land Cruiser FJ60, рассказав о техниках, которые помогают нарушить однообразие масок, настроить реалистичные следы от стеклоочистителей и заставить автомобиль двигаться с помощью системы Chaos Vehicles.

Процесс создания реалистичного 3D-автомобиля Toyota Land Cruiser FJ60 в Unreal Engine 5
Процесс создания реалистичной 3D модели Toyota Land Cruiser FJ60 в Unreal Engine 5 - изображение 1

Введение

Здравствуйте, меня зовут Александр Коляса. Я из Украины, живу в Польше. Мне 32 года, и последние шесть лет я работаю художником по окружению в компании Techland. Ранее я занимался разработкой мобильных игр, и мой общий опыт в геймдеве составляет около 12 лет.

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

Процесс создания реалистичной 3D модели Toyota Land Cruiser FJ60 в Unreal Engine 5 - изображение 2

Toyota Land Cruiser FJ60

Идея этого проекта пришла ко мне давно, когда я увидел потрясающие фотографии от StanceWorks.

Процесс создания реалистичной 3D модели Toyota Land Cruiser FJ60 в Unreal Engine 5 - изображение 3
Процесс создания реалистичной 3D модели Toyota Land Cruiser FJ60 в Unreal Engine 5 - изображение 4

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

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

Процесс создания реалистичной 3D модели Toyota Land Cruiser FJ60 в Unreal Engine 5 - изображение 5

Моделирование

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

Процесс создания реалистичной 3D модели Toyota Land Cruiser FJ60 в Unreal Engine 5 - изображение 6

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

Процесс создания реалистичной 3D модели Toyota Land Cruiser FJ60 в Unreal Engine 5 - изображение 7

Вместо этого я слегка оптимизировал подразделённую сетку, чтобы сделать её менее тяжёлой, но оставил как есть, чтобы сразу перейти к текстурированию. Окончательная модель имеет около 800 000 треугольников, что довольно много для готовой к игре машины. Однако во время моих тестов в Unreal Engine эта сетка не оказала заметного влияния на производительность сцены. Поскольку моей целью было не создание готовой к игре сборки для других, а сосредоточение на деталях и красоте в пределах возможностей моего ПК, я не видел необходимости в дальнейшей оптимизации.

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

Процесс создания реалистичной 3D модели Toyota Land Cruiser FJ60 в Unreal Engine 5 - изображение 8

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

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

На этом этапе я не торопился, работая по вечерам час или два, а иногда и по выходным — когда мог найти время. Процесс текстурирования растянулся на несколько месяцев в таком режиме, но в совокупности, я думаю, это было около 4–5 полных рабочих дней по 8 часов каждый. Я много экспериментировал, тестировал разные идеи и тратил много времени на поиск идеальных референсов в интернете.

Я уделял пристальное внимание мелким деталям в рамках выбранной мной плотности текселей в 10 пикселей на сантиметр. Я добавил едва заметные неровности краски и едва видимые царапины, которые могли появиться после полировки или мойки автомобиля большими автоматическими щётками. Моё основное правило текстурирования: «Ни один материал не может выглядеть реалистично, если он сделан с помощью одного слоя заливки и стандартной маски».

Процесс создания реалистичной 3D модели Toyota Land Cruiser FJ60 в Unreal Engine 5 - изображение 9
Процесс создания реалистичной 3D модели Toyota Land Cruiser FJ60 в Unreal Engine 5 - изображение 10

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

Процесс создания реалистичного 3D Toyota Land Cruiser FJ60 в Unreal Engine 5 - изображение 11

Одна из моих любимых техник для нарушения однородности масок и избежания больших плоских участков — использование Gaussian Noise и Dirt 5 в Substance 3D Painter. Я увеличиваю тайлинг этих текстур и смешиваю их с различной прозрачностью и режимами наложения в разные маски или даже непосредственно в основные цвета. Это помогает создать мелкий пиксельный шум в деталях, имитируя естественную неровность поверхностей, особенно грязи. Грязь, например, состоит из бесчисленного количества крошечных частиц — зёрен разных типов почвы, волокон различных тканей и т. д. Она никогда не бывает однородной и никогда не распределяется равномерно.

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

Процесс создания реалистичного 3D Toyota Land Cruiser FJ60 в Unreal Engine 5 - изображение 12
Процесс создания реалистичного 3D Toyota Land Cruiser FJ60 в Unreal Engine 5 - изображение 13
Процесс создания реалистичного 3D Toyota Land Cruiser FJ60 в Unreal Engine 5 - изображение 14
Процесс создания реалистичного 3D Toyota Land Cruiser FJ60 в Unreal Engine 5 - изображение 15

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

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

Процесс создания реалистичного 3D Toyota Land Cruiser FJ60 в Unreal Engine 5 - изображение 16
Процесс создания реалистичного 3D Toyota Land Cruiser FJ60 в Unreal Engine 5 - изображение 17
Процесс создания реалистичного 3D Toyota Land Cruiser FJ60 в Unreal Engine 5 - изображение 18
Процесс создания реалистичного 3D Toyota Land Cruiser FJ60 в Unreal Engine 5 - изображение 19

Следы от дворников на лобовом стекле

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

Процесс создания реалистичного 3D Toyota Land Cruiser FJ60 в Unreal Engine 5 - изображение 20

Сначала я пытался использовать реальные фотографии следов от дворников, но они либо не соответствовали нужной форме, либо не имели разрешения для создания правдоподобной маски в Substance 3D Painter. Вместо этого я использовал Radial Anisotropic Noise в Substance 3D Painter. Я переключил его на плановую проекцию и расположил его центр в точке поворота дворников. Это создало несколько концентрических кругов, соответствующих форме дворников на моём автомобиле.

Процесс создания реалистичного 3D Toyota Land Cruiser FJ60 в Unreal Engine 5 - изображение 21

Затем, в режиме Multiply, я добавил Circle Partial alpha, чтобы ограничить размер щёток стеклоочистителей и определить их угол. После этого вручную нарисовал накопление пыли в начале и конце пути движения щёток. Наконец, я отрегулировал уровни, чтобы контролировать, сколько пыли убирают щётки и сколько полос они оставляют.

Процесс создания реалистичного 3D Toyota Land Cruiser FJ60 в Unreal Engine 5 — изображение 22
Процесс создания реалистичного 3D Toyota Land Cruiser FJ60 в Unreal Engine 5 — изображение 23

Такое сочетание техник позволило мне создать реалистичные и динамичные следы от щёток стеклоочистителей, которые добавили модели дополнительный уровень детализации.

Подготовка модели для вождения в Unreal Engine

Сделать этот автомобиль управляемым оказалось не так уж сложно благодаря системе Chaos Vehicles в Unreal Engine. Я использовал предустановленные чертежи, представленные в проекте City Sample для транспортных средств. Риггинг в Blender был простым — части сетки были просто привязаны к костям. Ключевым моментом здесь было правильное присвоение имён всему: одна кость на колесо, одна для кузова автомобиля, а затем экспорт в Unreal Engine.

Используя плагин Chaos Vehicles, можно подготовить автомобиль к вождению за один вечер. Самая долгая часть процесса — это точная настройка таких параметров, как сцепление шин, жёсткость подвески и другие параметры. Они настраиваются путём изменения числовых значений, а затем тестирования автомобиля, чтобы увидеть, ведёт ли он себя так, как вы хотите. Слишком ли он быстрый, недостаточно ли поворачивает или слишком ли отзывчивый? Эти настройки — часть удовольствия от тестирования.

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

В качестве альтернативы предлагаю вам посмотреть руководство Epic Games, которое я использовал, чтобы изучить основы самостоятельно, когда впервые попытался это сделать. Весь процесс объяснён в этом 20-минутном видео.

Рендеринг

Хотя изначально этот проект был задуман для сцены в Unreal Engine, со временем я решил представить автомобиль отдельно, рендерив его в Marmoset Toolbag 5. Сцена в Unreal далека от завершения, освещение и композиция сцены требуют доработки, поэтому я решил создать небольшую среду в Toolbag, чтобы просто показать автомобиль.

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

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

Поиск правильных ракурсов для рендеринга был одной из самых трудоёмких частей этого этапа. Я потратил часы, летая вокруг автомобиля, настраивая освещение и переключая HDRI. В конце концов, я остановился на десяти фиксированных ракурсах камеры, и в сочетании с несколькими настройками освещения я сделал около 100 изображений. После этого я потратил много времени, сужая выбор рендеров до меньшего количества для публикации на ArtStation, чтобы не перегружать зрителя.

Выбрав изображения, я перешёл к постобработке в Photoshop. Мой рабочий процесс здесь прост: я использую фильтр Camera RAW и настраиваю ползунки без строгого порядка, пока не достигну желаемого контраста, яркости и цветового баланса. Здесь я просто следую своему чутью, так как у меня нет учёной степени в области цветокоррекции, поэтому на этом этапе очень полезной может стать обратная связь, собранная у друзей и коллег.

Заключение

Работать над этим проектом было настоящим удовольствием, поскольку, в некотором смысле, я осуществил свою пока ещё нереализованную мечту. Если есть один совет, который я хотел бы дать всем, кто читает это, так это всегда уделять время личным проектам. Экспериментируйте, пробуйте новые идеи и не бойтесь ошибаться — они являются частью процесса обучения.

Ещё один важный урок — сила повествования через вашу работу. Будь то текстуры, мелкие детали на автомобиле или то, как каждый элемент связан с более крупным повествованием, всегда стремитесь рассказать историю. Уделяя пристальное внимание этим деталям, вы делаете свой проект выделяющимся и создаёте более глубокую связь со своей аудиторией.

Спасибо, что нашли время прочитать о моём проекте. Я надеюсь, что это вдохновит вас начать или продолжить работу над чем-то, что вам нравится. Удачи и приятного творчества!

Александр Коляса, 3D-артист по окружению

Интервью проведено Эмбер Резерфорд

Автор: Alexander Kolyasa

Материал подготовлен на основе статьи 80.lv. Перевод — Skills Up.