Point spotlight

Материал из CSM Wiki
Перейти к навигации Перейти к поиску

Оригинал Lighting, Point spotlight

Описание

Объект point_spotlight используется для создания эффекта видимого светящегося луча света, создающего представление о том, что свет исходит из направленного источника освещения.

Особенности использования

  • Этот объект обновляется в каждом раунде. Это означает что любые изменения объекта НЕ будут наследоваться в последующих раундах.
  • Объект должен быть установлен там, где будет использоваться.
  • На карте может быть установлено множество этих объектов
  • Для отображения динамического света от этого объекта, необходимо чтобы в направлении "Pitch Yaw Roll" расстояние между этим объектом и какой-либо Brush-поверхностью было не больше чем значение свойства "Spotlight Length". Brush-поверхность так же должна иметь модель столкновений, иначе динамический свет не будет отображаться. Чем больше значение свойства "Spotlight Length", чем расстояние от этого объекта до Brush-поверхности, тем тусклее будет светить динамический источник освещения.

Ошибки

Если прикрепить этот объект к какому-либо другому объекту через свойство "Parent" (родитель), то луч света от этого объекта будет следовать за родителем, но при этом будет НЕ точно повторять за ним движения, отставая примерно на пол секунды. При вращении (но не перемещении) родителя, точка в которую "смотрит" объект point_spotlight может либо вообще не обновляться, либо обновляться, но с различимыми задержками. Это может привести к тому, что луч света сильно растянется и будет отображаться не в нужном направлении. Это особенность отображения луча света в движке Source.

Заметки

Нет отдельного свойства для изменения яркости свечения этого объекта. Чтобы изменить яркость просто уменьшайте интенсивность цветов. Например: "FX Color" = "255 255 255" – это максимально яркий белый свет, а "128 128 128" – это тоже белый свет, только в два раза тусклее чем "255 255 255".

Параметры

  • Pitch Yaw Roll (Y Z X) – направление луча света;
  • Spotlight Length – длина луча света;
  • Spotlight Width – (от 0 до 102.3) ширина луча света;
  • FX Color (R G B) – цвет луча света;
  • HDR color scale – интенсивность свечения луча в режиме HDR; 1.0 – интенсивность такая же как в режиме LDR; 0.5 – половина интенсивности режима LDR.

Флаги

  • Start ON – активировать в начале раунда; если у объекта нет имени, то этот флажок устанавливать обязательно, потому что иначе объект нельзя будет никак включить.
  • No Dynamic Light – выключить динамический свет от объекта; рекомендуется всегда устанавливать этот флажок, и вместо этого динамического источника освещения использовать объект light_dynamic.

Inputs

  • LightOn – включить объект;
  • LightOff – выключить объект;
  • Color <R G B> - изменить цвет луча света; чтобы изменения вступили в силу необходимо выключить и снова включить объект функциями "LightOff" и "LightOn".

Карта

csssdk_point_spotlight.vmf

Используются объекты

  • point_spotlight
  • prop_physics_multiplayer
  • phys_ballsocket
  • light_spot
  • light_dynamic
  • logic_auto
  • ambient_generic

Описание карты

Карта выполнена в ночном стиле, чтобы лучше было видно лучи света.

На карте повешено несколько объектов point_spotlight с различными настройками. В первом ряду у всех объектов point_spotlight включено динамическое освещение, благодаря чему под ними отображаются световые пятна. Обратите внимание каким образом были выбраны для этих объектов свойства "Spotlight Length". В этом свойстве указано чуть большее расстояние чем от этих объектов до земли. Если указать значение свойства "Spotlight Length" ниже или равным чем расстояние до земли, то динамический свет от объектов point_spotlight не будет отображаться. А если указать расстояние значительно больше чем расстояние до земли, то это приведёт к тусклому свету от динамических источников освещения.

В дальнем конце карты на потолке подвешено три объекта prop_physics_multiplayer в виде ламп. Эти объекты демонстрируют различные способы освещения окружения вокруг себя.

Первая лампа неподвижно висит в воздухе и для неё установлен объект point_spotlight, создающий впечатление что лампа светит. На полу под лампой виден свет от динамического источника освещения. Эта конструкция является наглядным примером того, как ни в коем случае нельзя ставить на карте источники освещения. Динамически источник освещения создаёт высокую нагрузку на видеокарту и даёт плохое освещение.

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

Третья лампа так же как и вторая может расшатываться от выстрелов, но в отличие от второй лампы, на этой для освещения окружения используется объект light_dynamic. light_dynamic хоть и создаёт более высокую нагрузку на видеокарту, чем light_spot, зато даёт очень хороший результат. Получаемый результат сильно зависит от настроек объекта light_dynamic.

Раскачайте вторую или третью лампу, встаньте от этих ламп сбоку и тогда можно будет увидеть как "отстают" объекты point_spotlight от движения ламп.

Смотрите также