В
Source имеется возможность создавать сложные по своему звучанию звуковые схемы, типа эмбиента, разговоров НПЦ и прочих звуковых событий, состоящих из микса нескольких звуков, сопровождающихся различными эффектами и т.п. Эти звуковые схемы находятся в файлах-скриптах - в них описаны последовательность и тайминг для звуков, DSP-эффекты, которые накладываются на звуки и т.п.
Практически весь эмбиент-звук на CSS- и HL2- картах, за редким исключением, использует эту скриптовую озвучку.
В этом туторе речь пойдет об
env_soundscape, с помощью которого осуществляется добавление скриптового звука на карту и управление звучания разных звуковых схем в процессе игры.
-
Soundscape представляет собой триггер, который, при активации игроком, запускает соотвецтвующую звуковую схему из скрипта. Эта схема будет звучать из сотвецтвующих мест на карте локально для включившего ее игрока.
-Когда игрок попадает в радиус
soundscape, или активирует его через триггер,
soundscape запускает указанную в нем звуковую схему.
-Звук будет исходить с позиций
entity-объектов, чьи имена указанны в
soundscape в параметре
position (чаще всего используются
info_target, установленные в необходимых местах).
-Одновременно игрок может слышать только одну звуковую схему- каждый новый активированный
soundscape отключает предыдущую звуковую схему и включает свою (при этом предыдущая звуковая схема плавно затухает, а новая - плавно запускается).
-Важно, что игрок не может активировать
soundscape, находясь в его радиусе, если
soundscape не находится в зоне видимости с позиции игрока (ака спрятан за препятствием)
-Все параметры, касающиеся непосредственно звука (скорость, время, эхо, громкость и т.п.) описываются в скрипте, и не имеют отношения к
soundscape.
-Размещать
soundscape лучше всего на границах игровых зон- например по две штуки с разных сторон дверных проемов и т.п., чтобы включать/выключать эмбиент для соотвецтвующих помещений.
ВАЖНО!soundscape не является глобальным, т.е. звук будет слышать только тот игрок, которым был запущен данный
soundscape.
По сути,
soundscape является индивидуальной эмбиент-озвучкой для игрока, поэтому не стоит пытаться делать через них глобальное оповещение для игроков в мультиплеере, или что-то подобное.
-Далее приведены основные параметры
soundscape, которые позволят его использовать в большинстве обычных случаев, и ряд сопутствующих им ньюансов.
-
radius –радиус, в котором игрок активирует данный
soundscape.
-Радиус = -1, считается бесконечным, в этом случае
soundscape активируется, как только станет видимым для игрока.
-
soundscape –имя звуковой схемы из скрипта
…/сstrike/scripts /soundscapes_*.txt.-под CSS движок «понимает» названия звуковых схем из стандартных карт CSS (dust, office и т.п.), но «не понимает» из HL2. Чтобы добавить
свои звуковые схемы, надо записать их в файл
…/сstrike/scripts /soundscapes_»название карты».txt.-
position 0-7 –имена
entity, позиции которых будут использоваться в качестве источников звука (8 штук).
-Для разных источников звука необходимы уникальные имена (несколько
info_target с одинаковым именем - не прокатит).
На офф-сайте по СДК есть списки стандартных звуковых схем с офф-карт CSS.
http://developer.valvesoftware.com/...ry:Sound_SystemТам же, разумеется, можно узнать, как составлять
свои звуковые схемы.
Я же составляю их просто- списываю звуковые схемы их скриптов HL2 и модифицирую их под
свои нужды…)
Автор: Gnom