env_shooter
Описание
Объект env_shooter используется для запуска gib-объектов так, как если бы они вылетали из пушки. При этом gib-объекты могут вращаться в выбранном направлении и с выбранной скоростью. Gib-объекты могут быть спрайтами, физическими объектами или Ragdoll-объектами.
На основе этого объекта построен объект env_rotorshooter, но использовать его не рекомендуется.
Особенности использования
- Этот объект обновляется в каждом раунде. Это означает что любые изменения объекта НЕ будут наследоваться в последующих раундах.
- Объект должен быть установлен там, где будет использоваться.
- На карте может быть установлено множество этих объектов
Ошибки
Не обнаружены.
Заметки
Анимация движения gib-объектов может быть не очень гладкая. Это результат оптимизации игры CS:S для режима On-Line и ограничения сетевого трафика для игроков.
Каждый движущийся по карте объект создаёт не малый сетевой трафик, а при перегруженной карте сервер просто не справится с исходящим потоком, либо у всех игроков начнутся неимоверные лаги. Тесты показали, что если каждую секунду создавать по 50 gib-объёктов, то сетевой трафик может превысить 30 Кбайт/сек, а число входящих пакетов превысить 1000! Это очень много и создаёт огромную нагрузку на сервер. Проверить клиентский трафик вы можете выполнив в консоли команду "net_graph 2".
Объект env_shooter может успешно применяться для клонирования других объектов, наподобие того, как это делают объекты env_entity_maker и point_template.
Параметры
- World Model – имя файла MDL-модели, которая будет использоваться в качестве основы для внешнего вида объекта (выбирается в окне Model Browser);
- Simulate – модель столкновений gib-объектов с окружающим миром;
- Point – модель столкновений рассчитывается как точка; нужно использовать если в качестве gib-объекта используется какой-нибудь *.VMT материал;
- Physics – выбирается модель столкновений указанного файла "Model"; нужно использовать если в качестве gib-объекта используется какая-нибудь *.MDL модель, подходящая для объектов prop_*;
- Ragdoll – выбирается Ragdoll-модель столкновений указанного файла "Model"; нужно использовать если в качестве gib-объекта используется какая-нибудь *.MDL модель, подходящая для объектов prop_ragdoll;
- Gib Gravity Scale – изменить гравитацию для gib-объектов; 1 – нормальная гравитация; 4 – гравитация в 4 раза выше нормальной и т.д.; используется только если свойство "Simulate" равно "Point";
- Material Sound – материал, который будут иметь gib-объекты; используется для озвучивания столкновений gib-объектов с другими объектами или стенами на карте; используется только тогда, когда свойство "Simulate" равно "Point" или "Physics";
- Gib Direction (Pitch Yaw Roll) – направление полёта gib-объектов;
- Gib Direction Variance – на сколько сильно может быть изменено направление полёта gib-объектов при каждом выстреле (от 0.0 до 1.0); 0 – все gib-объекты будут лететь строго в направлении, указанном в свойстве "Gib Direction"; 0.5 – направление полёта очередного gib-объекта может быть отклонено на 45 градусов от направления "Gib Direction" и т.д.;
- Gib Angles (Pitch Yaw Roll) – gib-объекты перед выстрелом будут повёрнуты на эти углы; используется только если свойство "Simulate" равно "Point" или "Physics";
- Number of Shots – количество выстрелов в очереди;
- Delay Between Shots – задержка между каждым выстрелом в очереди (секунды);
- Gib Life – время жизни gib-объектов (секунды); это время указывается не точно и может отличаться для каждого gib-объекта примерно на +/- 5%;
- Gib Velocity – скорость, прикладываемая к gib-объектам при каждом выстреле;
- Gib Angular Velocity – как быстро будут вращаться gib-объекты при выстреле (градусов в секунду); gib-объекты будут вращаться по осям X и Y со скоростью от 10% до 100% от этой скорости; используется только если свойство "Simulate" равно "Physics";
- Render Mode – режим рендеринга объекта;
- FX Color (R G B) – цвет объекта;
- FX Alpha (0-255) – прозрачность объекта; 255 – полностью не прозрачен; 0 - полностью прозрачен; не используется если свойство "Render Mode" равно "Normal" или "Don’t Render";
- Render FX – эффект рендеринга объекта; например: мигание, плавное появление/исчезновение и т.п.;
- Disable Shadows – отключить динамические тени, отбрасываемые этим объектом (Нет/Да);
- Lighting Origin – имя любого объекта на карте, в точке которого будет измеряться освещённость этого объекта; как правило, используется точечный объект, например – info_target; например: этот объект находится в светлом помещении, а точка "Lighting Origin" находится в тёмном помещении; несмотря на то, что этот объект находится в светлом помещении, он будет иметь освещенность тёмной комнаты; если переместить объект "Lighting Origin" из тёмной комнаты в светлую – освещённость этого объекта тоже изменится;
- Minimum DX Level – запретить размещение этого объекта на карте при компиляции карты на компьютере, уровень аппаратной поддержки видеокарты которого ниже этого значения; используется только компилятором VBSP в процессе компиляции карты;
- Maximum DX Level – запретить размещение этого объекта на карте при компиляции карты на компьютере, уровень аппаратной поддержки видеокарты которого выше этого значения; используется только компилятором VBSP в процессе компиляции карты.
Флаги
- Repeatable – объект можно будкт использовать неоднократно;
- On Fire – поджигать огнём gib-объекты; gib-объекты будут гореть на протяжении всего времени "Gib Life"; не используется если свойство "Simulate" равно "Ragdoll";
- Remove Gibs After 'Gib Life' – удалять gib-объекты по истечении времени "Gib Life"; ВНИМАНИЕ! если установлен флажок "Repeatable", то всегда устанавливайте этот флажок; если не установить этот флажок – это может привести к краху игры либо увеличению нагрузки на сервер.
Inputs
- Shoot – начать очередь "выстрелов";
- Color <R G B> - установить новое значение свойства "FX Color"; gib-объекты, созданные до вызова этой функции, не изменят свой цвет;
- Alpha <integer> – (от 0 до 255) установить новое значение свойства "FX Alpha"; gib-объекты, созданные до вызова этой функции, не изменят своей прозрачности.
Карта
- 1) csssdk_env_shooter.vmf
- 2) csssdk_env_shooter_2.vmf
Используются объекты
- 1)
- env_shooter
- logic_timer
- logic_case
- 2)
- env_shooter
- logic_timer
- func_detail
- prop_static
- info_lighting
- env_cubemap
- game_ragdoll_manager
Описание карты
На карте установлены две невидимые пушки. Одна стреляет разноцветными спрайтами, а другая разноцветными огненными бочками. Первый объект logic_timer "стреляет" из объектов env_shooter каждые 4 секунды. Второй объект logic_timer при помощи объекта logic_case изменяет цвет новых gib-объектов. Вылетевшие из пушек спрайты и бочки засеивают всю карту и каждый из них удаляется через некоторое время. Обратите внимание, как влияет удвоенная гравитация на спрайты из первой пушки.
На карте возведено некое подобие трубы, внутри которой появляются Ragdoll-объекты при помощи объекта env_shooter. Объект logic_timer "стреляет" из объекта env_shooter каждые 2-4 секунды. Появляющиеся Ragdoll-объекты падают на дно трубы. При помощи объекта game_ragdoll_manager контролируется максимальное количество Ragdoll-объектов, которое одновременно может находиться на карте. Если вы упадёте на дно трубы, лестница поможет выбраться вам от туда. Обратите внимание, что когда в зоне видимости игрока находятся максимальное количество Ragdoll-объектов, разрешённое на карте, вновь созданные Ragdoll-объекты будут сразу же исчезать в момент создания. Это сделано для того, чтобы объекты не исчезали прямо на глазах игроков.
Трупы игроков не являются Ragdoll-объектами и контролируются сервером, поэтому действия объекта game_ragdoll_manager на них не распространяется.
Если Вам понравилась эта страница, Вы можете разместить где-нибудь ссылку на неё: