Руководство по импорту моделей в Unreal Engine 5

Хотелось создать краткое руководство по импорту моделей в UE
Хотелось создать краткое руководство по импорту моделей в UE

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

Для тех, кто предпочитает видео контент, ниже представлена видеоверсия данного поста.

Всем остальным приятного чтения.

Первый метод:

Давайте начнем с первого метода. У нас есть проект в Unreal Engine, так же low-poly модель в формате fbx, и четыре текстуры: base_color, roughness, metallic и normal.
Для начала импортируем модель в Unreal Engine. Основная вещь которую нужно помнить, это то,что если ваша модель состоит из нескольких частей, необходимо поставить галочку в "Combine Meshes" В противном случае модель будет разбита на отдельные части, что не всегда желательно

После импорта модели следует также перенести текстуры. Однако для некоторых текстур требуются дополнительные настройки. Например, для текстур Metallic и Roughness необходимо отключить опцию SRGB.

При двойном нажатии на текстуру открывается её настройка.

Затем мы работаем с материалами, где перетаскиваем наши текстуры и распределяем их по соответствующим свойствам текстур.

Затем мы сохраняем параметры и внедряем нашу модель в наш проект.

Та-дам! она появилась
Та-дам! она появилась

Второй метод:

Если мы создали текстуры для модели в Substance painter, то мы также можем сами настроить их экспорт. Заходим в "Export Textures"(Ctrl+Shift+E) после в "Output templates" в нем выбираем UNREAL ENGINE 4(paced).

Руководство по импорту моделей в Unreal Engine 5

Данные настройки экспорта позволяют объединить несколько текстур, такие как AO, Roughness и Metallic в одну, используя каналы RGB.R - это AO, G - Roughness, B - Metallic. Такой подход сокращает количество текстур, что снижает нагрузку на проект и повышает его оптимизацию.

После экспорта текстур мы повторяем уже знакомые действия: импортируем модель, удостоверяемся в отмеченной галочки в разделе "Combine Meshes", переносим текстуры, после открываем нашу текстуру отвечающая за AO,roughness и metallic и отключаем у неё SRGB

Затем мы открываем материалы и применяем наши текстуры. Мы также организуем их по свойствам, и для нашей третьей текстуры мы используем каналы RGB. Если вам сложно запомнить, к какому свойству принадлежат каналы, вот простой способ их запомнить: ответ находится в названии текстуры. АО,Roughness,Metallic. Таким образом, канал R соответствует AO и G - Roughness, а канал B - Metallic.

После так же сохраняем параметры и переносим нашу модель в проект.

Та-дам! она появилась х2
Та-дам! она появилась х2

Заключение

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

2.5K2.5K показов
3.2K3.2K открытий
16 комментариев

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

Каждый шейдер материала можно упаковывать в зависимости от типа материала
Например для однотонного снега или песка - можно и одной текстурой обойтись:
1 канал - тон диффуза
2 и 3й канал - нормалка
4й - канал на рафнес

по сути есть 3 типа упаковки :
в 1 2 и 3 текстуры)
и нужно сделать ноды распаковки.

Ответить
Автор

А меня даже бить не нужно, я бы на такую лекцию сходил )

Ответить

Чего?) У тебя нормалка двухканальный BC5, как ты все упакуешь в одну текстуру? Нормали будут кринжевые DXT1/DXT5 что ли? АО так понимаю на диффузе рисовать? Как он будет рафнесс-метал блочить?

Ответить

Каждый шейдер материала можно упаковать в зависимости от типа?
Это сколько разных материалов нужно?
Там по факту их нужно на всю игру 2-3 максимум, а остальное инстансы от них.
1) для прозрачных
2) для обрезки по маске (листья, етс)
3) для непрозрачки
Делаешь убер-шейдер под каждый тип с возможностью замены слотов текстур на константы (через свичи). Ну типо или у тебя текстура ставится или ты вместо нее крутишь вектор3 константу.
Допустим нужен материал досок с гвоздями. Там у меня текстуры: альбедо, ОРМ и нормали. Полный набор.
А если нужно сделать тарелку керамическую, то в инстансе берём только альбедо, текстуру нормал мапы меняем на значение вектор3, и вместо текстуры ОРМ тоже крутим вектора. Все. А то какие-то упаковки, какие-то распаковки.... Не, я понимаю - оптимизация. Но я так заморачивался, когда ещё была гтх650ти на 2 Гб памяти.

Ответить

ИМПОРТОЗАМЕЩЕНИЕ

Ответить

Не обычно и все понятно.

Ответить