Всем привет. Меня зовут Рябов Алексей. В этой статье расскажу о процессе создания работы “Audi R18 ”. Как вы, возможно, знаете, эта модель болида для моего более крупного проекта “6 HOURS OF BAHRAIN ”. Которая, в частности, на 3ddd, завоевала Царя горы и получила Award. Спасибо всем вам, что так высоко оценили. Это первый по счету Making of из этой серии. Думаю, позже я сделаю еще несколько. Ну а пока Audi.
00 Предыстория
Всё началось в 2016 году, с человека по имени Марек, который увидел мою модель Mercedes-Benz g63 amg 6x6 и предложил её купить. Я согласился. К тому же, на тот момент я был без работы. После этого, он предложил сделать для него еще авто на выбор:
Вот эти машины:
Естественно, я выбрал самую сложную. Но, к сожалению, тогда я ее не закончил, потому что, к счастью, нашел работу. И отложил машину долгий ящик. Но, спустя 3 года, в 2019 возобновил.
01 Моделинг
Моделинг я начинаю с Imagemodeler. Подробнее про эту программу можете посмотреть тут и тут .
Суть программы Imagemodeler состоит в том, что она определяет расположение точек в трехмерном пространстве (в программе называются локаторами), путем нахождения пересечения проекций этих точек с разных ракурсов. Соответственно, для получения одного пересечения, необходимо как минимум две разных проекции/фото. Чем больше, тем, естественно, точнее будет результат.
Благо на машине множество всяческих наклеек, полосок и острых углов, куда можно поставить локаторы. Я загрузил 10 картинок, прошелся по всем, и поставил 55 локаторов. После некоторого количества локаторов, программа выдаст сообщение, что калибровка успешна, и создаст камеры. Дальнейшая установка локаторов только делает более точной калибровку.
Далее экспортирую как .fbx и импортирую в 3ds Max. Масштабирую и поворачиваю как нужно.
В Imagemodeler есть настройка масштаба и осей, но она как-то кривовато работает, к тому же, идеально сделать не получится, поэтому проще в максе.
Я использовал скрипт Camera Swapner от парня Anri_Ford
Если коротко, скрипт переключает ваши камеры, одновременно меняя background во вьюпорте (вкладка Alt+B).
Это намного удобнее, нежели ставить plane с фотографией для каждой камеры, чтобы моделировать. Например, если вы перейдете в режим Wireframe, то фото на плейне, естественно, пропадет. Я часто использую сочетание клавиш Shift+G (скрыть геометрию), а т.к. plane - геометрия, она тоже скроется.
Дальше я обвел сплайнами некоторые линии машины. Можно обойтись и без них, и сразу начать с полигонального моделирования, или вообще сделать весь кузов из сплайнов и накинуть модификатор Surface, но здесь это было бы гипер сложно. Поэтому я выбрал гибридный метод. (Вообще, лучше выучить Autodesk Alias и делать там).
Ориентируясь на сплайны и фотографии, сделал болванку для кузова. Без фар, щелей и прочих дыр. На этом этапе очень важно сделать всё гладко, ровно и красиво, поэтому нужно использовать минимум полигонов. Эта болванка создается для проецирования на неё всего и вся. Здесь просто долгое и мучительное полигональное моделирование, ничего особенного. Накидываю 3 итерации TurboSmooth, ставлю галку See-Through, чтобы не мешала.
Далее делаю копию болванки (из нее я буду делать кузов), коллапсирую 2 итерации TurboSmooth для более плотной сетки. Это необходимое зло. Иначе, при добавлении деталей, из-за неравномерности поверхности, она будет выглядеть очень криво. Пока прячу.
Начал с фар. Захожу в панель Ribbon (Если её у вас нет, тыкаем правой кнопкой мыши в пустое место на главной панели)
Далее вкладка Freeform > PolyDraw
Выбираю Draw on:Surface, жму Pick, и выбираю свою болванку, на которую нужно проецировать. Далее выбираю Splines и обвожу нужные линии.
Немного оптимизирую сплайн, и булеаном вырезаю щели.
Далее вручную дорабатываю сетку.
После этого опять иду в панель Ribbon > Draw on:Surface. И проецирую кнопкой Conform свой кузов (уже с фарой). Чтобы после моей ретопологии, все вертексы были на поверхности болванки.
Получается довольно гладко и ровно.
Таким же образом сделал стекло для фар.
Также, не забываем про кисть Relax. Она помогает распределить вертексы равномерно по поверхности.
Обведи. Вырежи. Сделай ретопологию. Спроецируй. Зарелакси. Живи. Умри. Повтори.
Вот, в принципе, и есть основной метод, по которому я делал эту машину.
Проецирование я делал везде, где нужно ровное примыкание одной детали к другой.
02 Развертка
Развертку я делал в UVLayout . Весь кузов у меня вышел в 54k полигонов. Не то, чтобы много, но 3ds Max уже с таким количеством тормозил бы. К тому же, в UVLayout есть режим симметрии. Но, к сожалению, упаковать развертку в квадрат, с сохранением симметрии, и без потери полезного пространства, у меня не вышло. Более-менее получилось в прямоугольник с соотношением сторон 2:1.
03 Текстуры
Текстурировал я в 3d-Coat . Я выбрал именно 3d-Coat, а не, например, Substance Painter, по нескольким причинам.
1. В 3d-Coat можно делать свое кастомное разрешение и с любым соотношением сторон. Я сделал 16k x 8k. В Substance Painter же, максимально возможное это 8k, и только квадрат. К тому же, 8k не все видеокарты поддерживают. На тот момент, моя GeForce GTX 660 Ti поддерживала только 4k.
2. В Substance Painter нет такого инструмента, как прямоугольник или полигональное лассо, Карл! Только кисть с альфами. А на этой машине нужно рисовать очень много прямых линий.
3. В Substance Painter нельзя прятать полигоны геометрии, в лучшем случае, это замазать их ластиком, но они никуда не исчезнут, и будут мешать.
Это не значит, что она плохая программа, там много своих плюсов, но, в этой ситуации, она мне не подходила.
Перед импортом в 3d-Coat, я обвел все линии и логотипы методом рисования сплайнов по поверхности. (Freeform > PolyDraw > Draw on:Surface > Splines). Дал им толщину, и конвертировал в poly.
Чтобы линии были идеально прямыми, я в видовых окнах 3ds Max поворачивал вид под каждую линию, и инструментом Scale, используя Use Selection Center, в режиме Screen делал нулевой масштаб.
В 3d-Coat я разукрасил всё по цветам, но это просто для наглядности. Я не собирался в нем делать финальные материалы:
1. 16k всё еще не достаточно для мелких деталей, вроде царапин, микронеровностей, капель и фактуры карбона, которые можно тайлить.
2. Только текстурами невозможно сделать многослойный материал с полупрозрачным лаком, поверх основной краски.
3. Только текстурами невозможно сделать эффект Falloff карты.
Так что 3d-Coat я использовал для создания масок, для последующего экспорта в 3ds Max.
04 Материалы
Материал кузова состоит из 5 слоев. И для каждого нужна своя маска. Я отдельно эскортировал слои из 3d-Coat в Photoshop. И наложил на каждого свой цвет.
Красный, зеленый, синий (для основных цветов), и белый (отдельный файл с логотипами).
1. Черный матовый (Базовый. Самый нижний. Маска не нужна).
2. Красный (В маске красный RGB 255,0,0)
3. Серый (В маске зеленый RGB 0,255,0)
4. Глянец (В маске синий RGB 0,0,255)
5. Логотипы (Ч/Б маска)
В 3ds Max материал, в итоге, выглядит так:
Все материалы довольно простые, могу подробнее показать некоторые:
Серый
Он состоит из двух слоев: Серого металлика (хочу обратить ваше внимание на карты Falloff в Diffuse и в Reflection, а также, на карту нормалей, для имитации алюминиевой пыльцы).
И лака (по сути, это зеркало с бампом карбона и Noise)
На рендере выглядит так:
Настройки:
Капли на машине
Настройки:
В Diffuse слоте стоят цвета краски машины, каждый цвет через свою маску.
В Bump слоте стоит карта нормалей капель.
На остальное можно не обращать внимание. С помощью остальных текстур я настраивал имитацию клейкой ленты на стыках кузова. Там этот же материал, но свои маски.
Чтобы мне всё не объяснять, можете его СКАЧАТЬ . Краска+логотипы+водяные разводы+капли+грязь.
05 Рендеринг
Здесь простая студия с 2 источниками света и HDRI сверху:
06 Постобработка
Постобработку почти не делал, только высветлил задний план и поработал с бликами на машине.
Всем спасибо за чтение. Мне будет очень приятно, если вы подпишитесь на Behance или Instagram .