CG-дженералист из Бельцы Денис Дарабан создал модели и анимации, и разобрал на примере одного, как удобно и быстро работать с hard surface.
Из гайда вы узнаете, как сделать базовые формы в Maya, лоуполи и хайполи в ZBrush, текстурирование в Substance Painter и рендер в Unreal Engine.
Статья вышла на 80lvl, а мы её перевели.
Для создания роботов Денис ориентировался на концепт-арты Эльдара Сафина и дроидов из звёздных воин. Периодически он обращался за советами к 3D художнику Андрею Панченко и концепт-художнику Константину Голубкину.
Первый шаг — блокинг и поиск интересных форм и силуэтов в Maya.
После блокинга основных форм и пропорций проверьте, как модель двигается, и обратите особое внимание на суставы — посмотрите, требует ли геометрия доработки. Используйте для этого инструмент HumanIK.
В некоторых местах добавьте edge loops, чтобы лоуполи и хайполи были похожи по форме, и убедитесь, что N-гоны отсутствуют — ZBrush работает только с квадами. На этом этапе большие и средние формы завершены, осталось добавить детали на меш.
Сделайте лоуполи в Maya и наложите на неё кризы, чтобы при сглаживании получилась хайполи, — но оставьте лоуполи сетку.
Перенесите модель в ZBrush. Для сохранения кризов используйте плагин GoZ.
Создайте детализированные хайполи, используя Live Boolean. Если вам комфортнее работать в Maya — сделайте меши для boolean в ней. Мы разбираем на примере Zbrush:
Сначала подключите Dynamic Subdiv. Создайте меши, которые вычтутся или прибавятся к основной модели
Сделайте хайполи для каждого предмета
Примените DynaMeshes, и пройдитесь кистью Smooth по краям, чтобы сгладить их и после запекания получить хорошую карту нормалей
Сглаженные края и хайполи
Теперь создайте лоуполи. Для этого повторите все шаги из хайполи, кроме применения Dynamic Subdivision.
Снова перейдите в Maya, чтобы проверить сетку и убрать ненужные треугольники.
Когда хайполи и лоуполи готовы, время работать с развёрткой.
Установите сглаживание нормалей на 180 градусов
Создайте жесткие ребра там, где собираетесь сделать разрез для UV
В процессе учитывайте как лоуполи модель будет шейдить, чтобы при запекании не появились странные градиенты.
Загрузите хайполи и лоуполи в Marmoset — большую часть работы программа сделает за вас
Подберите настройки и нажмите на «Bake»
Повторите этот метод для создания оружия.
Лоуполи меш со всеми запечёнными картами экспортируйте в Substance Painter. Перед текстурированием соберите референсы металла для наглядности
Создайте материалы самостоятельно или выберете стандартные смарт-материалы в Substance Painter и переработайте их. Можете взять текстуры с сайта Megascans
Перейдите в Unreal Engine в риал-тайм. Сначала отключите текстурные мипмапы и компрессию.
Используйте 16-битные PNG текстуры, чтобы отобразить больше деталей
Для текстуры base color используйте 8 бит, так как она находится в цветовом пространстве sRGB — 16 bit не даст правильных цветов
В этом гайде для расчета глобального освещения в реальном времени не использовался RTX или другие системы.
Выставьте настройки:
Во вкладке Ambient Occlusion включите Intensity и выставьте на 0,5
Во вкладке Reflection включите Type и выставьте на Screen Space
Во вкладке Exposure включите Min и Max Brightness и обе выставьте на 1,0
Для презентации работы я хотел сделать короткое видео. Я не аниматор и не риггер, поэтому использовал стандартный риг Maya HumanIK. Для создания анимации я перенастроил мокап (motion capture) — мне пришлось существенно изменить его для каждого робота
CG-дженералист
Источник цитаты: Статья Creating Animated Robots in Maya, ZBrush, and Unreal Engine
Такой пайплайн работы позволяет создать сразу хайполи и лоуполи. Это быстрее, чем работа с Subdiv моделями, так как не нужно делать ретопологию.
Финальные рендеры
Превью модели
Если хотите научиться делать крутые hard surface модели, у нас есть подходящий курс: