Описание
Объект func_smokevolume используется для создания дыма внутри некоторой области.
Особенности использования
Этот объект обновляется в каждом раунде. Это означает что любые изменения объекта НЕ будут наследоваться в последующих раундах.
Объект должен быть установлен там, где будет использоваться.
На карте может быть установлено множество этих объектов
Объект для удобства может быть покрыт материалом tools/toolstrigger.
Ошибки
Возможны случаи, когда частицы дыма не будут реагировать на Lightmap-тени. Это может привести к тому, что все частицы дыма будут либо полностью светлыми, либо полностью тёмными. Так же возможны случаи, когда освещённость частиц будет совершенно неправильной и частицы будут менять свой цвет непроизвольно от раунда к раунду. Эта ошибка не может быть объяснена, потому что она может возникать спонтанно. Во избегании этой ошибки старайтесь не допускать попадания Lightmap-теней на объект func_smokevolume.
Для этого объекта свойственен особый тип графических артефактов, который образно можно назвать "сквозным рендерингом спрайтов". При этом, если смотреть на объект в обратном направлении оси X (влево), то будет казаться, что внутри объекта func_smokevolume вообще нет дыма, и то что игрок находится внутри объекта func_smokevolume. Это происходит из-за того, что для объекта func_smokevolume движком Source частицы дыма рисуются справа налево (от больших координат X до меньших) и не выполняется проверка на уже нарисованные частицы, поэтому видеокарта отображает каждую следующую частицу дыма поверх уже нарисованных. Это и приводит к визуальному ощущению того, что частицы внутри объекта func_smokevolume просто не существуют. Чтобы избежать неправильного рисования частиц дыма, или уменьшить восприятие ошибки, можете попробовать применить нижеперечисленные способы борьбы с это ошибкой:
размещайте объект func_smokevolume где-нибудь не в игровом пространстве карты;
делайте дым более прозрачным;
размещайте объект func_smokevolume где-нибудь "справа" карты.
Параметры
Particle Draw Width – размер частиц дыма (юнитов);
Particle Spacing Distance – расстояние между частицами дыма внутри объекта func_smokevolume;
Rotation Speed (deg/sec) – скорость вращения частиц дыма;
Movement Speed (units/sec) – скорость движения частиц дыма;
Material – материал, используемый для рисования частиц дыма; (выбирается в окне Textures с фильтром "particle/", "sprites/" или "effects/"); для имён файлов материалов всегда добавляйте окончание ".vmt", если оно не указано;
Particle Color1 (R G B) – первый цвет частиц дыма;
Particle Color2 (R G B) – второй цвет частиц дыма;
Particle Density (0-1) – (от 0.0 до 1.0) прозрачность частиц дыма;
Density Ramp Speed – скорость с которой может изменяться прозрачность объекта от 0 до 1; чем ниже значение этого свойства, тем медленнее происходит изменение при использовании функции "SetDensity"; 1 – прозрачность изменяется примерно за 1-2 секунды;
Minimum DX Level – запретить размещение этого объекта на карте при компиляции карты на компьютере, уровень аппаратной поддержки видеокарты которого ниже этого значения; используется только компилятором VBSP в процессе компиляции карты;
Maximum DX Level – запретить размещение этого объекта на карте при компиляции карты на компьютере, уровень аппаратной поддержки видеокарты которого выше этого значения; используется только компилятором VBSP в процессе компиляции карты.
Флаги
Emissive – частицы дыма будут светиться, поэтому могут быть легко заметны в темноте.
Inputs
SetRotationSpeed <float> - установить новое значение свойства "Rotation Speed";
SetMovementSpeed <float> - установить новое значение свойства "Movement Speed";
SetDensity <float> - (от 0.0 до 1.0) установить новое значение свойства "Particle Density".
Карта
1) csssdk_func_smokevolume.vmf
2) csssdk_func_smokevolume_2.vmf
Используются объекты
1)
func_smokevolume
func_button
func_detail
prop_physics
2)
func_smokevolume
func_button
func_detail
prop_physics_multiplayer
point_servercommand
logic_auto
Описание карты
1)
На карте размещено четыре объекта func_smokevolume.
Первый объект func_smokevolume имеет стандартные настройки и его можно включать и выключать при помощи кнопки на пульте. При нажатии кнопки на пульте, дым медленно исчезнет, а при повторном нажатии так же медленно появится. Для второго объекта func_smokevolume включен флажок "Emissive", поэтому он "светится" и практически не реагирует на Lightmap-тени. Для третьего объекта используются настройки, делающие дым очень плотным. Для четвёртого объекта выбраны яркие цвета и маленький размер частиц, чтобы можно было легко изучить принцип действия объекта func_smokevolume.
2)
На карте размещен всего один большой объект func_smokevolume. Цель карты – показать графический артефакт, свойственный объекту func_smokevolume. Нажмите на кнопку пульта и полетайте вокруг объекта func_smokevolume. Возможно, вы с лёгкостью обнаружите как проявляется этот артефакт, который, как не трудно заметить, действует только вдоль оси X.
Добавил: Le-Satan-Pirate
29.04.2024 Просмотров: 3325
Комментарии