Лампа с динамическим светом
К большому сожалению в CS:Source отсутствует полноценная физика, поэтому привязать к проводу(move_rope) модель не получится, всвязи с этим появляются вопросы - как сделаны лампы на карте de_prodigy?


Всё просто - сам провод уже находится в модели. Всё вроде-бы понятно, но вот беда - через точечную энтити phys_lengthconstraint лампа некрасиво подпрыгивает если её задеть... как это обойти читайте ниже:

1) Для начала создадим саму лампу через точечную энтити prop_physics_multiplayer и изменим следующие параметры в свойствах(выберите объект в 3D view и нажмите ALT + ENTER):

"name"="любое_имя"(я назвал "lamp1")
"Disable shadows"="yes"
"World Model"="models/props/de_prodigy/lighthanging.mdl"

2) Теперь для того чтобы лампа не упала мы создадим для неё ось при помощи точечной энтити phys_ballsocket, которую надо поместить под самый потолок (иначе лампа будет неправдоподобно выглядеть), и "привязать" к нашей лампе. Заходим в свойства энтити phys_ballsocket и пишем в поле "Entity 1" имя лампы(я написал "lamp1")

3) Теперь создадим лучи света, благо VALVe сделала отдельную точечную энтити для такого дела и нам не придётся мучиться с env_sprite'ами. Находим точечную энтити point_spotlight и ставим прямо в модель(иначе видно как "обрубается" спрайт сверху), изменяем следующие параметры в свойствах:

"Parent"="lamp1"
"Pitch Yaw Roll (Y Z X)"="90 0 0"(при такой комбинации лучи света будут направлены вниз)
"Spotligt Width"="80" ("ширина" лучей, оптимальный вариант для данной лампы)

Дальше идём в закладки "Flags" И ставим галку напротив "No Dynamic Light"(откровенно говоря этот свет уродский, плюс ко всему довольно сильно загружает систему ... уберём его)
Всё. Лампа висит, мы радуемся, но вот уж больно скучно она висит... Правильно, нужно добавить динамический свет, то, чего так не хватает лампам на мапе de_prodigy, но как сделать так чтобы свет двигался вместе с лампой? Об этом читайте ниже:

4) Создаём точечную энтити light_dynamic, в свойствах изменяем:

"Parent"="lamp01"("привязываем" к лампе свет)
"Pitch Yaw Roll (Y Z X)"="90 0 0"(свет направлен вниз при начальном состоянии)
"Light Brightness"="3"(очень важный параметр, от которого напрямую зависит будет свет или нет, чем больше значение, тем ярче)
"Maximum distance"="300"(тут всё зависит от того, как высого вы повесили лампу, при выборе light_dynamic в окнах проэкции вы увидите некую сферу:

Это есть граница света. Возьмите квадратик исходящий от сферы и потягайте так чтобы грани его касались пола, иначе вы не увидите свет.)
"Spotlight end radius"="значение_примерно_равное_половины_значения_Maximum distance"

У вас должно получиться похожее:


Источник: f0zZy

Автор: f0zZy

CMT (CS Mapping Tutorials) - © 2006-2011+. Created by VM
[ Script Execution time: 0.0048 ]