Sidebar

Извращенский бамп-мэппинг на основе детальных текстур в Counter-Strike 1.6

  • Рекомендуется задавать вопросы только относительно темы с уроком. Для остальных вопросов существует раздел [url=/forums/pomosch.12/]«Помощь»[/url].

    Темы с просьбами помощи будут удаляться без предупреждения и без объяснения причины.

    Запрещается поднятие старой темы оффтопом. Ваше сообщение будет удалено, а в профиль будет выписано замечание.
Статус
Закрыта

HoRRoR

...
05.01.2006
4 593
7
38
Извращенский бамп-мэппинг на основе детальных текстур в Counter-Strike 1.6

Извращенский бамп-мэппинг на основе детальных текстур в Counter-Strike 1.6 :demon:

Не буду объяснять, что это за такие текстуры, вы все наверняка итак знаете. Единственно, что скажу в предисловии, так это как в CS они работают.
Во время создания сервера, игра смотрит файл cstrike/maps/<имя карты>_detail.txt, в котором указываются, на какие текстуры будут накладываться так мною называемые бамп-карты, которые имитируют неровную поверхность на брашах. Содержимое /<имя карты>_detail.txt выглядит примерно так:

CastSign1 detail/dt_wood1 10.0 10.0
CastSign1b detail/dt_wood1 10.0 10.0
CastSign2 detail/dt_wood1 10.0 10.0
CastSign3 detail/dt_wood1 10.0 10.0

Первая колонка – название текстуры, на которую накладывается бамп-карта
Вторая – путь к самой бамп-карте, (прим.: корневая папка для бамп-карт cstrike/gfx, далее путь указывается в .txt файле)
Третья и четвертая – маштабирование (по осям X и Y соответственно, к тому же число 10.0 указывает, что бамп-карта будет наложена на текстуру с уменьшением в 10 раз)

С имитированием бамп-мэппинга выглядит немножко иначе:

frieze_01 bumpmap/de_dark_dust2/BM_frieze_01 1.0 1.0
pavestone bumpmap/de_dark_dust2/BM_pavestone 1.0 1.0
pavestone_ornam bumpmap/de_dark_dust2/BM_pavestone_ornam 1.0 1.0
sandstone_01 bumpmap/de_dark_dust2/BM_sandstone_01 1.0 1.0

1.0 обозначает, что бамп-карта будет наложена на текстуру без масштабирования.




Технология создания:

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

Понадобятся программы:
CrazyBump (для начала, для нормального создания нужен будет Adobe Photoshop с специальным плагином, но обойдёмся пока CrazyBump’ом)
FotoCanvas (из комплекта ACDSee)

0. Делаем карту.
1. Сохраняем наши текстуры в tga формате (т.к. имеют наилучшее качество)
2. Открываем в CrazyBump нашу текстуру, химичим до получения лучшего результата.
3. Жмём сохранить в файл и называем например BM_texture_01.tga, далее CrazyBump нам больше не понадобится.
4. Открываем полученную фиолетовую текстуру в FotoCanvas 3.0 и проводим такие операции:
4.1 Ctrl+T – обратить цвета, а получится так, что текстура выгнулась в нужную нам ориентацию
4.2 Ctrl+3 – глубина цвета - оттенки серого
4.3 Сохраняем
5. Теперь нужно разместить нашу бамп-карту. Идем в cstrike/maps/<имя карты>_detail.txt и прописываем:
testtexture bumpmap/BM_texture_01 1.0 1.0
Потом идём в cstrike/gfx/bumpmap/ и копируем сюда BM_texture_01.tga


ВСЁ!

Примечание: если понадобится, отредактируйте полученную бамп-карту таким образом, чтобы при наложении она не осветляла текстуру, а то будет неприятным образом действовать на глаз. Нейтральный цвет 128 128 128, цвета выше – осветляют, ниже – соответственно затемняют.
Вместо FotoCanvas 3.0 можно использовать любой другой графический редактор, просто этот делает все быстро и просто.

Также можно уменьшить размер текстур в два раза, тогда придётся в .txt прописать (это позволит сэкономить место под текстуры):
testtexture2 bumpmap/BM_texture_02 0.5 0.5

автор: HoRRoR (я то есть :) )

_____________
UpDate:
На CS должен стоять патч не ниже 21-го
Скачать CrazyBump
 
Последнее редактирование:

tzara

Administrator
Команда форума
Администратор
18.02.2006
11 667
23
HoRRoR сказал(а):
Извращенский бамп-мэппинг на основе детальных текстур в Counter-Strike 1.6 :demon:

Не буду объяснять, что это за такие текстуры, вы все наверняка итак знаете.
Неа%)
 

sqwosh

уныл-унылыч
Команда форума
Супер Модератор
Спонсор
21.04.2006
3 568
31
73
48
Киев
  • Инкогнито-друг CSM
жесть способ =)
респект автору :drink:
 

FuLL_NuLL

Guest
F
Отличный тутор, если у меня получится реализовать вышесказанное, то огромный респект автору!

Правда, возник вопрос: влияет ли такая процедура на количество поликов?
 
VIP
12.08.2004
18 877
462
83
  • Бронзовая медаль 103
  • Деревянный домик Скааржа
  • Серебряная медаль 213
  • Золотая медаль 136
  • Бронзовая медаль 141
  • Серебряная медаль 125
  • Золотая медаль 221
  • Золотая медаль 213
  • Золотая медаль 232
  • Серебряная медаль 132
Да, почти как в Анриле, только немного недоработанная.
Уже давно такая технология в КС1.6.
На кол-во поликов не влияет, разве что фпс немного опустит.
 

HoRRoR

...
05.01.2006
4 593
7
38
2 SlayerR:
Детальные текстуры представляют собой картинки в серых тонах, которые накладываются на текстуры для достижения иллюзии шероховатости на плоскости. Серый цвет - нейтральный, чем оттенок выше, тем пиксель будет осветляться, чем темнее - тем сопстна и пиксель темнее. А вобще, почитай Февральскую Игроманию.

Подумав, добавил:

2 Skaarj:
на 8800 не опускается:), а вобще на проце в 1.2 опустился на 2-4 фпс
 
Последнее редактирование:

tzara

Administrator
Команда форума
Администратор
18.02.2006
11 667
23
Skaarj сказал(а):
Да, почти как в Анриле, только немного недоработанная.
Уже давно такая технология в КС1.6.
На кол-во поликов не влияет, разве что фпс немного опустит.
Ааа,ясно,:)Кстати,очень хооршо реализовано в Аркс Фаталис:)
 

tzara

Administrator
Команда форума
Администратор
18.02.2006
11 667
23
FuLL_NuLL сказал(а):
- плин, а что там? журнала не было у меня, так что если что надо бы взять... оффтоп//
На сайте есть:)
З.Ы :agy:
 

Вложения

  • 4.6 КБ Просмотров: 626
Статус
Закрыта

Game Server

Доноры Красавчики

Пользователи онлайн