Бесплатные 3D Модели

Полигональное моделирование автомобилей

Автор: Ali Ismail

Использованные приложения: 3ds Max, Maya

Али Измаил поведает нам теорию и основы полигонального моделирования автомобилей в 3ds Max и Maya


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

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

Главная причина создания этого туториала это другой урок, который я создал много лет назад, когда только начинал свой путь в 3d графике и который существует и по сей день (Making of Mercedes S600). Я чувствовал, что нужно перейти к углублённому пониманию тонкостей автомобильного моделирования и объяснить основные принципы, которые отличают его от других типов 3d моделирования.

Поверхности A класса

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

Если взглянуть на реальное производство машин, где используются приложения для NURBS моделирования, такие как Autodesk Alias или Rhino3D, вам придётся учитывать такие термины как допуск и непрерывность, но если опустить производственные детали, то единственное что будет нас интересовать при создании автомобиля для рендеринга, это непрерывность, что означает насколько непрерывными будут отражения вдоль поверхности.

Некоторые элементы непрерывности

На картинке выше…

  • Положение непрерывности (G0): поверхности выровненные и не имеют промежутков между собой.
  • Тангенциальная непрерывность (G1): между поверхностями закругление с указанием минимального радиуса.
  • Искривлённая непрерывность (G2): смешанные между собой поверхности, выглядящие как одна целая поверхность.
  • Процент изменения кривизны (G3): смешивание поверхностей больше, но разница трудноуловима.
  • G4-G5 бесконечность: не используется, но теоретически вы можете добавить столько сколько пожелаете.

Вернёмся к полигонам

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

Вы можете скачать сцену здесь


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

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

Ужас!

Ниже рендер с близкого расстояния. Все кто имеет опыт в автомобильном рендеринге знакомы с этим.

Рендер автомобиля с близкого ракурса


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

Некоторые артефакты выше возможно удастся устранить лёгким перемещением вершин, но для большей части модели эффект будет не слишком заметен. Рассмотрите его:

Артефакты создаются при простом вырезании или сведении вершин


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

Похожий эффект на отражениях автомобиля

Вот что происходит, когда мы сталкиваемся с ограничениями полигонального моделирования, эффект невозможно избежать полностью, но мы можем его смягчить в некоторой степени. Модели, созданные при помощи NURBS техникой моделирования поверхностей A класса, хороши настолько, насколько это физически возможно, они производят безупречную форму. В результате поверхность достаточно точная, чтобы получить непрерывные отражения. Данные CAD также имеют точные допуски для всех винтов и плотно подогнанных механических деталей.

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

Скачайте HDRI или cubemap, использованные в данном уроке здесь и здесь. Вы можете с лёгкостью создать что-то подобное в HDR Light Studio и, если вам интересно, то в любом движке или в cubemaps вы можете опробовать любой из следующих уроков, чтобы узнать, как конвертировать HDRI в cubemap

CGTextures tutorial
Xoliul tutorial

Подсказка

Чтобы посмотреть карты отражений прямо во вьюпорте 3ds Max, в меню Views под Show Materials in Viewport As, выберите Realistic Materials with Maps. Если вы хотите получить больше возможностей для просмотра в реальном времени в 3ds Max попробуйте плагин Xoliul Shader от Лоуренса Корин и Роберта-Джан Бремса.

Решение

Насколько далеко вы продвинетесь в снижении этого эффекта зависит только от вас, но важно всегда держать в голове вашу конечную цель. Только вы можете решать, когда желаемое отражение уже максимально хорошее или можно получить более чистый меш. Создаёте ли вы его для статичной картинки? Сколько изображений вы можете создать? Можете ли вы исправить отражения в Photoshop или сделать это для анимации? Или же вы просто моделируете для своего удовольствия и желаете создать идеальную машину?

Перед тем как переходить к любому сложному объекту, как например, автомобилю, лучше опробовать на простых примерах, а потом рассмотреть некоторые практические случаи.

Используйте минимальное количество вершин

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

Меньше — значит лучше

Делайте расстояние между петлями рёбер равномерными

Старайтесь делать расстояние между петлями равномерным или используйте доступные инструменты в кривых, чтобы изменять плотность петель равномерно. Правильное распределение рёбер и расположение вершин при следовании кривым должны улучшить качество отражений. В 3ds Max вы можете использовать инструменты петель.

Равномерно распределённые петли рёбер улучшают отражения

Делайте вырез после подразбиения

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

Эффект создания врезок до и после подразбиения

Без рёбер жёсткости

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

Создание рёбер жёсткости, это не только трудоёмкий процесс, но он также делает модель трудно-редактируемой и не даёт сфокусироваться на изгибах поверхности. OpenSubdiv упрощает контроль жёсткости, но даже без него мы можем сохранить жёсткие рёбра при помощи hard edge/crease/smoothing group и сохранить жёсткие края при стандартном подразбиении Катмул-Кларк. Что позволяет нам создавать базовую форму с минимальными усилиями.

Примечание: Задолго до ажиотажа с OpenSubdiv от Autodesk мы имели плагин от Мариуса Силаджи (Marius Silaghi) под названием TurboSmooth Pro, который делал практически тоже самое. На сайте Мариуса много и других интересных плагинов.

Подсказка

Для 3ds Max: Установите группы сглаживания, чтобы настроить поверхность, а затем добавьте MeshSmooth/TurboSmooth с включённой опцией Smoothing Groups. Или, если вы используете OpenSubdiv, настройте значение жёсткости рёбер вручную во вкладке Editable Poly Edit Edges. Я заметил некоторые ошибки в 3ds Max, когда иногда видны странные артефакты подразбиения при использовании групп сглаживания. Всегда делайте двойную проверку вашего меша и смотрите на результат сетки и, если вы заметите что-то неправильное, вы можете исправить это, удалив поверхность и перестроив полигоны снова, или в качестве предосторожности экспортировать в OBJ и импортировать обратно.

Для Maya: Либо используйте инструмент Crease из меню Mesh Tools и примените OpenSubdiv Subdivision, либо выберите рёбра и из меню Normals выберите Harden Edge, затем выберите Smooth Options и используйте Maya Catmull-Clark в качестве типа подразбиения и убедитесь, что галочки Hard edges проставлены во вкладке Preserve.

Различные методы сглаживания

Смешивание поверхностей

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

Специально искажённые сетки для достижения определённого эффекта

Процесс

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

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

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

Создание базового меша

Это определённо наиболее важный шаг, где вы можете сделать всё как надо или испортить. Топология выглядит простой, но хорошо продуманной. Меш созданный на этом этапе будет выглядеть как в играх с небольшим полигональным бюджетом. Если я добавлю несколько петель, возможно мне даже не придётся использовать подразбиение, только лишь использование групп сглаживания/жёстких рёбер.

Низко-полигональный базовый меш для корпуса автомобиля

Подразбиение и проверка направления топологии

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

Подразбиение и проверка отражений

Завершение

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

Добавление врезок, деталей и проверка отражений

Ахиллесова пята

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

Некоторые из отражений, проходящие через артефакты

Референс

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

Референсное изображение, использованное для создания автомобиля

Рендер

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

Сравнение отражений на финальном рендере


Вы можете посмотреть финальное изображение в полном разрешении здесь. Помимо сайтов 3dtotal и CGFeedback, вы также можете поискать готовые работы и работы в процессе на других сайтах, специализирующихся на автомобильном моделировании. Настоятельно рекомендую посетить сайт SMCars.net и особенно его раздел WIP, который является просто кладезем знаний в области моделирования автомобилей.

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

Урок был взят и переведён с сайта: 3dtotal.com.