Пятница, 04.10.2024, 03:05
Приветствую Вас Guest | RSS
Главная страница | Статьи | Регистрация | Вход
Меню сайта

Случайный рисунок

Категории каталога
Туториалы по маппингу (HL2) [68]
Туториалы по маппингу для Half-Life
Туториалы по текстурированию (HL2) [10]
Туторы по текстурированию для Half-Life
Туториалы по моделированию (HL2) [9]
Туторы по моделированию для Half-Life
Туториалы по программированию (HL2) [53]
Туторы по прагроммированию для Half-life
Другие туториалы (HL1 и HL2) [4]
Туторы которые не вошли в другие категории
Half-Life 2 Beta [1]
Статьи о npc и weapon в бете Half-Life 2, а так же мануалы и FAQ.
Туториалы по маппингу (HL1) [14]
Туторы по маппингу для Half-Life 1
Туториалы по текстурированию (HL1) [1]
Туторы по текстурированию для Half-Life 1
Туториалы по моделированию (HL1) [1]
Туторы по моделированию для Half-Life 1
Туториалы по программированию (HL1) [30]
Туторы по программированию для Half-Life 1

Наш опрос
Оцените мой сайт
Всего ответов: 632

Начало » Статьи » Туториалы по текстурированию (HL2)

Создание материалов (текстур) для HL2/CS:Source.
Начнем с того, что понятие "текстуры" в “Source” было заменено на "материалы". Материал состоит из графического файла\файлов (в принципе той же текстуры) формата *.vtf и файла *.vmt, который содержит в себе описание свойств материала, о которых будет сказано ниже.
(*.VTF) - что скрывает в себе этот файл.
А скрывает он изображение TGA формата сжатое для потребления меньшего кол-ва видеопамяти. Чтобы создать материал для "Source" необходимо подготовить текстуру TGA формата с глубиной цвета 24 или 32bit, в зависимости от назначения будущего материала. Размер TGA файла должен быть обязательно кратным 2, а именно стороны текстуры могут иметь размеры значений: 16,32,64,128,256,512,1024 и т.д. Существуют и промежуточные значения кратные двум. Я перечислил самые "ходовые" из них.
(*.VMT) - это ТЕКСТОВЫЙ файл, в котором описаны СВОЙСТВА материала. Звук, издаваемый им при попадании пули, равно как и звуки шагов игрока. Прозрачность. То как материал будет отражать окружающие предметы (cubemap) и в каких областях изображения (envmapmask). Bump mapping (указывается файл карты нормалей [normal map] для текстуры).
Переходим непосредственно к теме тутора - созданию материалов. Для работы с TGA нам будет необходим Adobe Photoshop любой версии. Я использовал Photoshop CS (8й). Задача - сделать материал "гравий". Создайте в папке \\sourcesdk_content\cstrike\materialsrc директорию с именем test. Подберите подходящее изображения гравия, и сохраните из Photoshop`a (save as) указав формат .tga и глубину цвета - 24bit в вашу директорию папке \\sourcesdk_content\cstrike\materialsrc\test , назвав его gravy
Для конвертирования *.tga ---> *.vtf понадобится VTF плагин для Photoshop. Взять его можно здесь: http://nemesis.thewavelength.net/index.php?p=39 . После установки плагина в меню “save as” появится формат *.VTF. При сохранении для того чтобы оптимизировать качество выбираете из предустановленных настроек какого типа текстуру вы создали. То есть :

Compressed Texture - обычная текстура без альфы и не карта нормалей. Просто текса.
Compressed Texture With Alpha – эта делается из ТГАшки с альфа каналом для создания деколей или других видов материалов с прозрачными областями.
DuDv Map – не пригодится вам если вы читаете этот тутор
Generic (Default) – без сжатия.
Normal Map - карта нормалей, в простонародье - бамп.
Normal Map With Alpha – карта нормалей с альфа каналом.
Sky – если вы вдруг решите создать свой скайбокс.
Uncompressed Texture – без сжатия
Uncompressed Texture With Alpha – без сжатия с альфой.

В нашем случае выбор в пользу опции Compressed Texture.
Сохраняем текстуру в папку cstrike\materials\test под именем gravy.

Теперь чтобы движок принял наш материальчик ему нужно объяснить что мы ему скормим , как оно будет звучать, освещаться и т.п. Для этого создадим VMT файл к материалу. Воспользуемся программой vmtCREATE. Скачать ее можно здесь:
http://exgray.cs-mapping.com.ua/ima...l/vmtCREATE.rar

Программа ставится копированием содержимого архива в папку sourcesdk\bin
Первым запуском прога спросит пути к папкам materialsrc и materials соотв. :

укажите свои. Думаю знаете о чем речь.

Далее программа предложит сделать соответствующие настройки . Нам нужно выбрать тип материала LightMappedGeneric и свойство поверхности ($surfaceprop) – gravel

Теперь материал "гравий" в игре будет соответственно звучать, ну и в зависимости от исходного TGA выглядеть. ВСЕ доступные свойства материалов Вы можете найти во вкладке Surface Prop этой программы..

Следующий шаг. Создадим материал с эффектом BUMP MAPPING.
Придется скачать плюшку от nVidia для Photoshop которая позволяет открывать DDS файлы и делать из текстуры NormalMap. После чего в фотошопе в меню Filter появится подменю "nVtools".
Возьмем тот gravy.tga что использовался в предыдущем пояснении. Ему же и придадим объем.
Откройте gravy.tga в Photoshop и в меню "Filters" выберем"nVTools" - "Normal map filter".

В этом окне ВСЕ настройки за исключением полей "Alpha field" и "3D View options" отвечают за шкалу "объема" текстуры и регулируют высоту выпуклостей. С этим надо экспериментировать. Но наша задача создать, значит двигаемся далее. В поле "Alternate Conversions" отметьте точкой значение "Max RGB" и нажмите "Ok". Наш гравий преобразится и станет фиолетовых оттенков с уже видимым объемом. Сохраните результат в папку cstrike\materials\test с именем gravy_normal.
Открывайте в блокноте GRAVY.VMT и добавьте строку "$bumpmap" "proba/gravy_bump". Получим:

"LightmappedGeneric"

{
"$baseTexture" "proba/gravy"
"$surfaceprop" "gravel"
"$bumpmap" "proba/gravy_bump"
}

Сохраните. Готово! теперь запустив карту с этим материалом увидим объем на текстуре.

Эффект CUBEMAP (отражение мира)

Сделайте материал типа "стекло" (имеется ввиду изображение окна или чего то стеклянного) и откройте его файл *.vmt . Бампмэп ему не нужен. Добавьте строку:

"$envmap" "env_cubemap"

Для того чтобы на карте корректно в стекле отражалось окружение, нужно поставить неподалеку ентити "env_cubemap" и после компиляции в консоли игры набрать "buildcubemaps". Эта команда служит для просчета отражений в той ли иной части карты (считает столько cubemaps , сколько ентитей env_cubmap есть на карте). Информация о cubmap после этой команды записывается в BSP карты.

Материалы с эффектом прозрачности и альфа-канал в TGA.

Открываем в Рhotoshop текстуру, на которой создадим эффект прозрачности. Здесь нам поможет альфа-канал. Текстура: [window] Выделяем стекла - это будут прозрачные области. Теперь как показано на рисунке:

Переходим к вкладке "Channels" и жмем на кнопку создания альфы:

при выделении которое вы сделали на изображении нажмите Del, после чего увидите следующее:

. Сохраните это как cstrike\materials\test\window.vtf. Откройте его .VMT файл и приведите в такой вид:

"LightmappedGeneric"
{
"$baseTexture" "proba/okno"
"$translucent" 1
}

Если все сделали нормально, то теперь уже в HAMMERe увидите, что материал прозрачен там, где и было задумано!

Светящиеся материалы (SELFILLUM)

Принцип их создания и использования абсолютно такой же, как и для HL1. Но все же вкратце расскажу. Допустим у нас в cstrike\materials\test лежит материал svet.vtf
Создаете материал. в VMT добавляете строку "$selfillum" 1. Будет что-то типа:

"LightmappedGeneric"
{
"$baseTexture" "test/svet"
"$selfillum" 1
}

Открывайте файл lights.rad , который лежит в папке cstrike, и пишите там путь и параметры своей текстуры... На практике же просто добавляете строчку текста:
test/svet 255 255 255 40000 . С путем вопросов нет. А по цифрам слева - направо: интенсивность красного (255), интенсивность зеленого (255), интенсивность синего (255) оттенков, сила света (40000) - Это не максимум. Таким образом, варьируя значения интенсивности цветов, Вы можете задать материалу свет любого тона и насыщенности. С такими значениями (255 255 255 40000) свет белый, очень яркий.

-------
P.S.: Теперь, когда Вы умеете создавать материалы - создание спрайтов, текстур для моделей, в общем ГРАФИКИ движка Source уже не будет для Вас проблемой потому что все они так же представлены файлами *.vmt и *.vtf и базы TGA. Поизучайте оригинальные *.vmt файлы Half – Life 2, CSS и Вы увидите какие графические чудеса можно творить на Source.

Источник: http://cs-mapping.com.ua/forum/showthread.php?t=2292

Категория: Туториалы по текстурированию (HL2) | Добавил: DetLeR (13.05.2007) | Автор: s3rgun
Просмотров: 8449 | Комментарии: 8 | Рейтинг: 4.7 |

Всего комментариев: 8
8 Fireschokk  
0
фу автор позорник свою статью не мог сделать спиздил с другова сайта крыса

7 Я  
0
Could not save as (диретория сохранения) because image width is not a power of two это значит что разрешение твоей картинки не четное, тоесть не делится на 2. Должно быть или 128:128 или 512:512 и так далее

6 Антоха  
0
всё работает отлично! теперь ещё опишите пожалуйста процесс импорта своих шейдеров в движок игры,
например я могу написать код AO но как сделать чтобы его понимал сам движок??
я читал спецификацию движка, он вроде даже держит шейдеры 4.0
что мне для этого нужно?
напишите туториал по этому.

5 kostyl_headcrab  
0
У меня вылазит ошибка при сохранении фотошопом в формате .vtf. Плагин скачал, установил. Вот чё он мне пишет: Could not save as (диретория сохранения) because image width is not a power of two. Помогите плиз.

4 SpLat  
0
Аффтару респект!
А можно описать обратный процесс, как из .VTF вытянуть картинку?

3 VseOK  
0
Уменя при сохранении VTF нет такого, чтобы выбирать какую текстуру создавать. И при простом сохранении выдается ошибка.

2 DetLeR  
0
Незачто biggrin

1 GrecoLesPaul  
0
СПАСЯБА!!!!!!!! happy happy happy happy

Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Форма входа

Кто в Онлайн

Друзья сайта

Баннеры

  Сайт CrazyArts   Black   Сообщество сайтов о Half-Life   Самый   Только   Все   hl2 top 100     Rambler's Top100  

игры
игры

  Каталог сайтов Планета Топ 100 - Planet Top 100       ТОП ЛУЧШИХ ИГРОВЫХ САЙТОВ           Detroit Team Site :: Моды от Detroit Team, видео, новости.   Naruto-kun[Звезда Наруто]  


The idea of dising: Homie7