Школа Counter-Strike - Часть 4.1. Что такое текстуры и декали?

Мир Counter-Strike

Приветствую Вас Гость | RSSГлавная | Часть 4.1. Что такое текстуры и декали? | Регистрация | Вход
Главное меню
Теория CS
Видео школа CS 1.6
Скачать
Магазин
Мастерская
Арт-Cs
Новые видео уроки CS 1.6Новые материалы и файлы


Учебник по созданию карт
Часть 4. Текстуры и декали.

Часть 4.1. Что такое текстуры и декали?

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


1. Текстуры

1.1 Что такое текстура?

Текстура — это рисунок, которым покрываются стороны объектов. Благодаря текстурам, мы отличаем траву от асфальта, деревянный забор от кирпичной кладки, металлическую балку от куска скалы и т.п. Ясно, что перекрашивание браша, к примеру, в текстуру машины, не заставит его ездить — для этого необходимо сделать браш энтити-объектом и выставить свойства.

Также текстуры, как это ни парадоксально, оказывают влияние на пробиваемость объектов пулями. В директории «Cstrike\sound» есть эдакий файл materials.txt, в котором указаны имена некоторых стандартных текстур и соответствующий им тип материала (грязь или скала, дерево или металл и др.). Практически было доказано, что объекты, затекстурированные, к примеру, текстурой металла пробиваются хуже, чем объекты с текстурой дерева. Но, помните, если имя текстуры не указано в файле materials.txt, то простреливаемость всех объектов в уровне будет одинаковой, и не будет зависить от наложенной текстуры.


1.2 Где хранятся текстуры?

Текстурные библиотеки для HL хранятся в папке Valve. Уровни для Counter-Strike используют текстуры из каталогов Valve и Cstrike. Текстуры в HL содержатся в файлах с расширением *.WAD. В одном WAD-файле может быть любое число текстур: от одной до нескольких тысяч.


1.3 Чем можно просматривать текстуры?

Для просмотра мы советуем использовать программу Wally (в ней же можно создавать и свои текстурные файлы, то есть *.WAD файлы). Также текстурные библиотеки можно просматривать в редакторе Хаммер, во внутренном текстурном браузере.


1.4 Как называются стандартные текстурные файлы?

Стандартными мы называем те текстуры, находящиеся в директории HL и CS после установки данных игр. Те текстуры, которые берутся создателями карт «со стороны», стандартными не являются.

Так, уж, повелось, что текстуры из директории Valve не меняются и переходят от версии к версии. А вот текстурные библиотеки для Counter-Strike уровней, которые находятся в директории Cstrike, могут быть удалены или заменены разработчиками. В принципе всё верно — если какой-то из официальных CS уровней удалили из списка, то не за чем держать его текстуры. А теперь представьте, что вы на вашем уровне использовали текстуры из данного удаленного *.WAD файла...

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

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

  • halflife.wad — главный *.WAD файл игры HL с большим числом текстур (более 40 Мб)
  • liquids.wad — текстуры жидкостей
  • decals.wad — декали (читайте ниже)
  • cstrike.wad — стандартный WAD-файл для Counter-Strike
Также немалое число текстур находится в папке Cstrike — это текстуры официальных Counter-Strike карт. К примеру, очень красивые текстуры можно найти в следующих *.WAD файлах:

cs_bdog.wad
de_piranesi.wad
de_vegas.wad
cs_havana.wad
itsitaly.wad

chateau.wad
Это тоже стандартные текстурные библиотеки (раз уж они поставляются вместе с HL), однако нет никакой гарантии, что в один прекрасный день уровни, а вместе с ними и текстуры не будут удалены из дистрибутива Counter-Srike. В связи с этим, мы советуем вшивать текстуры из подобных *.WAD файлов в итоговый BSP-файла уровня.

Важно! Если вы используете на своём уровне текстуры из нестандартных библиотек, то непременно распространяйте их вместе со своим урвонем, в одном архиве. Лучше всего, конечно, вшить данные текстуры в BSP-уровень, но можно создать и отдельный *.WAD файл.

Предположим, вы создаете уровень и используете текстуры из 5 нестандартных текстурных библиотек: 3 текстуры из 1-ого, 1 текстуру из 2-ого, 4 текстуры из 3-его и т.п. Так вот, чтобы уровень загрузился нужны будут все задействованные при создании уровня текстурные библиотеки. Смысла распространять эти 5 нестандартных WAD-файлов все вместе с уровнем нет. Мы же используем по 1-4 текстуры из данных библиотек. Так зачем увеличивать размер архива? Именно в связи с этим нужно составить один *.WAD файл и записать в него используемые текстуры. А еще проще и быстрее, повторимся, лучше вшить текстуры в *.BSP файл уровня.


1.5 Включение текстур в BSP-файл карты

Вшить текстуры в BSP-файл уровня — означает записать их прямо в сам уровень (без отдельных файлов). При этом отпадает надобность распространять вместе с уровнем отдельные *.WAD файлы. О том, как вшить текстуры в BSP-карту, мы рассказываем в других статьях данной главы Учебника.


1.6 Размеры текстур

Минимальный размер текстуры в HL равен 16 х 16 пикселей. Меньше — никак, больше — возможно. Максимальный размер текстур, по обыкновению, используемый создателями карт — 512 х 512 пикселей. Стоит также заметить, что длина и ширина текстуры обязательно должна быть кратна 16, например: 128 х 96, 256 х 128, 48 х 64 и т.п.

По обыкновению, при нанесении текстуры, один текстурный пиксель приравнивают к одному юниту длины браша или брашевой энтити. Это считается нормальным масштабом, то есть 1 к 1. К примеру, текстуру с размерами 128 х 128 пикселей необходимо наносить на сторону объекта с размерами 128 х 128 юнитов или меньшими (в данном случае, текстура «подгоняется» под размер объекта кнопкой Fit).

Текстуры хорошо смотрятся в игре при масшатбе нанесения 1:1. А если же текстура меньше размеров браша, то в игре будет некая размытость, зависящая от величины масштаба. Однако, с целью экономии полигонов, бывает, текстуры специально наносят с увеличенным масштабом 2:1, 4:1 и др. Подробно о данной технике сбережения полигонов мы рассказываем в 6-й главе Учебника, в материале об R_Speeds.

Обратив внимание на размеры текстур в стандартных *.WAD файлах, можно сделать вывод, какого размера бывают стандартные объекты: окна, ворота, стены. К примеру, довольно часто встречаются текстуры ящиков с размером 64 x 64 или 128 х 128 пикселей. Это как бы указывает на размеры стандартных ящиков в 64 х 64 х 64 и 128 х 128 х 128 юнитов. Естественно, можно использовать и другие размеры, просто очень маленькие или очень большие объекты могут выглядеть нереалистично. А то получится, как в уровне de_rats, хотя идея забавная :-)


1.7 Масштаб текстур

Как мы уже говорили выше, один текстурный пиксель приравнивается к одному юниту длины браша. Это масштаб — 1 к 1. Если наложить текстуру 256 х 256 пикселей на ящик 128 х 128 юнита, то масштаб составит 1:2 (или 0,5). Если же натянуть маленькую текстуру 16 х 16 пикселей на ящик 64 х 64 юнита, то масштаб составит 2:1.

Масштаб текстур тесно связан с числом, видимых игроком полигонов. Больше маштаб текстуры, то есть чем больше они растянуты, тем меньше полигонов отрисовывает движок Half-Life, и тем выше FPS и тем меньше тормозит уровень. Поэтому мы советуем на неважных местах (скалы, земля и пр.) увеличивать масштаб текстур.


1.8 Названия текстур

Текстуры в HL, а точнее в главной текстурной библиотеке halflife.wad названы не просто так. К примеру, слово «crate» или «crt» в названии текстуры означает, что это текстура ящика («crate» по-английски — ящик).

    «ground» или «grnd» — земля
    «water» или «wtr» — вода
    «fence» и «grate» — заборы и решетки
    «crate» или «crt» — ящики
    «wall» — стены
    «light» или «lgt» — лампочки или фонари
Мы советуем называть свои текстуры таким же макаром. Это позволяет значительно быстрее находить требуемый тип текстуры в больших *.WAD файлах. Кстати, наши создатели карт довольно часто называют текстуры, к примеру: Zabor, Voda, Doska, Doroga — так, по названию текстур, можно точно определить страну, родом из которой данный уровень :-)

Кроме данных слов есть эдакие префиксы (приставки из 2-3 символов), которые идут прямо перед именем текстуры. Данные префиксы определяют принадлежность текстуры к определённому типу. К примеру, префикс в виде восклицательного знака !, означает, что это текстура жидкости; если в начале названия стоит фигурная скобка {, то это текстура с маской, то есть частично прозрачная текстура, которая применяется для создания прозрачных заборов, деревьев и т.д.

Подробнее о типах текстур в Half-Life и CS мы рассказываем в следующем материале данной главы.


2. Декали

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

К сожалению, на своих уровнях нельзя использовать свои декали, а посему остается довольствоваться стандартными из файла decals.wad, хотя они не так уж плохи

Часть 4.2 Типы текстур в Half-Life и Counter-Strike
Часть 4.3 Как накладывать текстуры и декали?
Часть 4.4 Как сделать свой WAD-файл?
Часть 4.5 Как включить WAD-файл в карту?
Часть 4.6 Как сделать прозрачную текстуру?
Часть 4.7 Как извлечь текстуры из карты?
Часть 4.8 Светящиеся текстуры (создание RAD-файла)
Часть 4.9 Звучащие текстуры

   
Форма входа
Гость

Здравствуйте Гость! Пожалуйста зарегестрируйтель или зайдите под своим ником.biggrin
Поиск по сайту
Облако тегов
Тактика в CS 1.6
Опрос
Сколько Вам лет?
Всего ответов: 1375
Материалы
Comments: 49
Forum: 12/45
News: 6
Downloads: 250
Guestbook: 56
Кто онлайн

Онлайн всего: 1
Гостей: 1
Пользователей: 0
uCoz
При копировании материалов активная ссылка на world-cs.net обязательна © 2016