Создание огнетушителя в 3ds Max, ч. 5: теория развёртки (UV Unwrapping)

Сегодня мы изучим основные правила создания развёрток (анврапа) low poly моделей в 3ds Max, чтобы затем применить их для огнетушителя, над которым мы сейчас работаем. Стадия UV Mapping'а является важнейшей в процессе разработки видеоигр, от неё очень много зависит. Идеальная развёртка сочетает в себе различные технические приёмы и методы, к рассмотрению которых мы сейчас и перейдём.

Дополнительные файлы


Важные моменты при создании развёртки

Говоря о создании безупречных проекционных координат UV для какого-нибудь 3D-объекта, следует уделить внимание нескольким крайне важным моментам.

1. Держите всё внутри границ поля координат UV

Запустив UV Editor (Редактор проекционных координат UV) в 3ds Max, вы увидите специальное поле. Ниже я обозначил его зелёным прямоугольником. Эта область называется пространством координат UV. Развёрнутые грани нужно помещать внутрь этого поля, так как всё, что будет находиться за пределами его границ, приведёт к повторению (тайлингу) текстуры.

Область координат UV

2. Максимальное использование пространства координат UV

Убедитесь, что пространство проекционных координат у вас заполнено разметкой UV-координат как можно плотнее. Так вы сможете добиться максимального разрешения из текстуры для 3D-модели.

Пространство координат UV

3. Накладывающиеся друг на друга грани

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

Перекрывающиеся координаты UV развертки

4. Распределение плотности элементов текстуры (пикселей)

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

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

Плотность пикселей на развертке

5. Старайтесь располагать соответствующие друг другу части рядом

Допустим, мы текстурируем модель в Photoshop, работая над отдельно взятой её частью. И если вдруг понадобится найти прилегающую к ней часть, то пришлось бы переходить обратно в 3ds Max, открывать в нём UV Editor и выделять требуемую деталь. И всё это ради того, чтобы узнать правильное положение той части — жутко долго! Чтобы избежать этой проблемы, при анврапинге правильнее было бы располагать связанные части по соседству друг с другом.

Соседние координаты UV в развертке

6. Ориентация текстур

Придерживайтесь ориентации проекционных координат UV (или направления, куда они «смотрят»), как у модели, для которой вы делаете развёртку. Ведь если развернуть грань в обратную сторону или повернуть её по вертикали, то тогда текстура и её обтекание модели также станут перевёрнутыми.

Ориентация текстур

7. Прячьте швы

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

Спрятанные швы в развертке

8. Отступы между координатами UV

Расставляйте каждый набор координат UV с небольшим интервалом друг от друга — это поможет избежать их смешивания, когда на более позднем этапе будет производиться сжатие текстуры. В большинстве случаев величина отступов зависит от размера текстуры. Если имеем дело с текстуром размером 2048 х 2048 пикселей, то промежуток между каждым изолированным участком UV-координат должен быть от 6 до 8 пикселей.

Отступы между координатами развертки

Примеры UV Mapping

Боксовый (Box) и цилиндрический (Cylindrical) типы маппинга

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

Box Mapping и Cylindrical Mapping

Планарный (Planar) тип маппинга

Когда вы применяете к объекту модификатор Unwrap UVW, то в своё распоряжение получаете четыре варианта маппинга: Planar (Плоскостная), Cylindrical (Цилиндрическая), Spherical (Сферическая) и Box(Боксовая). Они проецируют и разворачивают координаты UV соответствующими их названиям образами. Возьмём для примера бокс: если нужно сделать анврап выделенного на нём полигона, как показано ниже (он направлен в сторону оси Y), то выбирать надо тип проекции Planar Map и расположение по оси Y.

Planar Mapping

Расположение по осям

А в этом примере цилиндрическая проекция смотрится несуразно внутри контейнера координат UV потому, что я её расположил не по той оси.

 

Неправильный выбор оси проекции развертки

Но стоит только нажать кнопку ориентировки по оси Z, как тут же координаты будут приведены в порядок!

Правильная ось проекции координат развертки

Надеюсь, основы создания развёрток UVW Unwrap вы усвоили. В следующих частях мы закрепим теорию практикой на примере модели огнетушителя. Заодно по ходу дела вы узнаете ещё несколько полезных советов и приёмов. Перейти к практической части >>>


Другие материалы:

Здесь с 16.01.2014
11 комментариев
Откуда: Россия
Репутация: 0

#1 добавил rad

27 марта 2015 15:34 | Комментариев: 11
Огромное спасибо за урок! Создание развёртки и модификатор UVW Unwrap как раз моё слабое место. А тут так подробно расписано, что и вопросов не остаётся. Буду ждать следующий урок!