🟠🔶🟠ВЫБРАТЬ ЛУЧШИЙ КУРС по 3D-МОДЕЛИРОВАНИЮ🟠🔶🟠
Быстрый ориентир по теме
Полигоны — базовые элементы, из которых в большинстве случаев строится 3D-геометрия. Даже если вы моделите в CAD, скульптите в ZBrush или используете процедурные ноды, на этапе визуализации результат почти всегда превращается в полигональную сетку, или mesh. Эта часть статьи поможет новичку быстро понять терминологию, логику треугольников на GPU и типовые ошибки, которые всплывают уже после экспорта — в рендере, игровом движке или при подготовке к 3D-печати.
- Почему видеокарта считает треугольники, а не «красивые» поверхности.
- Чем отличаются polygon, face, triangle и почему слова путают даже опытные.
- Какие навыки дают самый быстрый прирост за 7 дней практики.
- Какие ошибки сетки чаще всего ломают шейдинг, анимацию и экспорт.
Зачем вообще нужны полигоны и почему почти всё в 3D сводится к треугольникам
Полигональная модель описывает поверхность объекта набором плоских участков. Минимальная плоскость в 3D задаётся тремя точками, поэтому треугольник — самый устойчивый примитив. Любая грань сложнее треугольника при отображении всё равно будет разбита на треугольники — это триангуляция. Причина инженерная: графический конвейер GPU оптимизирован под работу с треугольниками, потому что они всегда выпуклые, однозначно определяют плоскость и позволяют быстро интерполировать атрибуты по площади грани.
Важная деталь для понимания: треугольник всегда планарный, а вот квады и n-gons могут быть непланарными. Если четыре вершины «скручены», то при экспорте диагональ разреза определит, какие два треугольника получатся, и это может изменить вид блика или даже силуэт на гранях. Поэтому моделить удобно квадами, а проверять результат нужно в треугольниках — особенно перед экспортом в движок.
Полигоны нужны не только ради картинки. Сетка участвует во всех ключевых этапах пайплайна:
- анимация и деформация — скиннинг опирается на вершины и их веса к костям;
- текстурирование — UV-развёртка привязана к вершинам и граням;
- запекание карт — normal map и AO зависят от топологии и сглаживания;
- коллизии — отдельные меши используются как hitbox и collision hull;
- оптимизация — LOD, редукция и ремешинг управляют бюджетом треугольников.
Даже NURBS и твердотельный CAD в итоге приходят к треугольникам через тесселяцию. В настройках экспорта часто встречаются измеримые параметры, например допуск тесселяции 0,1 мм или максимальная длина ребра 2,0 мм. Это прямое превращение «идеальной поверхности» в меш, пригодный для отображения.
Чем полигон, грань и поверхность отличаются в разных программах и движках
Путаница начинается из-за того, что один и тот же уровень данных в разных программах называется по-разному. В моделинге вы думаете «поверхность», но на уровне данных это список вершин и список граней.
- Surface — поверхность как оболочка объекта. В CAD это аналитическая поверхность, в меш-моделинге — визуальный результат множества граней.
- Mesh — полигональная сетка, набор вершин, рёбер и граней.
- Face — грань. В DCC это может быть квад или треугольник.
- Polygon — многоугольник как тип грани, но в разговоре словом часто называют «любую грань».
- Triangle — конечная единица отображения на GPU, почти вся статистика производительности считает треугольники.
Отсюда типичный спор: «10 000 полигонов» — это 10 000 трис или 10 000 квадов. Если квадов 10 000, то после триангуляции получится около 20 000 трис. Но и это не предел: разрывы UV и жёсткие границы сглаживания увеличивают число вершин, потому что одна позиция в пространстве может превратиться в несколько вершин в буфере, если у них разные атрибуты.
Какие навыки дадут максимальный прогресс новичку за неделю практики
Быстрее всего растут не те, кто учит сотню кнопок, а те, кто понимает последствия операций для топологии, нормалей и экспорта. Ниже — прикладной план на 7 дней по 60–90 минут, который закрывает базу полигонального мышления.
План на 7 дней для уверенного понимания полигонов
- День 1 — выделение vertex, edge, face, element и чтение сетки в каркасе и в треугольниках.
- День 2 — базовые операции extrude, inset, bevel, loop cut, weld и контроль плотности сетки.
- День 3 — сглаживание, группы сглаживания, hard edges и проверка нормалей на простых формах.
- День 4 — топология для деформации, петли рёбер в зоне сгиба, сравнение «плохой» и «хорошей» сетки.
- День 5 — UV-развёртка, островки, швы, texel density и паддинг в пикселях.
- День 6 — запекание normal map и AO, работа с cage и исправление артефактов.
- День 7 — экспорт в целевой формат, проверка масштаба, осей, триангуляции, материалов и UV.
Полезная привычка на этой неделе — смотреть не только polycount. Для реального времени важны три метрики: triangle count, vertex count и количество материалов. Модель на 30 000 трис с 1 материалом иногда быстрее, чем модель на 20 000 трис с 6 материалами и множеством разрывов нормалей, потому что растёт число вершин и переключений состояния рендера.
Какие ошибки в полигональной сетке чаще всего ломают шейдинг, анимацию и экспорт
Большая часть проблем проявляется не в окне моделинга, а позже — в движке, при бейке или на финальном рендере. Поэтому важно знать «болевые точки» сетки.
- Непланарные квады и n-gons — при разной триангуляции появляются переломы бликов и «мигание» шейдинга.
- Плохой edge flow — при сгибе возникают «щипки», заломы и растяжения, особенно на суставах и лице.
- Случайные дубликаты вершин — швы в сглаживании, распад меша после экспорта, проблемы при запекании.
- Перевёрнутые нормали — исчезновение граней при backface culling, чёрные пятна и поломанный AO.
- Жёсткие края без фасок — нереалистичный вид без хайлайтов, особенно на металле и пластике.
- UV-швы без согласования — рост vertex count и заметные швы на normal map при неправильных тангентах.
- Неmanifold и самопересечения — критично для 3D-печати и булевых операций, ломает ремонт меша.
Чтобы ловить эти ошибки раньше, чаще включайте отображение треугольников, проверку открытых рёбер, визуализацию нормалей и статистику по вершинам. Эти проверки занимают 30 секунд, но экономят часы на переделках после UV и бейка.
Полигоны в 3D — определение без путаницы терминов
Полигон в 3D-моделировании — плоская грань, ограниченная рёбрами и заданная вершинами. Полигональная сетка — это структура, где вершины содержат набор атрибутов, а грани определяются индексами вершин. Важно помнить, что меш описывает поверхность, а не объём. «Объёмность» появляется, когда поверхность замкнута, нормали ориентированы наружу и нет дыр.
Полигон как часть поверхности модели и как единица, из которой собирается форма
Любая «гладкая» форма в меш-мире — это приближение. Чем меньше средний размер треугольника на силуэте и в местах блика, тем точнее вид. Но точность имеет цену: растёт triangle count, увеличивается вес ассета, повышается время экспорта и запекания. Поэтому профессиональный подход — распределять плотность не равномерно, а по важности. На силуэте и в зонах бликов плотность выше, на скрытых и плоских участках ниже.
Face, polygon, triangle — почему в разговорной речи это часто одно и то же
В моделинге удобно говорить «грань» и иметь в виду квад, потому что так проще резать петлями и контролировать сабдив. В движке грань почти всегда равна треугольнику, потому что именно треугольник проходит через растеризацию. Поэтому в разговорах о производительности точнее говорить «трис», а в разговорах о топологии — «квады» и «петли рёбер».
Почему рендеринг и игровые GPU считают в треугольниках, даже если вы моделите квадами
GPU обрабатывает вершины и треугольники по конвейеру. Для треугольника легко посчитать ориентацию, отсечь невидимые грани, интерполировать UV и нормали по барицентрическим координатам и превратить грань в пиксели. Для произвольного многоугольника такого стандарта нет, поэтому он заранее разбивается на треугольники. Если вы хотите стабильности, лучше фиксировать триангуляцию в местах, где возможны артефакты, например на длинных плоскостях и в зоне деформации.
Планарные и непланарные полигоны — где начинаются артефакты и как их избегать
Непланарность — главный враг «чистого» шейдинга. На вид грань может казаться ровной, но если вершины слегка «уехали» по высоте, разные программы выберут разные диагонали триангуляции, и блик изменится. Профилактика простая: не оставлять n-gons на бликующих поверхностях, держать крупные плоскости планарными, добавлять поддерживающие ребра и проверять модель в режиме треугольников перед экспортом.
Из чего состоит полигональная сетка — базовые элементы
Основа меш-моделинга — четыре сущности: вершина, ребро, грань и связная компонента. Если понимать, какие данные живут на вершинах и что происходит на границах сглаживания и UV, вы начнёте прогнозировать проблемы ещё до того, как они появятся.
Vertex — вершины
Вершина — не просто координата. На практике вершина несёт атрибуты: нормаль, UV, цвет, тангенты, веса костей, дополнительные UV-каналы. Чем больше атрибутов, тем «дороже» вершина по памяти и по вычислениям. Это одна из причин, почему оптимизация — это не только уменьшение трис, но и контроль числа вершин и формата данных.
Что хранит вершина кроме позиции — нормали, UV, цвет, тангенты и дополнительные атрибуты
Normal map работает в тангентном пространстве, поэтому на вершине важны нормаль, тангент и битангент. Если тангенты пересчитались иначе при импорте, на швах появляются линии. UV определяют, как текстура ложится на поверхность, а texel density показывает, сколько пикселей приходится на единицу длины модели. В играх это часто измеряют как пиксели на метр, например 512 px/м или 1 024 px/м для объектов крупного плана.
Почему один визуальный угол может быть несколькими вершинами при разрывах UV и hard edges
Одна позиция в пространстве может стать несколькими вершинами в буфере, если у неё разные UV или разные нормали. Это происходит на UV-швах и на hard edges. Поэтому «видимый» polycount и реальный vertex count могут отличаться в 2–4 раза. Для производительности это важно, потому что вершинный шейдер считается по вершинам.
Вершинные нормали и сглаживание — что реально влияет на вид бликов
Сглаживание — это интерполяция нормалей по поверхности. При smooth shading вершины получают усреднённые нормали, и объект выглядит округлым даже при умеренном polycount. При hard edges нормали разделяются, и ребро становится визуально резким. Если нормали «сломаны», объект может выглядеть грязно даже при идеальной геометрии, поэтому диагностика нормалей — обязательный навык.
Edge — рёбра
Ребра формируют структуру. Петли рёбер помогают управлять деформацией и сабдивом. В зоне сгиба обычно закладывают 3–5 петель, чтобы объём сохранялся. В хард-сёрфейсе ребра задают жёсткость формы и поддерживают фаски.
Ребро как связь между вершинами и как направляющая для формы и деформаций
Edge flow — направление рёбер по форме. Для персонажей это «анатомические» кольца вокруг суставов и мимических зон. Для технических объектов это контроль плоскостей и радиусов. Если edge flow хаотичен, инструменты моделинга работают хуже, а деформация становится непредсказуемой.
Опорные рёбра для SubD и контроль жёсткости фасок
Под сабдив добавляют опорные ребра рядом с краем, чтобы удержать форму и сделать переход более резким. Чем ближе опорное ребро к краю, тем жёстче получится ребро после сглаживания. Вместо бессмысленного «добавить полигоны везде» профессионалы управляют жёсткостью точечно, сохраняя общий бюджет.
Граничные рёбра и открытые контуры — когда модель дырявая и почему это важно
Граничное ребро — ребро, у которого есть грань только с одной стороны. Оно обозначает отверстие или незамкнутую оболочку. Для одежды, листьев и тонких поверхностей это нормально. Для 3D-печати почти всегда нужна замкнутая оболочка без дыр, иначе слайсер не сможет корректно интерпретировать объём.
Face — грани и полигоны
Грани бывают треугольными, четырёхугольными и многоугольными. Треугольники стабильны и предсказуемы, квады удобны для топологии и сабдива, n-gons допустимы только в безопасных местах. Умение выбирать тип граней по задаче — основа «чистой» сетки.
Треугольники, квады и n-gons — где каждый тип уместен, а где создаёт проблемы
- Треугольники — безопасны на статике и на плоскостях, но могут давать артефакты на деформации.
- Квады — стандарт для персонажей и сабдива, потому что дают ровные петли рёбер.
- n-gons — приемлемы на планарных крышках и временно на блокауте, но опасны на бликах и сгибах.
Почему треугольники всегда плоские и чем это полезно для расчётов
Любые три точки задают плоскость, поэтому треугольник не бывает «скрученным». Это упрощает расчёты освещения, пересечений и коллизий. Многие алгоритмы геометрии рассчитаны именно на треугольные примитивы.
Как квады помогают анимации и сабдиву и почему это стандарт для персонажей
Квады позволяют строить предсказуемые петли рёбер. В мимике и на суставах это критично: сетка должна «складываться» без щипков. В сабдиве квады сглаживаются стабильнее, а полюса можно контролировать и прятать в местах, где они не заметны.
Чем опасны n-gons при деформации, запекании и триангуляции на экспорт
n-gon неизбежно будет разбит на треугольники, но диагонали могут различаться между программами. На деформации это меняет распределение нагрузки, при бейке создаёт швы, а при экспорте может изменить вид поверхности. Если грань участвует в сгибе, ловит блик или стоит на силуэте, лучше заменить n-gon на квады и треугольники с контролируемой триангуляцией.
Border и Element — границы и элементы объекта
Border помогает находить отверстия и незамкнутые края, element помогает быстро выделять связные части меша. Это ускоряет чистку сетки, подготовку к UV и работу с модульными ассетами.
Border как выделение открытого контура и быстрый способ найти дырки
Если вы ожидаете замкнутую модель, но border выделяется, значит есть открытые края. Это важно для 3D-печати, для симуляций и для корректной работы некоторых модификаторов. В игровом пайплайне открытые края могут быть допустимы, но их нужно контролировать, чтобы не получить неожиданные просветы при backface culling.
Element как отдельная связная часть сетки внутри одного объекта
Element — это связная компонента внутри меша. Один объект может содержать несколько элементов, например корпус и винты. Для оптимизации иногда выгоднее разделить элементы по материалам и коллизиям, а для печати — наоборот объединить в единый объём.
Типовые сценарии — объединение деталей, разбиение модели, подготовка к развёртке
- Объединение деталей для уменьшения количества объектов и упрощения экспорта.
- Разбиение по материалам, LOD и требованиям коллизий.
- Подготовка к UV и сборка в текстурный атлас, например 4 096×4 096.
Полигональная сетка как структура данных — что происходит под капотом
Понимание структуры данных помогает объяснить «магические» расхождения статистики. Один и тот же объект может иметь одинаковый triangle count, но разный vertex count и разный вес в памяти. Причина в том, какие атрибуты хранит вершина и сколько дубликатов появляется на швах.
Список вершин и список граней — почему это базовая модель хранения меша
В большинстве движков меш хранится как vertex buffer и index buffer. Вершины содержат позицию и атрибуты, индексы собирают треугольники тройками. Если вершина используется в 6 треугольниках, её данные не дублируются, дублируются только индексы. Это экономит память и ускоряет обработку.
Почему одна и та же геометрия может занимать разный объём памяти в зависимости от представления
Вес меша зависит от формата вершины. Позиция обычно хранится в float32, но нормали, тангенты и UV могут быть упакованы. Разница в форматах даёт кратный эффект на больших сценах. Поэтому оптимизация иногда начинается с решения, какие атрибуты реально нужны, а какие можно убрать или упростить.
Индексы вершин и «размножение» вершин при разрывах сглаживания и UV
Если у одной позиции разные UV или разные нормали, это уже разные вершины. Размножение происходит на UV-швах, hard edges и границах материалов. Практическое правило для игр — согласовывать UV-швы и hard edges, чтобы не плодить дубликаты дважды в одном и том же месте.
Почему итоговая стоимость модели — это не только количество полигонов
Итоговая стоимость включает не только треугольники, но и вершины, материалы и сложность шейдера. Прозрачность, большое число текстур, тяжёлые PBR-вычисления и скиннинг могут сделать «лёгкую по трис» модель тяжёлой для кадра. Поэтому грамотная оптимизация — это баланс, а не погоня за минимальным polycount.
Полигональное моделирование как подход — где оно сильнее других методов
Полигональный подход силён там, где нужна управляемость: прогнозируемая топология, точный контроль силуэта, стабильный экспорт и возможность оптимизации. CAD выигрывает в точности размеров, скульптинг — в свободе формы, процедурка — в вариативности. В реальных проектах эти методы часто смешиваются, а полигоны становятся «общим языком» на выходе.
Полигональное моделирование против NURBS и твердотельного CAD — точность против гибкости
CAD хорош, когда важны размеры и допуски, например фаска 1,0 мм и радиус 5,0 мм должны быть точными. Но тесселяция CAD часто даёт слишком плотную и неравномерную сетку, которую приходится оптимизировать. Полигональный моделинг проще подогнать под бюджет и под требования движка, но он не гарантирует производственную точность без дополнительного контроля.
Полигональная модель против вокселей — где выигрывает скульптинг и где нужна ретопология
Воксельный ремеш и скульптинг удобны для первичной пластики и деталей. Но для анимации и чистого шейдинга почти всегда нужна ретопология — новая quad-dominant сетка с правильным edge flow. Иначе поверхность будет «шумной», а UV и бейк станут проблемными.
Где полигональный подход незаменим — игры, VFX, продуктовый рендер, VR, AR
В играх и VR меш должен быть оптимизированным и стабильным. В VFX плотность может быть выше, но требования к чистоте шейдинга и к сабдиву строже. В AR и веб-просмотре важны компактные форматы, низкий вес и предсказуемая работа материалов.
Что чаще всего моделят не полигонами напрямую — когда проще процедурка или сабдив
Не всё рационально лепить вручную полигонами. Повторяющиеся структуры чаще собирают процедурно, мелкий рельеф делают displacement или normal map, органику создают скульптом, а точные детали строят в CAD. Но финальный контроль и подготовка под задачу обычно всё равно выполняются на уровне меша.
Полигоны в реальных пайплайнах — путь от блокаута до финала
Пайплайн помогает понять, почему правильная сетка экономит время. Ошибка на блокауте может стоить 5 минут, а та же ошибка, обнаруженная после UV и запекания, может стоить несколько часов переделок.
Blockout и первичная форма — как быстро «поймать» пропорции с минимальным числом полигонов
Блокаут держат намеренно простым. Для пропса на ранней стадии часто хватает 200–2 000 трис, для персонажа — несколько тысяч трис. Главная цель — силуэт и пропорции. На этом этапе полезно уже думать о разбиении на элементы, о материалах и о том, какие места будут на виду и потребуют плотности позже.
High poly и детализация — где полигоны заменяются скульптом и где сабдив удобнее
High poly создают ради деталей и корректных фасок. В хард-сёрфейсе это сабдив и поддерживающие ребра, в органике — скульпт. Плотность high poly может доходить до 2 000 000–20 000 000 полигонов, потому что итог будет переноситься на low poly через карты и не пойдёт в движок напрямую.
Retopology — зачем переделывать сетку и как получить управляемую деформацию и чистый шейдинг
Ретопология нужна, когда исходная сетка хаотична, слишком плотна или не подходит для деформации. Задача — сделать сетку с контролируемыми петлями рёбер, удобную для UV и стабильную для бейка. Для персонажей ретопология определяет качество анимации, а для технических моделей помогает избавиться от n-gons после булевых операций.
UV-развёртка — почему без неё текстуры и запекание не полетят
UV-развёртка переводит поверхность в 2D. Важны островки, швы, texel density и паддинг. Например, для атласа 2 048×2 048 часто закладывают паддинг 8–16 px, чтобы избежать протечек на мип-уровнях. Для объектов крупного плана плотность может быть 1 024 px/м и выше, для дальних — ниже.
Baking — как полигоны связаны с нормалями, AO и артефактами проекций
При бейке normal map переносит микрорельеф, а AO добавляет контактные тени. Артефакты часто возникают из-за несогласованных hard edges и UV-швов, пересечений геометрии и плохой триангуляции. Чем чище сетка и чем точнее контроль швов, тем меньше «грязи» на картах.
Экспорт и проверка в целевом движке или рендере — что ломается чаще всего
На экспорте чаще всего ломаются масштаб, оси, триангуляция и нормали. Также всплывают проблемы с материалами и UV-каналами, например отсутствует второй UV для lightmap или островки выходят за пределы 0–1. Самый надёжный способ — импортировать ассет обратно и сверить статистику, а затем проверить в целевом окружении.
🟠🔶🟠ВЫБРАТЬ ЛУЧШИЙ КУРС по 3D-МОДЕЛИРОВАНИЮ🟠🔶🟠
Топология — правила, которые делают полигоны «правильными»
В 3D-среде словом «топология» часто называют всё сразу: и рисунок рёбер, и качество сетки, и даже «красоту» модели в wireframe. На практике топология — это про предсказуемость: как сетка поведёт себя при деформации, сглаживании, запекании карт, булевых операциях, экспортe и оптимизации. Хорошая топология не обязана быть «симметричной» или «идеально квадратной», но она обязана быть функциональной и устойчивой к типовым преобразованиям.
У сетки есть две стороны качества. Первая — геометрическая: нет ли самопересечений, дыр, внутренних полигонов, non-manifold участков. Вторая — структурная: как распределены петли рёбер, где стоят полюса, насколько равномерна плотность, есть ли контролируемая триангуляция. Когда обе стороны в порядке, модель легко редактировать и трудно сломать.
Что такое топология в 3D и почему это не про красоту сетки, а про предсказуемость
Топология в контексте меша — это схема связности: какие вершины соединены рёбрами, какие рёбра образуют грани и как эти элементы продолжаются по поверхности. Для художника топология — это «маршруты» рёбер по форме, для движка — корректная триангуляция и стабильные нормали, для технического пайплайна — отсутствие «плохих» участков, которые ломают инструменты.
Критерии предсказуемости можно проверить на простых действиях. Если после добавления одного loop cut модель не «взрывается» лишними треугольниками, если extrude не создаёт самопересечений, если сабдив сглаживает поверхность без заломов и щипков, если normal map не даёт швов на ровном месте — топология работает. Если же любая операция приводит к артефактам, сетка может выглядеть «красиво», но быть непрактичной.
- Предсказуемая деформация — петли рёбер поддерживают сгибы, объём сохраняется, нет «переломов».
- Предсказуемый шейдинг — нормали и сглаживание дают чистые блики без пятен.
- Предсказуемая триангуляция — диагонали не «прыгают» при экспорте и не меняют вид поверхности.
- Предсказуемая UV — швы там, где вы их поставили, и они не создают лишних проблем при бейке.
Edge flow — как направлять рёбра по форме и деформации
Edge flow — это направление рёбер по поверхности так, чтобы они поддерживали форму и будущие деформации. В органике edge flow повторяет анатомию и мимику, в хард-сёрфейсе поддерживает плоскости, фаски и радиусы. Неправильный edge flow чаще всего проявляется не в статике, а в движении: кожа «ломается», металл «плывёт», а блик на корпусе «дрожит» при вращении камеры.
Для деформации важно, чтобы рёбра «обнимали» область сгиба. В районе сустава обычно делают 3–5 петель рёбер вокруг оси сгиба, а плотность распределяют так, чтобы центральная петля приходилась на линию максимального изгиба. Это снижает растяжение полигонов и помогает весам скиннинга работать мягче.
- На локте и колене петли рёбер формируют «кольца», которые складываются как гармошка, а не ломают силуэт.
- На лице петли идут вокруг рта, глаз и носа, чтобы мимика не давала «звёздочек» на щеке.
- На механике рёбра идут вдоль кромок и фасок, удерживая плоскости и контролируя отражения.
- На тканях и ремнях допускается более свободная сетка, но важно избегать длинных треугольников на сгибах.
Петли и кольца рёбер — как они помогают моделить быстро и управляемо
Петля рёбер — это последовательность рёбер, проходящая по сетке так, что её можно выделить одной командой и использовать для массового редактирования. Кольцо рёбер — набор параллельных рёбер, перпендикулярный петле. В полигональном моделинге это «рычаги управления»: вы добавляете один loop cut и сразу меняете форму целой зоны, не ковыряясь в отдельных вершинах.
Практическая ценность петель и колец проявляется в трёх задачах: контроль формы, контроль деформации и контроль сабдива. Если сетка построена квадами, петли идут ровно. Если в пути встречаются полюса и треугольники, петля может оборваться или повернуть, и редактирование становится менее предсказуемым.
- Loop cut распределяет плотность там, где нужен более точный силуэт или блик.
- Ring selection ускоряет фаски и равномерные сужения, когда нужно «подтянуть» форму по всему периметру.
- Slide edge позволяет уточнять форму без изменения объёма, перемещая рёбра вдоль поверхности.
- Connect edges и multi-cut помогают строить контролируемую сетку вокруг отверстий и вырезов.
Полюса и звёздочки — где допустимы и как их прятать
Полюс — вершина, к которой сходится не 4 ребра, как в обычной quad-сетке, а 3, 5, 6 и более. Когда вокруг полюса распределяется сабдив или деформация, возможны заломы и «щипки». Полюса неизбежны на сложных формах, но ими нужно управлять: выбирать места, где артефакт будет незаметен.
Главное правило — не ставить полюса на активно деформируемых участках и на чистых бликующих плоскостях. В органике полюса лучше уводить в зоны, где ткань или кожа имеют естественный шум, а в хард-сёрфейсе — в места с деталями, стыками и разрывами материала.
- На лице полюса стараются не размещать на скуле и щеке, особенно рядом с носогубной складкой.
- На суставе полюс опасен в центре сгиба, но может быть приемлем на «нерабочей» стороне.
- На корпусе техники полюса лучше прятать под панельными швами, болтами, накладками, решётками.
- Если полюс неизбежен, добавляют опорные петли рёбер, чтобы распределить напряжение сабдива.
Многообразная и немногообразная геометрия — почему «немногообразность» ломает операции
Многообразная геометрия — это такая сетка, где у каждого ребра обычно две грани, а поверхность ведёт себя как корректная оболочка. Немногообразная геометрия, или non-manifold, нарушает это правило. Примеры: ребро, к которому прилеплены 3 и более грани, вершина с «перекрёстными» связями, или поверхность, у которой нет однозначной «внутренней» и «внешней» стороны.
Немногообразность ломает инструменты, потому что многие алгоритмы предполагают корректную оболочку. Булевы операции дают мусорные полигоны, сабдив ведёт себя непредсказуемо, развертка рвётся, а в 3D-печати слайсер может «не понять», где объём.
- Немногообразные рёбра часто появляются после неаккуратных булевых вырезов и объединений деталей.
- Дублированные поверхности создают «нулевую толщину», которую печать и симуляции не любят.
- Внутренние полигоны мешают корректному AO и создают паразитные тени при рендере.
- Скрытые пересечения вызывают артефакты при запекании нормалей и при физике коллизий.
Самопересечения, двойные поверхности и внутренние полигоны — как находить и чистить
Самопересечение — это ситуация, когда поверхность пересекает сама себя. Двойная поверхность — два слоя полигонов, лежащих почти в одном месте. Внутренние полигоны — грани, которые находятся внутри объёма и не должны быть видимыми. Эти проблемы часто не бросаются в глаза в шейдинге, но всплывают при бейке, печати и симуляциях.
Быстрые методы диагностики одинаковы в большинстве DCC: включить отображение backface culling, подсветку открытых рёбер, проверить нормали, сделать «изоляцию» объекта и посмотреть в разрезе. Для печати и симуляций используют проверки manifold и автоматический repair, но лучше исправлять первопричину вручную, чтобы не получить неожиданный результат.
- Удаление внутренних граней и объединение оболочек, если объект должен быть цельным.
- Сварка дубликатов вершин в пределах допуска, например 0,001–0,01 единицы сцены.
- Поиск self-intersections с помощью специальных проверок меша и визуализации проблемных участков.
- Пересчёт нормалей и контроль направления наружу, если объект должен быть замкнутым.
Сабдив и SubD — как полигоны превращаются в гладкие поверхности
Subdivision Surface, или SubD, — это метод сглаживания, при котором исходная полигональная сетка итеративно уточняется: добавляются новые точки, а поверхность становится более гладкой. SubD не «рисует» гладкость из воздуха, он перераспределяет форму по правилам. Поэтому качество исходной сетки напрямую определяет качество результата.
В хард-сёрфейсе SubD часто заменяет ручное моделирование высокополигональной фаски: вы строите чистую quad-сетку, добавляете опорные ребра и получаете контролируемые радиусы. В органике SubD помогает из базовой формы получить гладкую поверхность перед детализацией.
Subdivision Surface и логика сглаживания
В большинстве пакетов используется логика, близкая к схемам Катмалла — Кларка. На каждой итерации создаются новые точки на гранях и рёбрах, а исходные вершины смещаются так, чтобы поверхность «усреднялась». В результате quad-сетка превращается в более плотную, но сохраняет общую форму. При 1 уровне сабдива число полигонов обычно увеличивается примерно в 4 раза, при 2 уровнях — примерно в 16 раз. Это не точная формула для всех случаев, но полезная оценка для понимания бюджета.
Из-за роста плотности сабдив чаще применяют как модификатор на этапе хайполи, а в игре используют результат запекания нормалей на низкополигональную сетку. В рендере сабдив иногда оставляют «живым», но контролируют адаптивность, чтобы не раздувать сетку там, где это не видно в кадре.
Почему квады обычно предпочтительнее для сабдива и анимации
Квады дают равномерные петли рёбер, которые сабдив сглаживает стабильно. Треугольники и полюса не запрещены, но они меняют распределение кривизны, из-за чего появляются заломы. В анимации квады помогают строить деформационные зоны. На сгибах сетка из квадов складывается мягче, а веса костей распределяются ровнее.
- Квады упрощают loop cut и позволяют добавлять плотность локально, без хаотичной триангуляции.
- Квады дают предсказуемый edge flow, что важно для лица, суставов и тканевых складок.
- Quad-dominant сетка легче разворачивается в UV и проще для чистого бейка.
- Треугольники допустимы на статике и в местах, где нет сгиба и нет критичного блика.
Опорные рёбра и контроль жёсткости формы
Опорные рёбра, или support loops, располагают близко к кромке, чтобы удержать жёсткий переход после сабдива. Чем ближе опорное ребро к краю, тем резче будет край. Если опорное ребро отодвинуть, переход станет мягче и радиус визуально увеличится. Это прямой инструмент художественного контроля, особенно для пластика и металла, где «правильная» фаска определяет реализм.
Для реального объекта радиусы часто измеримы. Например, на корпусной пластиковой детали микрорадиус кромки может быть порядка 0,2–0,8 мм, а на металлической панели — 0,5–2,0 мм. В CG эти значения переносят либо геометрически через bevel, либо визуально через normal map. SubD позволяет быстро получить качественную фаску, но важно не переборщить с плотностью.
Типовые артефакты сабдива и способы исправления без лишней плотности сетки
Сабдив часто «наказывает» неправильную сетку. Артефакты появляются там, где есть полюса, треугольники, непланарные участки и неровная плотность. Суть исправлений почти всегда одна: сделать поток рёбер более логичным и дать поверхности правильные опоры.
- Щипки на поверхности — перенос полюса в менее заметное место и добавление поддерживающих петель.
- Волны на плоскости — выравнивание вершин в плоскость и устранение непланарных квадов.
- Слишком мягкий край — добавление опорного ребра ближе к кромке или использование bevel.
- Слишком жёсткий край и «пережатость» — отодвинуть опорные ребра и увеличить расстояние.
- Локальная «дырка» или залом — проверка non-manifold и удаление внутренних полигонов.
Сглаживание, нормали и шейдинг — полигоны глазами рендера
Геометрия задаёт форму, но внешний вид поверхности в кадре определяют нормали и материалы. Два одинаковых меша могут выглядеть по-разному только из-за различий в нормалях или в расчёте тангентного пространства. Поэтому важно понимать, что именно влияет на блик, где проходит граница материала и почему иногда «лечат» шейдинг не добавлением полигонов, а пересчётом нормалей.
Face normals и vertex normals — что именно влияет на блики и границы материала
Face normal — нормаль грани, единичный вектор перпендикулярно плоскости треугольника. Vertex normal — нормаль вершины, которая используется для интерполяции освещения и формирует smooth shading. Если вершина принадлежит нескольким граням и сглаживание включено, её нормаль обычно усредняется по соседним граням. Если сглаживание разорвано, у одной позиции появляются разные vertex normals, и край становится жёстким.
На практике границы материала и резкие кромки требуют разрыва нормалей. Например, у куба без разрыва нормалей он будет выглядеть «надутым». Но если разорвать все края, можно получить видимый шов на normal map. Поэтому для игровых ассетов важно согласовывать hard edges и UV-швы.
Hard edges и smooth shading — когда нужно разделять нормали, а когда хватит групп сглаживания
Hard edge нужен там, где реальный объект имеет резкий перелом формы. Smooth shading нужен там, где поверхность должна выглядеть непрерывной. Группы сглаживания или аналогичные системы позволяют управлять этим на уровне граней. Важное правило для новичка: жёсткий край без фаски обычно выглядит неестественно, потому что в реальности у деталей почти всегда есть микрорадиус. Поэтому hard edge часто сочетают с bevel или с запечённой фаской.
- Hard edge уместен на ребре металлической панели, если есть фаска, пусть даже минимальная.
- Smooth shading уместен на цилиндрах, сферах и на органических формах без резких переломов.
- Смешанные зоны требуют контроля, чтобы избежать «грязи» на бликах и швов на картах.
- Для low poly иногда применяют «взвешенные нормали», чтобы блики выглядели аккуратно при малой плотности.
Автосглаживание по углу и почему один угол не решает все кейсы
Автосглаживание по углу работает просто: если угол между гранями меньше порога, они сглаживаются, если больше — край становится жёстким. Это удобно как быстрый старт, но в реальных моделях один порог не покрывает всё. На одной детали могут быть и мягкие цилиндры, и жёсткие плоскости, и фаски. Одинаковый угол может дать неожиданный результат, особенно после булевых операций, где появляются мелкие грани с шумными углами.
Практика такая: автосглаживание используют для черновой настройки, а затем вручную корректируют проблемные зоны, ориентируясь на блики и на будущие UV-швы. Для игровых ассетов дополнительно проверяют, как нормали «переживают» экспорт, потому что разные движки могут по-разному пересчитывать тангенты.
Проблемы шейдинга на n-gons и в местах непланарности
На n-gons и непланарных квадах шейдинг часто ломается из-за непредсказуемой триангуляции. В одном пакете диагональ идёт так, в другом иначе. В результате гладкая поверхность получает перелом блика. Вторая причина — плохое усреднение нормалей, когда рядом с большой гранью есть очень маленькие грани, и их вклад «ломает» среднюю нормаль.
- Избегать n-gons на бликующих поверхностях и в местах деформации.
- Держать крупные плоскости планарными и проверять их в треугольниках.
- Выравнивать плотность сетки, чтобы не было резких перепадов размера граней.
- Фиксировать триангуляцию там, где важно совпадение между DCC и движком.
Как фаска влияет на реализм — микрорадиусы, хайлайты и «пластиковый» вид без bevel
Фаска — это самый быстрый способ сделать объект реалистичнее. Даже минимальный bevel шириной 0,5–2,0 мм в реальных размерах меняет поведение блика: появляется узкая светлая полоса, которая «продаёт» материал. Без фаски ребро становится математически бесконечно острым, чего в реальности почти не бывает. В кадре такие ребра выглядят компьютерно и «пластиково», потому что блик не цепляется за кромку.
В играх фаску часто делают не геометрией, а запекают с high poly в normal map. Но на силуэте bevel всё равно лучше иметь геометрически, иначе силуэт «режет глаз». Баланс зависит от дистанции камеры и бюджета трис. Для пропса первого плана bevel может быть геометрическим, для дальнего — только в нормалях.
Оптимизация геометрии — полигоны, треугольники и производительность
Оптимизация — это управление ресурсами, а не «сделать как можно меньше полигонов». В реальном времени важны: треугольники, вершины, количество материалов и сложность шейдера. В рендере важны: плотность сабдива, displacement, время трассировки и шум. В печати важны: manifold, толщина, отсутствие пересечений. Поэтому оптимизация всегда привязана к задаче.
Polycount, triangle count, vertex count — какие метрики важны и почему они отличаются
Polycount часто считают по квадам в моделинге, triangle count — по итоговой триангуляции, vertex count — по фактическому количеству вершин в буфере после разрывов атрибутов. В статистике может быть 10 000 квадов, но 20 000 трис и 35 000 вершин. Это нормальная ситуация, если у модели много UV-швов, hard edges и материалов.
- Triangle count отражает нагрузку на растеризацию и часть геометрического этапа.
- Vertex count отражает нагрузку на вершинный этап и объём данных для передачи на GPU.
- Количество материалов влияет на количество проходов и переключений, что часто заметнее, чем разница в трис.
- Сложность шейдера может «перекрыть» любую экономию трис, если материал тяжёлый.
Почему количество вершин может расти из-за UV, материалов и разрывов нормалей
Одна позиция в пространстве становится разными вершинами, если различаются UV, нормали, цвета вершин или группы сглаживания. На границе двух материалов почти всегда будет разрыв, потому что у разных материалов разные свойства и часто разные текстуры. На UV-швах вершины разделяются, чтобы каждая сторона шва могла иметь свою координату в 2D. На hard edges вершины разделяются, чтобы нормали не усреднялись. Если все эти разрывы накладываются в разных местах, vertex count растёт быстрее, чем triangle count.
Практическое правило для игр — по возможности совмещать UV-швы и hard edges. Тогда одна и та же «разделённость» работает на обе задачи и не создаёт лишних дубликатов. Если же шов UV идёт по гладкой области без разрыва нормалей, появится риск видимого шва на normal map и риск лишних вершин в буфере.
Когда важнее топология, чем просто меньше полигонов
Бывают ситуации, когда уменьшение polycount ухудшает производительность и качество. Например, если вы убрали петлю рёбер на цилиндре и получили неровный силуэт, вам придётся компенсировать это тяжёлым шейдером или большим normal map, а это нагрузит пиксельный этап. Или если вы слишком агрессивно редуцировали сетку на персонаже, деформация начнёт «ломаться», и придётся делать дополнительные корректирующие морфы, усложняя анимацию.
Топология важнее количества полигонов там, где сетка должна быть управляемой — на деформации, на сабдиве, в местах запекания и на силовом силуэте. Хорошая топология позволяет держать умеренный polycount, но выглядеть «дороже» за счёт чистого шейдинга и правильных фасок.
Декейл сетки и компромиссы качества — где «съедается» форма и как это заметить
Декейл, или редукция сетки, неизбежно упрощает форму. Потери происходят в первую очередь на силуэте и на резких переходах. Чтобы заметить «съедание» формы, смотрят на объект в чёрном шейдере без текстур и вращают источник света. Если блик «ломается» или силуэт стал угловатым, редукция слишком сильная. Для игр также важно смотреть ассет на типичной дистанции камеры, потому что излишняя плотность на дальнем объекте — это прямой перерасход.
- Силуэт важнее внутренних деталей, которые можно перенести в normal map.
- Блик показывает проблемы лучше, чем цвет, поэтому проверка в matcap режиме полезна.
- Редукция должна сохранять крупные плоскости и радиусы, иначе объект становится «мыльным».
- Нельзя забывать про UV и нормали, иначе после редукции появятся швы и пятна.
Оптимизация под мобильные устройства, VR и веб — разные ограничения и правила
На мобильных устройствах ограничены и геометрия, и шейдеры, и память. В VR критична частота кадров, потому что 72–120 FPS — это не «приятно», а часто обязательное условие комфорта. В вебе важен вес ассета в мегабайтах и скорость загрузки. Поэтому целевой бюджет сильно различается.
Практический подход — заранее определить ограничения и под них строить пайплайн. Для веб-просмотра иногда важнее иметь 1 текстуру 2 048×2 048 и 40 000 трис, чем 4 текстуры и 20 000 трис, потому что вес материалов и количество запросов становятся бутылочным горлышком. Для VR часто упрощают материалы и используют LOD более агрессивно, потому что кадр должен быть стабильно быстрым.
- Мобильные устройства любят простые материалы и умеренный vertex count, потому что пропускная способность ограничена.
- VR требует стабильного кадра и аккуратного LOD, иначе «поппинг» заметнее из-за стерео.
- Веб требует компактных форматов и минимального количества материалов для быстрой загрузки.
- Везде полезны атласы, инстансинг и повторное использование модульных деталей.
LOD и уровни детализации — как правильно уменьшать число полигонов
LOD, или Level of Detail, — это набор вариантов одной модели с разной детализацией. Идея простая: объект далеко — вы показываете дешёвую версию, объект близко — детальную. Один меш почти никогда не оптимален для всех дистанций, потому что на дальнем расстоянии множество треугольников не влияет на качество, но влияет на производительность и память.
Что такое LOD и почему один меш почти никогда не оптимален для всех дистанций
Если камера видит объект высотой 50 пикселей, то детали меньше 1 пикселя физически не считываются. Значит, треугольники, которые описывают эти детали, бесполезны. LOD сокращает треугольники там, где глаз всё равно не различит мелочь. Кроме того, LOD помогает уменьшить нагрузку в сценах с большим количеством объектов, например в окружении с сотнями пропсов.
Ручной LOD против автогенерации — когда автомат ломает силуэт и шейдинг
Автогенерация LOD удобна, но часто не понимает художественных приоритетов. Она может сохранить внутренние детали и испортить силуэт, или сломать фаски, которые дают ключевой блик. Также автомат может изменить распределение нормалей и дать «грязь» на поверхности. Ручной LOD дороже по времени, но позволяет контролировать силуэт, блики и размещение упрощений.
- Автомат обычно хорош для второстепенных пропсов и дальних LOD, где точность не критична.
- Ручной подход нужен для геро-объектов, оружия, транспорта и персонажей.
- При автогенерации важно проверять шейдинг и триангуляцию, а не только triangle count.
- LOD должен учитывать материалы и прозрачность, потому что они часто дороже геометрии.
Decimate и редукция — как сохранять силуэт, UV и нормали
Decimate уменьшает число полигонов, стараясь сохранить форму. Но без контроля он может разрушить UV и нормали, из-за чего появятся швы и пятна. Если UV важны, применяют редукцию с сохранением границ швов. Если важны нормали, используют пересчёт или перенос нормалей с исходной версии. Для хард-сёрфейса важно сохранять фаски и плоскости, иначе объект станет «пузатым».
Удобный порядок работы: сделать копию ассета, выполнить редукцию, затем сравнить силуэт в ортографических видах и проверить блики. После этого проверить UV и только потом экспортировать. На этом этапе полезно измерять: сколько было 60 000 трис и стало 20 000 трис, как изменился vertex count и вес файла.
Проверка «поппинга» и плавные переходы между LOD
«Поппинг» — это заметное переключение LOD, когда объект «прыгает» по форме или по шейдингу. Чтобы его уменьшить, важно делать LOD не слишком различными и настраивать дистанции переключения. В некоторых движках используют dither fade, чтобы переход был плавным. Но даже с фейдом нельзя допускать, чтобы в одном LOD исчезала ключевая фаска или менялась нормаль на крупной плоскости — глаз всё равно заметит.
Новые подходы в движках — что меняют виртуализированная геометрия и микрополигоны
Современные движки стремятся показать больше геометрии, чем раньше считалось разумным, и разгрузить художника от жёстких ограничений по polycount. Подходы виртуализированной геометрии позволяют рендерить огромное количество треугольников, подгружая детали по необходимости. Это меняет приоритеты, но не отменяет базовых правил меша.
Почему индустрия стремится рендерить больше треугольников и перекладывать работу на системы типа Nanite
Причина простая: художники хотят переносить детали напрямую из скульпта, а не тратить дни на ретопологию и запекание. Виртуализированная геометрия делает это ближе к реальности: плотные меши можно использовать как есть, а система сама выбирает, сколько треугольников нужно на экран. На практике это снижает требования к ручному LOD и позволяет держать более точный силуэт.
Что всё равно остаётся важным — UV, материалы, коллизии, деформации, ограничения на прозрачность и скелетную анимацию
Даже если движок справляется с миллионами трис, остаются ограничения. UV нужны для текстур и для детализации материалов. Коллизии часто делают отдельной простой геометрией, потому что физика не должна считать миллионы треугольников. Деформации и скелетная анимация требуют управляемой топологии, иначе веса распределять сложно, а деформация будет грязной. Прозрачность и тонкие поверхности часто имеют отдельные правила и не всегда совместимы с виртуализированными мешами.
- Материалы и шейдеры остаются дорогими, поэтому оптимизация часто смещается в сторону шейдинга.
- Коллизии и навигация требуют простых форм, даже если визуальная модель очень плотная.
- Персонажи и деформируемые объекты всё ещё выигрывают от quad-доминантной топологии.
- Текстуры, мипы и memory budget никуда не исчезают, поэтому UV остаётся ключевой задачей.
Как это влияет на требования к исходной сетке и на привычные правила оптимизации
Требования смещаются от «любой ценой уменьшить трисы» к «сделать ассет стабильным и удобным». Силуэт и фаски можно держать плотнее, но всё равно нужно избегать самопересечений, внутренних полигонов и неправильных нормалей. Для окружения часть LOD-работы может исчезнуть, но контроль материалов, UV и коллизий остаётся. Для персонажей классические правила топологии остаются почти без изменений.
Полигоны в играх — практическая логика ассетов
Игровой ассет — это компромисс между качеством и скоростью. Он должен выглядеть убедительно при заданной дистанции камеры и при этом укладываться в бюджет кадра. Бюджет определяется не только треугольниками, но и материалами, освещением, тенями и количеством объектов в сцене. Поэтому в играх полигоны — это часть системы, а не отдельная цифра в статистике.
Почему игры «живут» на треугольниках и как движок треангулирует ваш меш
Движок в итоге хранит меш как набор треугольников. Даже если вы экспортируете квады, они будут разбиты на трисы. Если вы оставили n-gons, триангуляция может получиться неожиданной. Поэтому для критичных поверхностей лучше триангулировать заранее и зафиксировать диагонали. Особенно это важно для анимируемых мешей, где изменение триангуляции может дать мерцание бликов при движении.
Силуэт, читаемость и бюджет треугольников — что важнее на экране
Игрок чаще воспринимает силуэт и крупные формы, чем мелкую геометрию. Поэтому треугольники стоит тратить на силуэт, фаски и области, которые близко к камере. Мелкий рельеф переносится в normal map и roughness map. Для пропса, который занимает 150–300 пикселей по высоте, слишком мелкие геометрические детали будут незаметны, но будут стоить производительности.
- Силуэт важнее плоских внутренних граней, которые не видны игроку.
- Фаски важнее «лишних» ребер на плоскости, потому что фаски дают ключевой блик.
- Детали типа шурупов и насечек чаще выгоднее запекать, чем моделить, если они не на силуэте.
- Читаемость формы повышают крупные грани и понятные переходы, а не хаотичная плотность.
Коллизии и хитбоксы — отдельная геометрия и почему это не тот же меш
Коллизия — это упрощённое представление формы для физики. Если физика будет считать пересечения по визуальному мешу на 100 000 трис, это дорого. Поэтому делают отдельный collision mesh из простых примитивов: коробок, капсул, выпуклых оболочек. Хитбоксы для персонажей часто представляют собой набор капсул и боксов, чтобы попадания считались быстро и предсказуемо.
Правило простое: визуальная сетка делает картинку, коллизия делает поведение. Их разделяют по назначению. Это также упрощает тестирование: если игрок «упирается» в воздух, проблема обычно в коллизии, а не в визуальном меше.
Скейл, pivot и модульность окружения — как сетка связана с удобством сборки уровня
Сетка ассета должна быть согласована со сценой по масштабу. Для окружения часто используют модульную сетку, где шаг равен 10 см, 25 см или 1 м, в зависимости от проекта. Pivot, или опорная точка, определяет, как объект ставится в сцену, как вращается и как снапится к другим модулям. Если pivot стоит случайно, сборка уровня превращается в мучение.
Модульность требует чистых плоскостей, совпадающих размеров и предсказуемых краёв. На стыках модулей лучше избегать фасок, которые дадут щели, или наоборот делать фаски одинаковыми, чтобы стык выглядел аккуратно. Для декалей и вариаций полезно иметь отдельные элементы, которые можно инстансить и переиспользовать без роста веса.
Полигоны в VFX и рендере — качество крупного плана
В VFX и офлайн-рендере ограничения по треугольникам обычно мягче, чем в играх, но требования к качеству выше. Камера может подойти очень близко, и любые артефакты сетки, нормалей и фасок становятся заметными. Здесь полигоны работают вместе с сабдивом, displacement и качественными материалами.
Где допустимы сверхплотные сетки и когда проще displacement
Сверхплотные сетки допустимы там, где нужна точная геометрия силуэта и где displacement не справляется. Но displacement часто выгоднее, потому что он добавляет детализацию только на рендере и может быть адаптивным. Например, для камня, кожи и ткани displacement даёт микрорельеф без миллионов треугольников в сцене. Для механики с чёткими кромками и фасками геометрия часто предпочтительнее.
Практическая логика такая: крупные формы и фаски — геометрия, микрорельеф — displacement или normal. Это экономит память и ускоряет работу в вьюпорте, при этом сохраняет качество кадра.
Требования к чистоте шейдинга и к фаскам для реалистичных материалов
Реализм часто «ломается» на бликах. Если фаска отсутствует, блик не формируется, и материал выглядит плоско. Если нормали шумят, блик рвётся пятнами. Поэтому в VFX особое внимание уделяют ровности плоскостей, правильным радиусам фасок и чистоте нормалей. Даже если объект статичен, плохая топология может дать «ползущий» блик при движении камеры.
- Фаски с радиусом, соответствующим масштабу объекта, делают материалы убедительнее.
- Ровные плоскости без непланарности дают чистые отражения и читаемый глянец.
- Стабильные нормали важны даже при сабдиве, потому что шейдинг интерполируется по вершинам.
- Для крупных планов полезно контролировать, где сабдив добавляет плотность, а где нет.
Сабдив в рендере и контроль плотности на уровне кадра
В рендере сабдив часто делают адаптивным, чтобы плотность повышалась только там, где объект занимает значимую площадь кадра. Это помогает удерживать время рендера и не перегружать память. Если сабдив фиксированный, нужно следить за ростом полигонов: 2 уровня сабдива на большой модели могут превратить 50 000 полигонов в сотни тысяч и миллионы, что влияет на скорость загрузки сцены и на время расчёта освещения.
Контроль на уровне кадра включает тесты: проверка силуэта, проверка бликов, проверка шумов на отражениях. Если деталь не видна, её лучше перенести в displacement или normal, а не держать геометрией. Это и есть профессиональная оптимизация для офлайн-рендера.
🟠🔶🟠ВЫБРАТЬ ЛУЧШИЙ КУРС по 3D-МОДЕЛИРОВАНИЮ🟠🔶🟠
Полигоны для 3D-печати — что меняется в требованиях
Для визуализации достаточно, чтобы объект выглядел правдоподобно. Для 3D-печати этого мало: слайсер должен интерпретировать меш как физический объём, а принтер — воспроизвести его в материале с заданной толщиной стенок и допусками. Поэтому у «печатаемой» полигональной модели другие критерии качества: водонепроницаемость, многообразность, корректные нормали, отсутствие самопересечений, понятный масштаб и технологические зазоры.
Водонепроницаемость меша и отсутствие дыр
Watertight mesh означает, что поверхность замкнута и не имеет отверстий. На уровне сетки это читается так: у каждого ребра ровно две соседние грани, граничные рёбра отсутствуют. Если выделяется border, значит оболочка открыта, и слайсер может «потерять» объём, создать пустоты или построить неверные поддержки.
- Проверяйте открытые рёбра и незамкнутые контуры перед экспортом.
- Избегайте «нулевой толщины» — одинарных поверхностей без объёма.
- Если модель из нескольких деталей, решите заранее — печатаете как сборку или как единое тело.
Нормали, толщина стенок и единицы измерения
Нормалиисравлением. Вторая ключевая тема — толщина стенок. Для FDM печати практический минимум часто лежит около 0,8–1,2 мм при сопле 0,4 мм, потому что это 2–3 линии периметра. Для SLA печати тонкие стенки возможны, но ограничены прочностью, усадкой и риском деформаций. Третья тема — единицы измерения: ошибка масштаба в 10 или 100 раз легко превращает деталь слишком маленькой или гигантской, а допуски на посадку перестанут работать.
- Фиксируйте систему единиц и проверяйте габариты в миллиметрах.
- Держите стенки толще технологического минимума вашего процесса.
- Для сборок задавайте зазоры, например 0,2–0,5 мм для FDM в зависимости от точности.
Самопересечения и внутренние полигоны как причина ошибок слайсера
Самопересечения и внутренние полигоны делают объём неоднозначным. Слайсер может построить лишние оболочки, пропустить заполнение, «порвать» стенку или создать странные траектории. Даже если визуально всё выглядит нормально, пересечения часто обнаруживаются только на предпросмотре слоёв.
- Ищите self-intersections и исправляйте их, особенно после булевых операций.
- Удаляйте внутренние грани и двойные поверхности, если объект должен быть единым телом.
- После автоматического repair перепроверяйте габариты и форму.
Когда нужна ретопология, а когда достаточно ремеша и исправления
Для печати ретопология в «игровом» смысле нужна не всегда. Если цель — корректный объём, часто достаточно ремеша, сварки вершин и устранения пересечений. Ретопология полезна, когда важны управляемость редактирования, лёгкий вес файла, чистые плоскости под посадочные места и стабильность булевых операций. Для органики после скульпта ремешинг удобен, но следите, чтобы он не создавал тонкие перемычки и не портил размеры.
- Ремеш подходит для органики и статуэток без точных размеров.
- Ретопология полезна для деталей с пазами, крепежом, посадками и резьбой.
- Для инженерной точности иногда разумнее использовать CAD или гибридный подход.
Типы полигональных сеток и распространённые термины
Одни и те же слова в разных задачах означают разное. В играх low poly — это про бюджет кадра, в VFX — про управляемость сабдива и шейдинга, в печати — про вес файла и ремонтопригодность. Ниже — практические трактовки, чтобы меньше путаться.
Low poly, mid poly, high poly — как эти уровни понимают в разных задачах
Low poly — силуэт и крупные формы описаны минимумом граней, мелкие детали уходят в normal map и текстуры. Mid poly — часть фасок и крупных деталей делается геометрией ради бликов и силуэта. High poly — версия для запекания или рендера, где фаски, штампы и мелкая геометрия описаны поликами, а плотность может уходить в миллионы.
- В играх уровни привязаны к бюджету сцены и дистанции камеры.
- В продуктовой визуализации mid poly ценят за чистые фаски и быстрый вьюпорт.
- В VFX high poly часто идёт вместе с сабдивом и displacement.
Clean mesh и game-ready mesh — что подразумевают на практике
Clean mesh — сетка без мусора: нет дублей вершин, самопересечений, внутренних полигонов, неmanifold участков, хаотичной плотности на бликах и в деформациях. Game-ready mesh — это clean mesh плюс требования реального времени: контролируемая триангуляция, согласованные UV и нормали, корректные UV-каналы, понятные материалы, готовность к LOD и коллизиям.
- Clean mesh надёжнее переживает модификаторы и экспорт.
- Game-ready обязательно проверяют в целевом движке.
- Для персонажей и скиннинга добавляются требования к edge flow и полюсам.
Watertight mesh и manifold — термины для печати и симуляций
Watertight — замкнутая оболочка без дыр. Manifold — многообразная геометрия, где поверхность топологически корректна. Для печати и симуляций manifold обычно критичен, потому что алгоритмы ожидают однозначный объём.
- Watertight — «есть ли объём».
- Manifold — «корректно ли устроена поверхность».
- Non-manifold чаще всего приходит из булевых операций и неаккуратных стыков.
Triangulation и quad-dominant — как выбирать стратегию под пайплайн
Triangulation — разбиение на треугольники. Quad-dominant — сетка, где большинство граней квады, а треугольники точечны. Для сабдива и деформации quad-dominant обычно предпочтительнее. Для статических пропсов треугольники допустимы шире, но важна стабильность триангуляции на бликах и на силуэте.
- Персонажи и сабдив — quad-dominant с контролем полюсов.
- Статика в играх — допускайте треугольники, но фиксируйте диагонали в критичных местах.
- Печать — приоритет на clean manifold и отсутствие пересечений, а не на «красивые квады».
Инструменты редактирования полигонов — базовый набор на примерах
Большинство форм собирается одними и теми же операциями. Ключ — понимать, что операция делает с топологией, плотностью и нормалями, а не просто «где кнопка». Ниже — набор, который закрывает большую часть практики.
Extrude — вытягивание граней для набора объёма
Extrude создаёт новую геометрию, вытягивая выбранные полигоны вдоль нормали или по направлению. Это основной способ «растить» форму из примитива. Риск — самопересечения, длинные полигоны и ломанный шейдинг, если не поддержать форму петлями.
- Применяйте extrude для стенок, выступов, ребер жёсткости и базовых объёмов.
- Поддерживайте важные переходы дополнительными петлями или фасками.
- Следите за нормалями после зеркала и после отрицательного масштаба.
Inset — внутренний контур для контролируемой детализации
Inset создаёт внутренний контур, который удобно использовать под последующий extrude, под панельные линии и под фаски. Он помогает держать равномерный отступ, например 2–5 мм по периметру панели в масштабе изделия.
- Inset перед extrude формирует стенку с управляемой толщиной.
- Inset помогает делать посадочные места и панельные разрывы.
- На n-gons inset часто ведёт себя непредсказуемо, предпочтительнее квады.
Bevel — фаска как контроль ребра и улучшение шейдинга
Bevel комбинирует inset и extrude, создавая фаску и переход. Фаска меняет блик и делает материал реалистичнее. Для хард-сёрфейса bevel часто важнее, чем рост polycount на плоскостях.
- Задавайте ширину фаски в масштабе, например 0,5–2,0 мм для микрорадиусов и больше для крупных кромок.
- Контролируйте сегменты фаски — 1 сегмент для экономии, 2–3 для мягкого блика.
- Проверяйте, что bevel не создаёт самопересечений и непланарности на углах.
Cut и Knife — ручное добавление рёбер
Cut и Knife позволяют вручную проложить ребро, когда петли не проходят автоматически. Полезно для локальной детализации и исправления сетки после булевых операций, но легко создать хаотичный edge flow.
- Используйте Cut для целевого направления рёбер по форме.
- Старайтесь приводить результат к quad-dominant, если важны сабдив и деформация.
- После разрезов проверяйте триангуляцию и шейдинг на бликах.
Loop Cut и Ring — быстрые разрезы по петлям
Loop Cut добавляет петлю рёбер, Ring помогает выбирать кольца и соединять их. Это основные инструменты скорости и управляемости формы.
- Loop Cut добавляет плотность там, где нужен точный силуэт и контроль блика.
- Edge slide помогает выставлять ширину перехода без изменения объёма.
- Если петля обрывается, ищите полюса и треугольники, которые мешают непрерывности.
Bridge — соединение контуров и отверстий
Bridge соединяет два контура, создавая между ними поверхность. Удобен для труб, прорезей, перемычек, закрытия отверстий с контролируемой сеткой.
- Старайтесь выравнивать число сегментов на контурах перед Bridge.
- Проверяйте, не появились ли перекрученные полигоны и перевёрнутые нормали.
- Bridge часто даёт более clean топологию, чем булевы операции без последующей чистки.
Weld и Merge — сварка вершин и чистка швов
Weld объединяет вершины, Merge соединяет элементы и компоненты. Это базовые операции чистки после импорта, зеркала и модификаторов. Ключевой параметр — допуск, чтобы не «склеить лишнее».
- Делайте weld с малым порогом, затем при необходимости увеличивайте.
- Проверяйте результат через выделение border и через визуализацию шейдинга.
- После merge перепроверяйте, не появились ли внутренние полигоны и non-manifold зоны.
Attach и Separate — управление элементами внутри объекта
Attach объединяет объекты в один, Separate отделяет выделенное в новый объект. Это помогает управлять модульностью, материалами, LOD и подготовкой к экспорту или к печати.
- Attach удобен для сборки ассета и уменьшения количества объектов сцены.
- Separate помогает разнести детали по материалам и упростить UV.
- После операций проверяйте pivot, масштаб и единицы измерения.
Editable Poly и уровни подобъектов в 3ds Max — логика выделения и редактирования
Editable Poly работает с уровнями подобъектов: Vertex, Edge, Border, Polygon и Element. Правильный выбор уровня экономит время и снижает риск сломать топологию. На вершинах правят форму и сварку, на рёбрах — поток и фаски, на границах — отверстия, на полигонах — объём, на элементах — связные части.
Режим Vertex и типовые операции для формообразования
Vertex-уровень — точная подгонка формы и чистка. Здесь исправляют непланарность, швы после зеркала, «уехавшие» точки и микродубли.
- Move и Scale для пропорций и силуэта.
- Weld и Target Weld для аккуратного соединения без мусора.
- Relax и выравнивание в плоскость для чистых бликов на панелях.
Режим Edge и контроль формы через ребра и петли
Edge-уровень — главный для топологии. Тут строят петли рёбер, добавляют опоры под сабдив, делают chamfer и управляют формой через loop и ring.
- Loop и Ring для быстрого выбора.
- Connect и Cut для добавления управляемых рёбер.
- Chamfer для фасок по рёбрам с контролем сегментов.
Режим Border и работа с отверстиями
Border выделяет открытые контуры, что полезно и для моделинга, и для диагностики. Если вы ожидаете замкнутую оболочку, border — тревожный сигнал.
- Cap для закрытия отверстий, если топология это допускает.
- Bridge для соединения границ и создания туннелей.
- Быстрый поиск дыр после импорта и булевых операций.
Режим Polygon и Element и ускорение выделения частей модели
Polygon-уровень используют для extrude, inset, bevel и массового редактирования поверхностей. Element помогает выделять связные детали внутри объекта, ускоряя UV, материалы и локальные правки.
- Extrude и Inset для формирования стенок и панелей.
- Bevel для фасок и переходов на корпусах.
- Element selection для быстрого выбора целой детали без ручного выделения.
Как считать полигоны и треугольники и где смотреть статистику сцены
Статистику важно смотреть на нескольких уровнях: polycount в DCC, triangle count перед экспортом и vertex count в движке. Полезная привычка — включать отображение треугольников и делать тестовый экспорт-импорт, чтобы поймать расхождения заранее.
- Сравнивайте polycount, tris и vertices, а не одну цифру.
- Учитывайте, что сабдив, сглаживание и модификаторы меняют статистику.
- Проверяйте итоговые числа после экспорта и повторного импорта.
Как правильно считать полигоны — чтобы цифры совпали везде
Одна и та же модель имеет разные «счётчики», потому что разные этапы считают разное. Моделинг смотрит на квады и грани, рендеринг и движки — на треугольники, GPU — на вершины с учётом разрывов атрибутов. Чтобы не спорить из-за терминов, фиксируйте, о чём речь.
Почему счётчик polycount в DCC может не совпадать с triangle count в движке
Причины почти всегда три: триангуляция (квады в два триса, n-gons в много трис), пересчёт нормалей и тангентов на импорте, а также применение модификаторов при экспорте. На анимируемых мешах расхождения диагоналей особенно заметны по бликам и по нормалям.
Разница между polygons, faces и triangles в интерфейсах разных программ
В одном пакете «faces» — все грани, в другом «polygons» — любые полигоны, а где-то интерфейс показывает «tris» как итоговую метрику. Договоритесь с собой о словаре: для производительности говорите «трис» и «вершины», для топологии — «квады» и «петли».
Как разрывы UV и hard edges увеличивают количество вершин на GPU
Если у одной позиции разные UV или разные нормали, это уже разные вершины для GPU. На границе материалов, UV-швах и hard edges вершины дублируются. Если UV-шов и hard edge идут в разных местах, vertex count растёт заметнее.
- По возможности совмещайте UV-швы и hard edges на тех же границах.
- Избегайте лишних материалов, если можно собрать в атлас.
- Смотрите vertex count в движке, а не только polycount в DCC.
Как проверять итоговые числа после экспорта и импорта
Минимальный рабочий цикл контроля: экспорт в целевой формат, импорт обратно и сравнение статистики и шейдинга, затем проверка в целевом движке или рендере. Если цифры и внешний вид не совпадают, ищите причину в настройках триангуляции, нормалей, тангентов и UV.
Экспорт и форматы — что важно знать про меши
Формат экспорта определяет, какие данные сохранятся вместе с геометрией. Для игр важны материалы, UV-каналы, нормали и иногда анимация. Для печати важна геометрия как набор треугольников и корректный объём. Поэтому один формат может быть удобен в одном пайплайне и бесполезен в другом.
OBJ, FBX, glTF, STL, PLY — что обычно сохраняют и что часто теряется
OBJ обычно переносит геометрию и UV для статических моделей, но не ориентирован на современные материалы и анимацию. FBX часто используют в играх и анимации, он переносит скелеты, анимации и структуру сцены, но при разных настройках может пересчитывать нормали и тангенты. glTF ориентирован на реальное время и веб, часто удобен для PBR-материалов и предсказуемых импортов. STL — формат для печати, обычно хранит только треугольники без материалов и UV. PLY часто используют для сканов и вершинных данных, например для облаков точек и цветных вершин, но поддержка в разных пайплайнах отличается.
- Для печати чаще берут STL из-за простоты и совместимости со слайсерами.
- Для игр часто используют FBX или glTF в зависимости от пайплайна.
- Если важны PBR-материалы, glTF часто переносит их удобнее.
- Если важны анимация и совместимость, FBX остаётся распространённым выбором.
Триангуляция при экспорте — когда лучше триангулировать вручную
Если поверхность критична к бликам и деформации, лучше триангулировать вручную и зафиксировать диагонали. Это снижает риск, что при импорте движок разрежет квады иначе и изменит шейдинг. На статике можно оставить квады, но в важных местах контроль диагоналей всё равно полезен.
- Триангулируйте вручную длинные плоскости и зоны с заметным бликом.
- Триангулируйте зоны деформации, если движок может менять диагонали.
- Проверяйте тонкие треугольники и «иголки», которые ухудшают деформацию и шейдинг.
Согласование осей, единиц, масштаба и ориентации нормалей
Оси и масштаб — типовая причина проблем: модель лежит на боку, повернута, слишком большая или слишком маленькая. Перед экспортом применяйте трансформации, проверяйте pivot, единицы и габариты. Ориентация нормалей должна быть согласованной, иначе в движке при backface culling грани могут исчезать.
Материалы и UV — почему один формат удобнее для игр, другой для печати
В печати материалы и UV чаще всего не нужны, поэтому STL подходит. В играх материалы, UV-каналы и иногда второй UV для lightmap важны, поэтому выбирают форматы и настройки, которые надёжно переносят эти данные. Если после экспорта исчезли UV или сломались нормали, проблема обычно в настройках экспорта и импорта, а не в «плохом движке».
Частые проблемы с полигонами и быстрые способы диагностики
Чем быстрее вы отличаете проблему геометрии от проблемы нормалей, UV или экспорта, тем меньше времени уходит на «слепой» ремонт. Ниже — типовые симптомы и первое действие для локализации причины.
Полигоны не выделяются или выделяются странно — причины в режиме подобъектов и в топологии
Частая причина — выбран не тот уровень подобъекта или включены ограничения выделения. Вторая причина — мусорная топология после импорта: наложенные элементы, микрополигоны, скрытые дубликаты. Помогает изоляция объекта, проверка element, weld с малым допуском и удаление внутренних граней.
Перевёрнутые нормали и «чёрные» полигоны
Симптомы: часть поверхности выглядит чёрной, пропадает при просмотре снаружи, или даёт резкие пятна на освещении. Действия: включить отображение нормалей, выровнять их наружу, проверить дублированные поверхности и непланарность, затем пересчитать сглаживание и протестировать экспорт.
Дыры, нестыковки, двойные вершины и разорванные швы
Дыры читаются как gраничные рёбра. Двойные вершины часто проявляются как шов в сглаживании и как разрыв при деформации. Базовый подход: выделить border, сделать weld по малому порогу, проверить, что сетка стала связной, затем убедиться, что не склеили лишнее.
Шейдинг «ломается» на ровной поверхности — непланарность и n-gons
Если плоскость должна быть ровной, а блик переламывается, обычно виноваты непланарные квады, n-gons и непредсказуемая триангуляция. Проверка: включить треугольники, посмотреть диагонали, выровнять вершины в плоскость и заменить проблемные зоны на квады с контролируемыми разрезами.
Артефакты после сабдива — полюса, плотность и неверные опорные ребра
Щипки и волны после сабдива чаще всего связаны с полюсами в плохом месте, неравномерной плотностью и неверным расстоянием support loops до кромки. Решения: перенести полюс, выровнять плотность, сдвинуть опорные рёбра и проверить планарность на больших панелях.
Проблемы при запекании — пересечения, недостаточный паддинг, неверная проекция
Швы и грязь на bake чаще всего дают пересечения геометрии, маленький padding, несогласованные hard edges и UV, а также неверно настроенный cage. Полезно сначала тестировать на 1 024×1 024, затем переходить на 2 048×2 048 и 4 096×4 096, чтобы не тратить время на долгие итерации.
Практические мини-кейсы — чтобы закрепить понимание
Каждый мини-кейс можно повторить за 30–60 минут. Смысл не в красивом результате, а в том, чтобы увидеть связь между инструментом, топологией, шейдингом и экспортом.
Как из куба сделать мягкий хард-сёрфейс объект с правильными фасками
Цель — чистые блики и контролируемые переходы без лишней плотности на плоскостях. Логика: формируем крупные плоскости, добавляем фаски, поддерживаем форму петлями, проверяем треугольники.
- Соберите форму из крупных плоскостей, уберите случайные микрополигоны.
- Сделайте bevel на ключевых кромках, например шириной 1–2 мм в масштабе.
- Добавьте 1–2 support loop там, где край должен быть жёстче после сабдива.
- Проверьте планарность панелей и включите отображение треугольников.
- Проверьте блики в нейтральном материале и на вращении источника света.
Как из цилиндра собрать форму, которая хорошо деформируется
Цель — сгиб без заломов. Логика: quad-dominant сетка, равномерная плотность, дополнительные петли рёбер в зоне сгиба.
- Выберите число сегментов по окружности под нужную гладкость силуэта.
- Добавьте 3–5 петель рёбер в зоне будущего сгиба, сгущая их к центру изгиба.
- Не ставьте полюса и треугольники на рабочей зоне деформации.
- Проверьте bend или skin и корректируйте распределение петель.
Как подготовить простую модель под игру — UV, триангуляция, нормали, LOD
Цель — стабильный вид в движке и предсказуемая статистика. Логика: чистка, UV, согласование разрывов, фиксация диагоналей, тестовый LOD.
- Очистите сетку от внутренних граней, дублей вершин и непланарности на бликах.
- Сделайте UV-развёртку и задайте padding, например 8–16 px.
- Согласуйте hard edges и UV-швы на ключевых границах под clean bake.
- Триангулируйте критичные зоны и зафиксируйте диагонали.
- Сделайте LOD и проверьте переключения на поппинг и сохранение силуэта.
Как подготовить модель под печать — manifold, толщина, проверка ошибок
Цель — печатаемый объём без сюрпризов. Логика: watertight, отсутствие пересечений, корректная толщина и масштаб, предпросмотр слоёв.
- Проверьте, что нет border и оболочка замкнута.
- Уберите самопересечения, внутренние полигоны и двойные поверхности.
- Проверьте толщину стенок и обеспечьте запас к технологическому минимуму.
- Проверьте единицы и габариты в мм.
- Сделайте тестовый предпросмотр слоёв в слайсере и проверьте пустоты и разрывы.
Чек-листы качества полигональной модели
Чек-листы нужны, чтобы не пропускать базовые проверки перед экспортом и перед сдачей ассета. Их можно проходить за 3–5 минут и резко уменьшить количество «странных» багов в конце пайплайна.
Чек-лист топологии для анимации и сабдива
- Quad-dominant сетка в деформациях, петли рёбер поддерживают сгибы.
- Полюса вынесены из зоны активной деформации и из ровных бликующих плоскостей.
- Плотность распределена равномерно, нет резких перепадов размера полигонов.
- Панели планарны там, где это важно, непланарность устранена.
- Сабдив сглаживает без щипков и волн на ключевых участках.
Чек-лист для игрового ассета перед экспортом
- Триангуляция проверена и зафиксирована в критичных местах.
- UV корректны, островки упакованы, padding задан, нужные UV-каналы присутствуют.
- Hard edges согласованы с UV-швами там, где это важно для bake и для вершины на GPU.
- Материалы упорядочены, лишних материалов и разрывов нет.
- LOD и коллизии подготовлены и проверены в движке.
Чек-лист для печати и слайсера
- Модель watertight и manifold, нет border и non-manifold рёбер.
- Нет самопересечений, внутренних полигонов и двойных поверхностей.
- Нормали ориентированы согласованно, оболочка читается как объём.
- Толщина стенок соответствует процессу печати и прочности изделия.
- Масштаб и единицы проверены, габариты соответствуют ожидаемым в мм.
Чек-лист для рендера крупного плана
- Фаски соответствуют масштабу, блики читаются убедительно.
- Плоскости ровные, отражения не «ломаются» из-за непланарности.
- Нормали и сглаживание настроены, шейдинг чистый при смене света и ракурса.
- Сабдив и displacement контролируются, плотность растёт только там, где нужно в кадре.
- Текстуры и bake без швов, UV и padding корректны.
Словарь терминов по теме
Короткие определения ключевых терминов помогают быстрее разбираться в уроках, настройках экспорта и документации движков.
Polygon, face, tris, quads, n-gons
- Polygon — многоугольная грань, в разговоре часто любая грань меша.
- Face — грань, может быть треугольником, квадом или n-gon.
- Tris — треугольники, базовая единица рендеринга.
- Quads — четырёхугольники, удобны для сабдива и деформации.
- N-gons — грани с 5 и более сторонами, рискованные для деформации и триангуляции.
Vertex, edge, border, element
- Vertex — вершина с позицией и атрибутами, включая UV и нормали.
- Edge — ребро, связь двух вершин, основа edge flow и петель.
- Border — открытая граница меша, индикатор дыр и незамкнутой оболочки.
- Element — связная часть сетки внутри одного объекта.
Topology, edge flow, loop, ring, pole
- Topology — схема связности сетки, определяющая предсказуемость операций.
- Edge flow — направление рёбер по форме и деформациям.
- Loop — петля рёбер, проходящая по квадам и выделяемая как единый контур.
- Ring — кольцо рёбер, часто используемое для connect и chamfer.
- Pole — полюс, вершина с количеством рёбер не равным 4.
Normals, smoothing groups, hard edges
- Normals — векторы, определяющие освещение и шейдинг.
- Smoothing groups — способ управлять сглаживанием по группам граней.
- Hard edges — разрывы нормалей, создающие визуально жёсткий край.
UV, texel density, padding, bake
- UV — развертка поверхности в 2D для текстур.
- Texel density — плотность пикселей текстуры на единицу длины модели.
- Padding — отступ вокруг UV-островков против протечек на мип-уровнях.
- Bake — запекание карт, перенос деталей high poly на low poly.
LOD, decimation, retopology, triangulation
- LOD — уровни детализации под разные дистанции.
- Decimation — редукция сетки при сохранении формы.
- Retopology — построение новой управляемой сетки.
- Triangulation — разбиение граней на треугольники.
🟠🔶🟠ВЫБРАТЬ ЛУЧШИЙ КУРС по 3D-МОДЕЛИРОВАНИЮ🟠🔶🟠
FAQ — максимально полный набор вопросов по полигонам в 3D моделировании
Что такое полигоны в 3D моделировании простыми словами
Полигоны — это плоские «кусочки поверхности», из которых собирается оболочка 3D-объекта. Как мозаика или бумажная модель из граней. Чем больше таких кусочков и чем грамотнее они расположены, тем точнее форма и тем чище блики, но тем выше нагрузка на обработку геометрии.
Чем полигон отличается от грани и от треугольника
Грань и полигон в большинстве программ — почти одно и то же слово, обозначающее участок поверхности. Треугольник — частный случай грани, которая всегда состоит из 3 вершин. В разговоре «полигон» часто означает любую грань, но для точности в производительности лучше говорить «трис» и «вершины».
Почему в играх всё считают в треугольниках
Потому что GPU рендерит треугольники как базовый примитив. Любые квады и n-gons всё равно разбиваются на треугольники при импорте или в рантайме. Поэтому бюджет сцены, статистика ассетов и оптимизация в играх обычно опираются на triangle count.
Квады лучше треугольников или это миф
Это не абсолютная истина. Квады удобнее для сабдива и деформации, потому что дают предсказуемые петли рёбер и ровный edge flow. Треугольники нормальны для статических объектов, для участков без сгиба и там, где важна стабильная триангуляция. Важно не «избавиться от всех треугольников», а понимать, где они безопасны.
Что такое n-gons и когда их можно использовать
N-gons — грани с 5 и более сторонами. Их можно использовать на плоских, недеформируемых участках и в местах, где триангуляция не влияет на блик и силуэт. Опасно оставлять n-gons в зоне деформации, на бликующих поверхностях и перед бейком, потому что при экспорте они разрежутся непредсказуемо.
Почему треугольники всегда плоские и что это даёт
Любые 3 точки задают плоскость, поэтому треугольник не может быть «скрученным». Это делает расчёты устойчивыми: освещение, пересечения, растеризация и коллизии проще и предсказуемее. Именно поэтому треугольники удобны для GPU и большинства алгоритмов геометрии.
Что такое полигональная сетка и из чего она состоит
Полигональная сетка, или mesh — это структура данных, где есть вершины, рёбра и грани. Вершины содержат координаты и атрибуты, рёбра соединяют вершины, грани формируют поверхность. Дополнительно меш может иметь разбиение на элементы, группы сглаживания и UV-развёртку.
Что такое вершина и какие данные она хранит
Вершина — это не только позиция в 3D. Она хранит атрибуты: нормаль, UV-координаты, цвет вершины, тангенты и битангенты для нормал-мапа, веса скиннинга к костям, иногда несколько UV-каналов и другие данные. Чем больше атрибутов, тем «тяжелее» вершина по памяти.
Почему число вершин может быть больше, чем видно в модели
Потому что одна позиция в пространстве может превращаться в несколько вершин в буфере, если у неё разные UV или разные нормали. Это происходит на UV-швах, hard edges и границах материалов. В результате визуально «одна точка» может стать 2–4 вершинами для GPU, и vertex count растёт.
Что такое ребро и зачем нужны петли рёбер
Ребро — связь двух вершин. Петли рёбер нужны, чтобы управлять формой быстро и предсказуемо: добавлять плотность, поддерживать сгибы, удерживать кромки для сабдива и контролировать блики. Хорошие петли позволяют менять форму одной операцией, а не править десятки вершин вручную.
Что такое border и как он помогает найти дырки
Border — это открытая граница меша, то есть контур из граничных рёбер, у которых грань есть только с одной стороны. Если модель должна быть замкнутой, выделение border показывает, где есть дырка или незамкнутый шов. Для 3D-печати это особенно важно, потому что оболочка должна быть водонепроницаемой.
Что такое element в 3ds Max и в чём его польза
Element — это связная часть сетки внутри одного объекта. Например, гайки и корпус могут быть разными элементами в одном меше. Element удобен для быстрого выделения деталей, разнесения по материалам, подготовки к UV и для разделения на части перед экспортом.
Как понять, что полигоны непланарные
Непланарность чаще всего заметна по блику: на «ровной» поверхности появляется перелом или волна. Также помогает просмотр в режиме треугольников: если квады скручены, диагонали дают разные плоскости. Практический способ — выровнять вершины в плоскость и проверить, исчез ли артефакт.
Почему непланарность даёт артефакты на шейдинге
Потому что непланарный квад или n-gon неизбежно разрежется на треугольники, а каждый треугольник имеет свою плоскость. Если диагональ триангуляции меняется между программами, меняется и плоскость, по которой считается освещение. В итоге блик «ломается» и шейдинг становится нестабильным.
Что такое нормали и как они связаны с полигонами
Нормали — это векторы, которые определяют, как поверхность освещается. Без нормалей меш не будет корректно реагировать на свет. Нормали могут быть у граней и у вершин, и именно они задают, будет ли поверхность выглядеть гладкой или гранёной.
Чем отличаются face normals и vertex normals
Face normal — нормаль грани, перпендикуляр к плоскости треугольника. Vertex normal — нормаль вершины, которая интерполируется по поверхности и формирует smooth shading. При разрыве сглаживания у одной позиции появляются разные vertex normals, и край становится жёстким.
Что такое hard edge и когда он нужен
Hard edge — это разрыв нормалей на ребре, чтобы получить визуально резкий край. Он нужен на переломах формы, на гранях коробчатых объектов и на границах материалов. Однако жёсткий край без фаски часто выглядит неестественно, поэтому hard edge обычно поддерживают bevel или запечённой фаской.
Что такое smoothing groups и работают ли они одинаково везде
Smoothing groups — способ группировать грани для сглаживания, распространённый в 3ds Max и похожих системах. В других программах может быть другой интерфейс, но смысл тот же — управлять усреднением нормалей. Разница в том, как экспортируются и пересчитываются нормали и тангенты, поэтому «одинаково везде» они не работают.
Почему один и тот же меш выглядит по-разному в разных программах
Чаще всего из-за различий в нормалях, в расчёте тангентного пространства и в триангуляции. Если при экспорте нормали пересчитались, диагонали поменялись, а тангенты в движке считаются иначе, на тех же UV-швах появятся линии и пятна. Поэтому важно фиксировать критичные вещи и проверять импорт.
Как полигоны связаны с сабдивом и SubD
Сабдив сглаживает полигональную сетку по правилам, добавляя плотность и усредняя форму. Качество результата зависит от топологии: ровный edge flow и управляемые полюса дают чистую поверхность, хаотичные треугольники и n-gons дают щипки и волны.
Почему сабдив любит квады
Потому что квады образуют предсказуемую структуру петель, а схемы сглаживания стабильно перераспределяют кривизну по quad-сетке. Треугольники и полюса меняют распределение и могут создавать локальные заломы, особенно на ровных бликующих поверхностях.
Что такое опорные рёбра и как они контролируют форму
Опорные рёбра, или support loops — рёбра, расположенные близко к кромке, чтобы удержать жёсткий переход после сабдива. Чем ближе опорное ребро к краю, тем резче переход. Чем дальше — тем мягче и шире визуальный радиус.
Что такое полюса и где их лучше располагать
Полюс — вершина, в которую сходится не 4 ребра. Полюса лучше убирать из зон деформации и из гладких бликующих плоскостей. Их прячут под деталями, швами, стыками, в местах, где небольшой артефакт будет незаметен.
Треугольники в топологии — это всегда плохо или зависит от задачи
Зависит от задачи. В персонажах и сабдиве треугольники на сгибах опасны, потому что ломают петли и деформацию. В статике треугольники часто безопасны и даже полезны для фиксации диагоналей. Важно не количество треугольников, а их расположение.
Что такое clean topology и как её распознать
Clean topology — сетка без мусора и с предсказуемой структурой. Нет самопересечений, внутренних граней, дублей вершин, non-manifold участков. Плотность распределена логично, edge flow поддерживает форму, а шейдинг чистый при проверке бликов.
Как полигоны влияют на анимацию и скиннинг
Скиннинг работает на вершинах: каждой вершине назначаются веса влияния костей. Если топология не поддерживает сгибы, вершины растягиваются и дают заломы. Правильные петли вокруг суставов и достаточная плотность в зоне сгиба позволяют распределить веса плавно и сохранить объём.
Что такое edge flow и зачем он нужен для лица персонажа
Edge flow на лице задаёт, как будут работать мимические деформации. Петли вокруг рта, глаз и носа позволяют делать улыбку, моргание и артикуляцию без «звёздочек» и щипков. Без правильного edge flow даже хороший риг не спасает — сетка будет ломаться.
Как связаны полигоны и UV-развёртка
UV-развёртка раскладывает поверхность меша в 2D. Она опирается на грани и вершины. Чем чище топология и чем логичнее разрезы, тем проще сделать развёртку без растяжений и тем стабильнее будут текстуры и бейк.
Почему UV-швы увеличивают количество вершин в движке
На UV-шве одна и та же позиция должна иметь две разные UV-координаты для разных сторон шва. Для GPU это две разные вершины. Поэтому больше швов — больше вершин в буфере. Если ещё и hard edge в другом месте, вершины могут умножаться сильнее.
Что такое texel density и как она зависит от развёртки
Texel density — это сколько пикселей текстуры приходится на единицу длины модели, например пиксели на метр. Она зависит от масштаба объекта и от того, как упакованы UV-островки. Если один островок растянут, плотность упадёт, и текстура будет выглядеть мыльно по сравнению с соседними деталями.
Как полигоны связаны с запеканием normal map
Normal map переносит детали хайполи на лоуполи. Для чистого запекания важны корректные нормали, согласование hard edges и UV-швов, отсутствие пересечений и правильная триангуляция. Плохая топология и n-gons дают непредсказуемые швы и артефакты.
Почему появляются швы и артефакты при baking
Причины обычно такие: UV-швы без согласованных нормалей, недостаточный padding, пересечения геометрии, неверный cage, различие в тангентном пространстве между бейкером и движком. Лечат это не «магическими настройками», а дисциплиной: чистая сетка, контроль швов и проверка в целевом движке.
Что такое padding и сколько его делать
Padding — отступ вокруг UV-островков, чтобы при мипмаппинге пиксели не «протекали» на соседний островок. На практике часто используют 8–16 px для 2 048×2 048 и больше для 4 096×4 096, но точное значение зависит от пайплайна, мипов и требований движка.
Как понять, что модель годится для игры
Game-ready модель имеет понятный triangle count и vertex count, чистый шейдинг в движке, корректные UV, адекватные материалы, стабильную триангуляцию и подготовленные LOD и коллизии при необходимости. Критерий простой: ассет без сюрпризов переживает экспорт и выглядит в движке так же, как в DCC.
Какой polycount считается нормальным для персонажа
Единой цифры нет: она зависит от платформы, от дистанции камеры, от количества персонажей на экране и от качества материалов. Практический подход — ориентироваться на triangle count и на тест в движке. Для геро-персонажа обычно допустим больший бюджет, чем для массовки, а для VR и мобильных — ниже. Важно планировать бюджет не для одного персонажа, а для сцены.
Какой polycount нормален для пропсов и окружения
Зависит от того, как близко объект к камере и сколько таких объектов в сцене. Пропсы первого плана получают больше трис на силуэт и фаски, дальние — меньше. Окружение часто собирается модульно, и там важны LOD, инстансинг и количество материалов не меньше, чем треугольники.
Как оптимизировать модель без потери силуэта
Сначала оптимизируют то, что не влияет на силуэт: внутренние грани, скрытые части, мелкие выступы, которые можно перенести в normal map. Затем смотрят на блики и фаски: иногда выгоднее оставить фаску и убрать плотность на плоскости. Лучший тест — чёрный шейдер и вращение света, чтобы увидеть, где форма реально читается.
Что важнее — polycount или triangle count
Для игр важнее triangle count, потому что конечная геометрия в кадре треугольная. Polycount в квадах полезен для моделинга, но он не отражает реальную нагрузку после триангуляции. Поэтому при обсуждении оптимизации лучше опираться на трисы и вершины.
Почему vertex count иногда важнее triangle count
Потому что вершинный этап считается по вершинам, а вершины умножаются разрывами UV, материалов и нормалей. Модель может иметь умеренный triangle count, но высокий vertex count, и тогда она будет тяжелее, чем кажется по трис. Это особенно заметно на ассетах с множеством швов и материалов.
Как правильно смотреть статистику геометрии в 3ds Max
Смотрите статистику объекта и сцены и отдельно проверяйте триангуляцию. Важно понимать, что счётчики могут показывать faces как квады, а движок будет показывать tris. Поэтому полезен тестовый экспорт и проверка статистики после импорта обратно.
Как посчитать треугольники, если в модели квады
Приблизительная оценка: один квад превращается в 2 треугольника. Но n-gons могут дать больше трис, а некоторые модификаторы меняют разбиение. Самый надёжный способ — включить отображение треугольников или выполнить триангуляцию на копии и посмотреть итоговый triangle count.
Нужно ли триангулировать модель перед экспортом
Если модель статическая и нет критичных бликов, можно оставить триангуляцию на экспорт и движок. Если важны стабильные диагонали, чистый шейдинг и деформация, лучше триангулировать вручную и зафиксировать результат. Это уменьшает риск расхождений между DCC и движком.
Почему после экспорта меняется шейдинг
Чаще всего из-за пересчёта нормалей и тангентов при импорте или из-за изменения триангуляции. Также влияет различие в настройках сглаживания и в том, какие данные экспортируются. Решение — экспортировать нормали там, где это нужно, фиксировать триангуляцию и проверять импорт в целевом окружении.
Почему после экспорта меняется триангуляция
Потому что квады и n-gons можно разрезать разными диагоналями, и разные программы могут выбирать разные варианты. Если вы не зафиксировали диагонали, движок может триангулировать иначе. В критичных местах фиксируйте триангуляцию вручную.
Какие форматы лучше для передачи полигональной сетки
Для игр и анимации часто используют FBX, для веба и реального времени удобен glTF, для простых статических мешей иногда хватает OBJ. Для печати чаще используют STL. Выбор зависит от того, нужно ли переносить UV, материалы, анимацию, несколько объектов сцены и дополнительные атрибуты.
Чем FBX отличается от OBJ для мешей
FBX обычно переносит больше данных: иерархию сцены, анимацию, скелет, несколько материалов и дополнительные параметры. OBJ чаще проще и используется для статической геометрии и UV, но не рассчитан на современные PBR-пайплайны и анимацию. Важно учитывать и стабильность импорта в вашем движке.
Чем glTF полезен для веба и реального времени
glTF часто удобен тем, что ориентирован на реальное время и PBR-материалы, а также на компактность и предсказуемость передачи ассетов. Для веба это снижает количество проблем с материалами и текстурами и упрощает просмотр в браузере и в движках.
Почему STL неудобен для материалов и UV
STL обычно хранит только треугольники и не рассчитан на перенос материалов, UV и текстур. Для печати это нормально, но для игр и рендера STL неудобен, потому что теряется информация о внешнем виде, развёртке и шейдинге.
Что такое LOD и зачем он нужен
LOD — уровни детализации, набор версий модели с разным количеством треугольников для разных дистанций камеры. Он нужен, чтобы не тратить ресурсы на мелкую геометрию там, где она не видна. Это помогает держать стабильную производительность сцены.
Сколько уровней LOD обычно делают
Зависит от проекта и движка. Часто делают 3–5 уровней: детальный для близкой камеры, средний для средней дистанции и грубый для дальней. Важно не количество уровней, а то, чтобы переходы были незаметными и чтобы каждый уровень давал реальную экономию.
Чем ручной LOD лучше автоматического
Ручной LOD позволяет сохранить силуэт, фаски и чистый шейдинг, а также контролировать, какие детали убираются. Автомат часто упрощает «по математике», а не «по восприятию», и может испортить читаемость формы или дать артефакты нормалей.
Что такое decimation и какие у него риски
Decimation — редукция сетки с уменьшением количества полигонов. Риски: ухудшение силуэта, поломка UV, рост артефактов шейдинга, появление тонких треугольников и потеря фасок. После decimation всегда проверяйте блики, UV и триангуляцию.
Что такое retopology и когда она обязательна
Retopology — построение новой управляемой сетки поверх исходной, чтобы получить правильный edge flow, удобную UV и стабильный шейдинг. Она обязательна для анимируемых персонажей и часто нужна после скульпта, если исходная сетка хаотична и не подходит для деформации и бейка.
Как понять, что после скульпта нужна ретопология
Если сетка слишком плотная и неравномерная, если петли рёбер не поддерживают деформации, если UV делать неудобно, а шейдинг грязный — ретопология почти неизбежна. Если модель статическая и только для рендера, иногда можно обойтись ремешем, но для анимации и игр ретопология обычно нужна.
Можно ли игнорировать топологию, если модель только для рендера
Иногда да, но не всегда. Если объект статичен, нет деформации, и вы используете displacement и сабдив аккуратно, требования к edge flow ниже. Но чистый шейдинг, планарность панелей, отсутствие самопересечений и корректные нормали всё равно важны, особенно для крупного плана и отражающих материалов.
Когда лучше использовать NURBS вместо полигонов
Когда важны гладкие аналитические поверхности и точный контроль кривизны, например в некоторых задачах индустриального дизайна. Но для игр и для большинства VFX-пайплайнов результат всё равно тесселируется в полигоны, поэтому NURBS чаще часть промежуточного этапа.
Когда лучше использовать CAD вместо полигонов
Когда нужна инженерная точность размеров, допуски, посадки и производственная документация. CAD проще обеспечивает радиус 5,0 мм и фаску 1,0 мм в строгих размерах. Но для визуализации CAD-модель часто требует тесселяции и чистки, чтобы стать удобной полигональной сеткой.
Чем полигональная модель отличается от твердотельной
Полигональная модель описывает поверхность как набор граней. Твердотельная модель описывает объём через параметрические операции и точные поверхности. Твердотельная модель удобна для производства, полигональная — для визуализации и рендера в реальном времени.
Чем полигональная модель отличается от воксельной
Воксельная модель описывает объём как «кубики» или как поле плотности. Она удобна для скульпта и булевых операций, но результат часто требует ремеша и ретопологии для игр и анимации. Полигональная модель удобнее для управляемой топологии, UV и шейдинга.
Что такое «дырявая» модель и чем она опасна
Дырявая модель — меш с открытыми границами, где оболочка не замкнута. Для печати это критично: слайсер может неправильно построить объём. Для рендера и игр это может приводить к просветам при backface culling и к странным теням и AO.
Что такое manifold mesh и зачем он нужен
Manifold mesh — топологически корректная оболочка, где нет non-manifold рёбер и неоднозначных участков. Он нужен для печати, симуляций и многих алгоритмов геометрии, потому что они требуют однозначного объёма и корректной связности.
Почему 3D-печать требует водонепроницаемую сетку
Потому что печать строит физический объём. Если оболочка не замкнута, программа не понимает, где «внутри», а где «снаружи». Это приводит к пустотам, пропускам стенок и ошибкам траекторий.
Как проверить и исправить перевёрнутые нормали
Включите отображение нормалей и backface culling. Перевёрнутые участки обычно «исчезают» снаружи или выглядят чёрными. Исправление — выровнять нормали наружу, затем пересчитать сглаживание и убедиться, что нет двойных поверхностей, которые имитируют проблему.
Почему появляются самопересечения и как их найти
Они появляются после неаккуратных булевых операций, зеркала без сварки, пересечения деталей при сборке и после сильных деформаций. Находят их проверками self-intersections, просмотром в разрезе, анализом в слайсере для печати и по артефактам в AO и бейке.
Почему не выделяются полигоны в 3ds Max и что делать
Проверьте уровень подобъекта, режим выделения и фильтры. Если всё настроено верно, проблема часто в топологии: наложенные элементы, микродубли и неочевидные разрывы. Помогают element selection, weld с малым допуском, удаление внутренних граней и проверка border.
Как уменьшить количество полигонов в 3ds Max без разрушения формы
Сначала удаляйте невидимое и лишнее: внутренние грани, скрытые части, микродетали, которые можно запечь. Затем используйте аккуратную редукцию, сохраняя силуэт и фаски. Всегда проверяйте блики и триангуляцию после оптимизации и делайте копию перед агрессивными операциями.
Чем extrude отличается от bevel
Extrude вытягивает грань и создаёт «стенки» без автоматической фаски. Bevel обычно сочетает смещение и вытягивание, создавая фаску и контролируемый переход. Bevel удобен, когда нужен сразу и объём, и кромка, которая будет красиво ловить блик.
Зачем нужен inset и как он помогает в хард-сёрфейсе
Inset создаёт внутренний контур, который помогает формировать панели, углубления и посадочные места. В хард-сёрфейсе inset часто используют перед extrude, чтобы получить аккуратную стенку и сохранить контролируемую толщину перехода.
Что такое weld и почему он спасает от щелей
Weld объединяет вершины, устраняя разрывы и микродубли. Щели часто появляются после зеркала, импорта и ручных правок. Weld с правильным допуском превращает две почти совпадающие вершины в одну, делая сетку связной и устраняя швы в деформации и шейдинге.
Что такое draw calls и при чём здесь полигоны
Draw call — команда движку отрисовать набор треугольников с конкретным материалом и состоянием. Чем больше объектов и материалов, тем больше draw calls. Полигоны влияют косвенно: если ассет разбит на много частей с разными материалами, увеличиваются draw calls и переключения, что может быть дороже, чем пара тысяч лишних трис.
Почему материалы и разбиение на объекты влияют на производительность
Потому что каждое переключение материала и состояния рендера имеет накладные расходы. Один объект на 30 000 трис с одним материалом иногда быстрее, чем три объекта на 10 000 трис с тремя материалами, если сцена упирается в draw calls. Поэтому оптимизация — это баланс геометрии, материалов и структуры сцены.
Почему даже с Nanite остаются ограничения на прозрачность и деформации
Прозрачность, волосы, листвa и некоторые эффекты требуют других подходов к рендерингу и часто не вписываются в виртуализированную геометрию. Деформации и скелетная анимация требуют управляемой сетки и стабильных вершинных данных. Поэтому для персонажей и VFX-объектов классические правила остаются актуальными.
Следующие шаги — как прокачать навыки после прочтения
Лучший рост даёт практика по пайплайнам и осознанная диагностика. Важно не только моделить, но и проверять: где ломается шейдинг, где растёт vertex count, где триангуляция меняет блик, где UV дают шов на нормалях. Чем быстрее вы находите причину, тем быстрее растёт качество.
Собрать собственный чек-лист под вашу задачу — игры, рендер, печать
Соберите 10–15 пунктов, которые вы проверяете перед экспортом. Для игры это трисы, вершины, UV, материалы, LOD и коллизии. Для рендера — фаски, шейдинг, планарность, сабдив и displacement. Для печати — watertight, manifold, толщина, масштаб и отсутствие пересечений. Такой чек-лист экономит часы на исправлениях.
Научиться диагностике — нормали, непланарность, n-gons, швы, пересечения
Отрабатывайте диагностику как отдельный навык. Для каждого типа проблемы заведите «тестовый меш», где вы специально создаёте ошибку и учитесь её находить и исправлять. В итоге вы начнёте замечать проблемы сразу на этапе моделинга, а не после того, как потратите время на UV и бейк.
🟠🔶🟠ВЫБРАТЬ ЛУЧШИЙ КУРС по 3D-МОДЕЛИРОВАНИЮ🟠🔶🟠
Глубокий разбор
- Какой компьютер для 3D моделирования выбрать
- Где применяется 3D моделирование