Школа Counter-Strike - Часть 4.8 Светящиеся текстуры (создание RAD-файла)

Мир Counter-Strike

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


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

Часть 4.8 Светящиеся текстуры (создание RAD-файла)

Всякая текстура в HL и CS может испускать свет. Но для этого она должна быть записана в *.RAD файле (файл текстового типа). Этот файл необходимо подключить при компиляции. О создании такого RAD-файла и пойдет речь в данном материале.

Зачем нужны светящиеся текстуры?

Как нам кажется, следующее изображение наглядно демонстрирует «зачем»:

Разница между использованием светящихся текстур (слева) и объекта light


Как видно из картинки, светящаяся текстура делает лампу как бы в самом деле включенной. А вот если использовать простой источник света — энтити-объект light, то стороны лампы получаются тёмными.

Заметим попутно, что есть ещё один способ заставить энтити-объект светиться. Только при этом он совершенно не будет излучать свет, а просто будет ярким. Значительным преимуществом этого метода перед светящимися текстурами является весомая экономия времени компиляции.

Как это работает: превратите лампу в какой-нибудь брашевый энтити-объект: func_wall, func_illusionary и т.п. и выставьте параметр Minimum light level (бывает встречается _minlight) в значение отличное от нуля, к примеру: 0.7. Теперь лампа будет светиться, хоть и не излучать свет. Около лампы необходимо будет создать простой источник света light или light_spot, так как, повторимся, сама она свет не испускает.

Примечание! Чтобы использовать выше описанный метод, у вас должна быть свежая версия *.FGD файла — 0.7.7 и выше) и утилиты Зонера 2.5.3 и выше.

Возвращаясь к нашим бар... эм, светящимся текстурам :-), скажем что их можно использовать вместо обычных источников света, лампочек (light и light_spot), только делать это надо аккуратно и особо не увлекаться, ибо чревато большим временем компиляции.

Свет, испускаемый светящимимся текстурами, более реалистичен, чем при использовании вышеупомянутых энтитей. Недостатком светящихся текстур является ограничение на их использование: на одном объекте не может быть больше 8 различных светящихся текстур, также ОЧЕНЬ не рекомендуется использовать много таких текстур в уровне, так как для расчёта освещённости потребуется больше оперативной памяти и соответственно увеличится время компиляции. Кстати, при компиляции карты со светящимися текстурами неправильно отображается количество источников света. Их может быть написано, к примеру, 1325, тогда как реально их сделано не более 15. Вина лежит на светящихся текстурах.

RAD-файл представляет из себя простой текстовый файл, имеющий расширение *.rad. Давайте рассмотрим синтаксис данного файла.

    +0~GENERIC25 255 255 255 120
    +0~GENERIC15B 60 220 170 6800
    EMERGLIGHT 255 200 100 65000
Тут всё просто. Каждая светящаяся текстура описывается в отдельной строке. В начале идет полное имя текстуры, к примеру, EMERGLIGHT, затем в 3-х последующих числах устанавливается цвет испускаемого света в формате RGB (Красный Зелёный Синий). Его можно подобрать в любом графическом редакторе, хотя бы в простом Paint Brush. После трёх чисел цвета ставится еще одно число, обозначающее яркость света. Яркость определяется не так, как для объектов light или light_spot. Как видите, она может быть и 100 и 50000 и даже больше.

При определении яркости руководствоваться стоит размерами текстуры. К примеру, текстура с размерами 16 х 16 и текстура с размерами 256 х 160 при одинаковой яркости будут излучать разное количество света. Если нужно, чтобы небольшая текстура (к примеру, лампочка) освещала всю комнату, то нужно выставлять довольно большие значения яркости (десятки тысяч). Для создания простой светящейся рекламы подойдет небольшое значение (100-200).


Как подключить rad-файл при компиляции?

По умолчанию программа-компилятор HLRAD.EXE использует информацию о светящихся текстурах из файлов lights.rad и название_карты.rad. Таким образом, чтобы текстура в игре излучала свет, необходимо создать rad-файл с названием карты (к примеру, если уровень называется 123my.map, тогда rad-файл нужно назвать 123my.rad), записать в него названия текстур, подобрать для них цвет света и его яркость и поместить rad-файл в папку к компиляторам. Всё! Дополнительно ничего делать не требуется, то есть не надо дописывать к компиляторам какие-либо параметры, они сами найдут этот файл по имени.

Если вы всё-таки дадите другое имя RAD-файлу другое, то здесь уже придется указать компилятору HLRAD.EXE имя RAD-файла. Делается это при помощи параметра -lights. Пишем: -lights название_файла.rad. Но обязательно RAD-файл должен быть в одной папке с утилитами ZHLT.


Часть 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
Опрос
Что вы предпочитаете из списка ниже?
Всего ответов: 819
Материалы
Comments: 49
Forum: 12/45
News: 6
Downloads: 250
Guestbook: 56
Кто онлайн

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