1,6K подписчиков

От нормалей до пропсов — как говорить на языке 3D

300 прочитали

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

Что все это значит??
Что все это значит??

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

Вертекс (Vertex)

Самая маленькая часть 3D-модели, точка пересечения нескольких граней. У каждой точки есть собственные координаты по осям x, y, z и вектор нормали — но к нормалям вернемся позже. Также вертекс может нести дополнительные параметры: цвета (vertex paint) и текстурных координат (uv).

Ребро (Edge)

Две точки, соединенные линией.

Полигоны (Polygons)

Плоскости, из которых состоят все 3D-объекты. Несколько точек, объединенных ребрами — обычно в треугольник или четырехугольник. Если вы смотрите на модель, и она кажется угловатой — это как раз крупные полигоны.

Геометрия (Geometry)

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

Топология (Topology)

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

Топология может быть правильной и неправильной. Ровная сетка с минимальным для создания нужной формы количеством полигонов (polycount) — хорошо. Беспорядочная сетка с лишними полигонами случайных форм — плохо. Неправильная топология помешает и в анимации, — модель будет неправильно деформироваться в движении, — и в целом в работе с моделью: чем больше лишних, мусорных полигонов, тем больше памяти отнимает процесс.

По количеству полигонов модели делят на три вида:

High Poly

Детализированная модель без ограничений по количеству полигонов.

Low Poly

Упрощенная 3D-модель. Такие обычно используются в играх.

Mid Poly

Что-то среднее между детализированными high poly и оптимизированными low poly.

Ретопология (Retopology)

Переработка топологии для оптимизации модели.

В процессе скульптинга художники редко заботятся о плотности сетки, правильности топологии или количестве полигонов — главное, чтобы было красиво. Но если модель предназначена для анимации или игры, ее придется оптимизировать. Как правило, ретопология делается на основе High Poly, а задача звучит так: сохранить детализацию, но сделать модель легче. В таком случае на основе высокополигональной формы создают низкополигональную. Детали переносят на нее с помощью карт, содержащих информацию о детализированной модели.

Мы обещали вернуться к нормалям — возвращаемся.

Нормали (Normals)

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

Пайплайн (Pipeline)

— цикл разработки. Последовательность связанных этапов, которые на выходе дают нужный результат — готовую модель. Пайплайн меняется в зависимости от задач: работаем мы с органикой или hard surface, нужна ли нам просто скульптура или объект, который мы интегрируем в игру, нужна ли анимация или только красивая 2D-картинка.

Если анимация не нужна, усредненный пайплайн будет выглядеть так:

Работа над концептом — скульптинг: драфт и сетка — UV-развертка — запечка — текстуры — рендер. Об анимации позже поговорим отдельно.

Скульптинг (Sculpting)

Процесс создания 3D-модели, буквально ее лепки — только из виртуальной “глины”. Именно скульптингом обычно называют создание персонажей, монстров. Это направление называется органикой. А если художник работает с другими, неживыми объектами, то есть специализируется на hard surface, его процесс работы чаще называют моделингом. Скульптить можно во многих программах, но золотой стандарт — ZBrush.

Материал (Material)

Собственно, та самая виртуальная глина, с которой работает моделлер. У материалов могут быть разные цвета, разные свойства, разное взаимодействие с источником света. Можно работать со встроенными, можно создавать свои.

Кисти (Brushes)

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

Примитивы (Primitives)

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

Система частиц (Particle System)

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

Драфт (Draft)

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

О следующем этапе, создании сетки, мы уже говорили. Сначала идет работа над high poly версией, потом — над low poly. Так что перескочим.

UV-развертка (UV unwrapping)

Когда мы закончились скульптить и разобрались с топологией, у нас на руках осталась модель — можно сказать, голая. Мы могли изменить цвета некоторых частей, наложив на нее материалы, настроив цвета. Если мы хотим, чтобы модель выглядела действительно законченной, нужно добавить текстуру. Но “натянуть” плоскую 2D-текстуру на геометрию нельзя. Ни одна 3D-программа этого не умеет. Поэтому нам нужно получить 2D-развертку своей объемной модели. Как это выглядит? Как оригами-фигурка, возвращенная к изначальному состоянию — то есть плоского листа, но уже со следами сгибов. Такая карта — это и есть UV-развертка.

Мэппинг (Mapping)

Или маппинг — все от слова map. UV-мэппингом называется как раз процесс создания такой карты. Но бывают и другие. Например, Texture Mapping — процесс наложения текстуры на объект.

Текстура (Texture)

2D-изображение, которое накладывается на 3D-объект. С ними обычно работают в Substance Painter.

Запечка (Baking)

Она же запекание, она же бейкинг. Это как раз тот самый перенос деталей с high poly модели на low poly с помощью карт. Когда мы добавим их к низкополигональной модели, они перенесут дополнительную детализацию, взятую с высокополигональной. О каких картах речь? Например, о карте нормалей, содержащей информацию о поверхности, о карте Curvature с информацией о глубинах и высотах… Углубляться в подробности в сегодняшнем словаре не будем.

Рендер (Render)

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

Композитинг (Compositing)

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

А теперь, как и обещали, поговорим отдельно о терминах из анимации.

Кости (Bones)

Самый распространённый способ анимации персонажей в 3D — костная анимация: в отличие от классической 2D-анимации мы не рисуем каждый кадр, а прокладываем скелет объекта. Состоящий из костей — родительских, то есть ведущих, и дочерних, ведомых. Именно кости и управляют персонажем. Есть и другие элементы, помогающие контролировать движение, но в детали вроде работы с констрейнтами сейчас углубляться не будем.

Веса (Weights)

Степень влияния каждой кости на разные точки объекта. Чтобы тело модели при движении костей двигалось правильно, нужно настроить веса.

Риггинг (Rigging)

Процесс подготовки модели к анимации: выставление скелета, настройка весов, создание контролирующих объектов и зависимостей работы костей — от родительских, ведущих к дочерним, (FK) или наоборот (IK). А ригом называется результат этого процесса.

Позинг (Posing)

Выставления положения персонажа. Чтобы сделать это, мы взаимодействуем с костями: двигаем, поворачиваем или меняем размер.

Тайминг (Timing)

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

Спейсинг (Spacing)

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

На этом базовый словарь языка 3D можно считать законченным. Забыли только о пропсах — исправляемся: это небольшие объекты, наполняющие игровую сцену. Можно сказать, реквизит. Теперь все. Велик соблазн углубиться в детали, к сабдивам и нодам, но нет смысла нырять в глубину, не научившись плавать. Учиться лучше постепенно и поэтапно.

Для тех, кто хочет погрузиться в мир 3D именно так, — постепенно и поэтапно — у нас есть масштабный и обстоятельный курс “3D-дженералист”. На нем мы объясняем 3D-графику буквально с нуля, уча работать во всех основных программах.