Главная
Новости
Статьи
Ссылки
Гостевая книга
Форум
Почта:
Прочее
Общая информация
Предыстория
Оружие
Кадры из игры
Концепт-арт
Скачать
Инструменты
Авторы проекта
Указатель объектов
 Объекты из HLRA:
  Вещи
  Монстры
  Оружие
Юмор в картинках

light_environment — объект-источник света от неба на карте Half-Life и его модов

Обновлено 14.02.2014

light_environment — настройки света от неба. Этот свет представляет собой параллельные лучи от бесконечно далёкого светила на небе, освещающие всё под небом. Куб небосвода (skybox) проецируется на любые грани, окрашенные текстурой sky, но свет будет излучаться гранями только тех блоков, на которых текстура sky наложена со всех сторон. Положение на карте объекта light_environment не существенно, тут главное, чтобы этот объект не попал внутрь стен. И он часто ставится рядом с местом старта игрока, чтобы не потерялся. К сожалению или к счастью, если поставить на карте больше одного объекта light_environment, то второй и остальные будут игнорироваться при расчёте освещения компилятором hlrad (но возможно существуют какие-то другие компиляторы, которые могут учесть двойное освещение от неба, как в инопланетных мирах с двойными звёздами).

Параметры:
  • Name/Имя/targetname (string) — имя для обращения к нему других объектов,
  • Pitch Yaw Roll (Y Z X)/angles (string) — угол наклона вверх (но нам важнее отрицательный — вниз, как от любого нормального светила на небе), угол направления (азимута) и угол крена в градусах. По умолчанию параметр =0 0 0, т. е. светит вдоль оси X, но если небо, как у вас вверху, то Угол наклона (Pitch)
    от –90, когда светит сверху вниз, до 0 вдоль горизонта. Причём чаще всего выбирается где-то –60 – –80 градусов. В простейшем случае выставляется =-70 0 0 и вы будете уверены, что свет сверху упадёт на карту. Подробнее настраивать можете как вручную, так и с помощью проверочной карты-транспортира с размеченными углами для падения лучей, о которой прочитать и скачать можно на этой странице.
  • Brightness/Цвет и яркость/_light (color255) — Яркость света от светила. По умолчанию первых три числа, отвечающие соответственно за Красную, Зелёную и Синюю компоненту целые в диапазоне от 0 до 255, а последнее число — это сама яркость, которая может иметь целое значение от 0 до 65535, но чаще всего от 10 до 300. По умолчанию все четыре числа выставлены 255 255 128 200, что соответствует освещению от в меру яркого жёлтого солнца.
  • добавлено в ZHLT:
  • Diffuse light/Рассеянный свет/_diffuse_light r g b — задаёт цвет и интенсивность рассеянного освещения, то есть света от неба, а не от светила. Иначе говоря, параметр позволяет задать отдельный цвет для рассеянного света на карте, задаваемого объектом light_environment, и точнее имитировать освещение настоящего мира (жёлтое солнце, синее небо). Это параметр должен быть полностью обратно совместим со старыми картами — если нет параметра _diffuse_light, то используется интенсивность от стандартного параметра _light. Естественно четыре числа здесь отвечают за красную, зелёную, синюю компоненту и общую яркость. С его яркостью, друзья, нужно быть осторожными! Выставляйте последнее число, отвечающее за яркость, небольшим, например, 100 100 255 10, и у вас освещение неба не станет всё заливать слепящим текстуры светом, ведь кроме этого параметра у вас ещё есть яркость основного светила со значением под сотню-две.
  • ZHLT Fade/ZHLT Гашение/_fade (string) — дробный множитель, отвечающий за усиление или ослабление освещения. В отличие от локальных источников света изменять гашения лучей не очень эффектно, проще яркость настроить. По умолчанию единица 1.0.
  • ZHLT Falloff/ZHLT Ослабление/_falloff — 3 значения на выбор: простое распространение лучей, обратнолинейное или обратноквадратичное ослабление. Но опять же не очень эффектно обычное значение менять на обратнолинейное или обратноквадратичное ослабление, ведь источник света бесконечно удалён от нас. По умолчанию простое распространение лучей Default.




Текст для файла .fgd:

@PointClass base(Targetname, Angles, ZHLT_point) iconsprite("sprites/lightbulb.spr") = light_environment : "Environment"
[
pitch(integer) : "Pitch" : 0
_light(color255) : "Brightness" : "255 255 128 200"
_diffuse_light(color255) : "Diffuse light" : "90 160 255 15"
]


Этот код-сценарий подразумевает, что в папке вашего редактора Hammer должна быть папка sprites со спрайтом lightbulb.spr.
sprites\lightbulb.spr
Часто это чёрно-белое изображение лампочки (синий фон не прорисовывается), которое окрашивается в цвет, заданный светилу на небе:

Если этого спрайта у вас нет, то скачайте lightbulb.spr здесь. А если вам больше нравится видеть этот объект не как лампочку, а в виде кубика, то можете удалить текстовый параметр iconsprite() в описательном сценарии fgd, тогда останется текст:

@PointClass base(Targetname, Angles, ZHLT_point) = light_environment : "Environment"
[
pitch(integer) : "Pitch" : 0
_light(color255) : "Brightness" : "255 255 128 200"
_diffuse_light(color255) : "Diffuse light" : "90 160 255 15"
]


А для русифицированного fgd будет:

@PointClass base(Targetname, Angles, ZHLT_point) iconsprite("sprites/lightbulb.spr") = light_environment : "Освещение от неба"
[
pitch(integer) : "Наклон" : 0
_light(color255) : "Цвет и яркость" : "255 255 128 200"
_diffuse_light(color255) : "Рассеянный свет" : "90 160 255 15"
]


На упомянутой карте-транспортире можно уточнить угловое положение падения света от неба — те самые три угла, вернее первые два из них. Для этого нужно смотреть направление между точкой наверху возвышаюшегося угла из стен
тестовая карта skylight для теста угла освещения в Half-Life 1
и тени этого угла, спроецированного на пол лучами освещения от неба:
карта skylight для уточнения угла освещения на карте в Half-Life 1
И сравнить направление с существующими лучами, углы к которым подписаны спрайтами.
Half-life Red Alert Xpantion
Presented by HLRA team
Счетчик посещений Counter.CO.KZ - бесплатный счетчик на любой вкус!
Hosted by uCoz