UV-разметка

From Valve Developer Community
< Ru
Jump to navigation Jump to search
English (en)Русский (ru)Translate (Translate)
Эта статья(раздел) является наброском(en). Вы можете помочь, дополнив её.
Пространство текстуры
(плитка)
Некоторые графические API считывают текстуры от верхнего левого угла к нижнему правому ↘, в то время как другие - от нижнего левого угла к верхнему правому ↗. Иногда UV-координаты могут использовать как ST-координаты в параметрическом представлении.

Исходный код Source использует как UV так и ST преобразования.

1 ↑
V
0 U → 1

UV-разметка является частью данных геометрии объекта. Она определяет каким образом области двухмерного изображения (в UV-координатах) должны выбираться(en) и отображаться(en) на треугольниках поверхностей конкретной 3D-сетки. Каждой вершине(en) сетки соответствуют UV-координаты в виде нормированного вещественного числа [0 - 1] для каждого треугольника, который она задаёт. Метод определения UV-координат вершин называется UV-разметкой или skinning (создание облика)(en). UV-разметка не содержит никаких данных изображения (например, цвет и т.п.). Это всего лишь матрица, связывающая 2D- и 3D-координаты(en).

Note.pngПримечание: Модели, как правило, имеют более сложную сетку, чем элементы карты, что значительно усложняет UV-разметку. Поэтому VTF-файлы, как правило, создаются специально для простого и эффективного применения в одной единственной модели. Модели могут использовать несколько (альтернативных) обликов, при условии, что макет каждого VTF-файла соответствует UV-карте модели.

Материалы(en) применяют пиксельные данные каждого VTF-файла (основная текстура, массив нормалей, маска бликов) к одной и той же UV-области модели. Таким образом, материал/облик(en) модели можно легко редактировать без необходимости создания дополнительной UV-разметки.

UV-разметка является повторяемой (плиточной), это значит, что если геометрия выходит за пределы одной текстуры, то она всё равно будет отображаться с текстурой. Это полезно для создания сложных макетов и/или повторного использования текстурного пространства нескольких несвязанных сеток, хотя чаще всего используется для бесшовных текстур и наборных текстур(en).

UV-разметка (UV Mapping) или Разметка текстур (Texture Mapping) - это процесс растягивания полигонов на пикелях изображения.

VMT(en)-файлы позволяют задавать корректировку UV-разметки для каждого VTF отдельно с помощью $basetexturetransform(en), $bumptransform(en) и других параметров VMT.

Нужно сделать: confirm: this only works for VMTs applied to Brushes, not to Models?
  • Координаты U (по горизонтали) и V (по вертикали) изменяются в диапазоне от 0 до 1, поэтому "0.5 0.5" всегда соответствует середине VTF.

Выборка

Нужно сделать:  linear, bi-linear, tri-linear interpolation

Вторичная UV-разметка

Нужно сделать: used in source 2

Анимация UV-разметки

Нужно сделать: used in foliage shader in source 2

Внешние ссылки

Смотреть также