Этот сайт предназначен, прежде всего, людям, ностальгирующим по ушедшим РУССКОМУ СЛОВУ, Windows 3.1, ФОТОНУ, процессорам 486SX и иже с ними.
Конечно, времена должны идти вперед, но почему они обязательно должны уходить?
StuhlbergR 2007-2008 ©
|
"Why are there monsters?" (DOOM - Infernal Sky)
"Кровищи, кровищи побольше..." или еще раз о детализации в мапинге DOOM 3 (продолжение)
Потренируйтесь, пожалуйста, в сооружении самых разнообразных труб, поэкспериментируйте с формами, сегментами, текстурами... Вы увидите, как это несложно и на самом деле способно оживить иной, даже вовсе скучный и невыразительный, уровень игры.
Но, к сожалению, наши трубы пока еще безмолвны. Гуляя же по уровням D3, вы наверняка заметили, что часть из них проявляет какую-либо активность; например, свистит, шипит, исторгает пары, дым или даже огонь, через который невозможно пройти, не потеряв определенное количество жизненных сил, а то и вовсе погибнуть... Как же это воспроизвести на своей карте?
Здесь нет ничего сложного. Для начала приделаем к трубе клубы пара, а потом заставим ее шипеть, будто из нее на самом деле вырывается какой-либо горячий газ.
Как вы, наверное, догадались, звучать будет не сама труба, а speaker, который легко поставить: MOUSE2/speaker. Возникнет маленький кубик, он и будет нашим источником звука. Зацепим его и подвинем в нужное место, желательно, ближе к месту предполагаемой протечки в трубе, чтобы получилось реалистичнее.
В плавающем инспекторе выбираем вкладку Entity и выставляем параметры:
s_volume: (свое числовое значение)// громкость звучания (100 - довольно громко)
s_minDistance: (свое числовое значение)// минимальная дистанция от источника звука, на которой он слышен (измеряется в юнитах)
s_maxDistance: (свое числовое значение)// максимальная дистанция от источника звука, на которой он слышен (измеряется в юнитах)
wait: (время в секундах) //через сколько секунд звук будет проигран повторно. Следует рассчитать время звучания файла и поставить соответствующее значение, чтобы звуки не накладывались друг на друга. Очень и очень в редких случаях наложение из одного speaker может быть оправдано. Впрочем, в нашем случае данный параметр можно не задействовать вовсе. Если же вы поставите ключ, равный -1, звук повторится только один раз и больше никогда.
s_waitfortrigger: (1 или 0)// вариант, если вы хотите, чтобы труба зазвучала только после активации триггера. Подходит, например, если у вас на карте происходит взрыв, а затем из поврежденной трубы начинает бить струя газа. Если выставляем 1, то звук пройдет только после активации соответствующего триггера.
Но самый важный параметр - это, конечно же, s_shader: (адрес_звукового_файла) //директория, по которой движок поймет, какой именно звук проигрывать для озвучивания вырывающегося пара. Можно прописать этот адрес вручную, но можно автоматизировать данную операцию, к тому же, вы лишний раз прослушаете некоторые имеющиеся в вашем распоряжении звуковые файлы, можно их пути даже записать куда-нибудь, дабы избавить себя в дальнейшем от долгих поисков (поверьте, очень экономит время!). Для этого все в том же диспетчере жмем кнопку Sound:
И в появившемся диалоговом окне выбираем нужный звуковой шейдер (в данном случае мне понравился файл SoundShaders/sound/fans.sndshd/loop_vent_1, ну а вы можете покопаться и выбрать тот, который больше подходит вам).
Если нажать на кнопку Play, можно прослушать выбранный файл. Если он не будет звучать, то попробуйте перегрузить окно. Если и теперь ничего не слышно, скорее всего, в вашем конкретном случае стоит отказаться от этого звука
Теперь обязательно скомпилируйте карту и побегайте вокруг трубы, проверьте, все ли звучит в соответствии с замыслом. При необходимости, подвигайте speaker, измените его параметры, указанные выше.
Но свистящий звук неизвестного происхождения редко выглядит реалистично. Конечно, можно соорудить некую абстракционистскую карту, на которой тесно переплетутся всевозможные звуки, музыка(и) и мигающие разноцветные лампочки, но вряд ли кому-то захочется долго ходить, не то, что играть, в подобном сюрреализме. Итак, делаем тогда пар. Пар у нас будет разноцветный и ядовитый, в результате прохождения через который игрок закашляется и потеряет сколько-нибудь драгоценного здоровья.
В D3 в качестве пара, огня (кстати, его можно также вставить сюда) и т.п. выступают Particles (эффекты), чаще выполненные при помощи частиц (отсюда и название). Дальнейшие действия могут показаться кому-то странными, но вы просто выполняйте все, как написано ниже.
Для начала вставим уже известным вам способом какую-нибудь статичную модель. Правильно, MOUSE2/NewModel и так далее... Все равно, какую. Мне привычнее ставить обычные коробки или ящики: их проще передвигать в нужное место. Затем, не снимая выделения на объекте, в инспекторе нажимаем кнопку Particles и ждем. Если диалоговое окно долго не будет открываться, это не значит, что редактор "повис", он просто думает. В следующий раз окошко загрузится быстрее. Если вместо предмета перед вами возникнет некий браш, то вы имеете дело с программным багом, неоднократно описанным во многих руководствах. Просто скопируйте "пробелом" этот браш и увидите нужный предмет, а исходный браш удалите. Готово?
Перед вами окно эффектов. Тут и начинается настоящий праздник творчества! Дым, пар, огонь - и такой, и сякой, и разный... И прочие эффекты... Все они, без сомнения, еще вам пригодятся, пока же выбираем тот, что больше подходит для ядовитого пара. Например: Particles/alpha3_pipeblast. Зеленоватая, стремительно вырывающаяся струя подходит к тому энергичному звуку, который мы недавно присвоили speaker'у.
Как и в примере с моделями, пар можно передвигать и рассматривать со всех сторон, прикидывая, как он будет смотреться под разными углами на карте
Дальше возможны два варианта развития событий. Первый: в окне *CAM вы увидите такую вот картинку:
Красным квадратиком с фреймом указано расположение пара.
Либо вариант два: вы узрите все тот же самый ящик. Но переживать не стоит. Просто сохраните и скомпильте карту, затем перегрузите Radiant и снова откройте и перекомпилируйте ее. Теперь все в порядке. Чтобы посмотреть, не входя в игру, как будет выглядеть пар, жмите <F3> и потом <F6>
Обратите внимание, впрочем, на то, что прочие объекты на карте могут исчезнуть; на самом деле, останутся видимыми только анимированные. Чтобы вернуть все на круги своя, нажимайте <F6> и <F3>.
Но пар, бьющий вверх, не может задеть игрока, гуляющего внизу. Поэтому поворачиваем красный квадратик, как и любой другой объект (клавиша <R> и все такое...). Смотрим анимацию эффекта, добиваемся нужного угла наклона.
Кашель игрока при вдыхании ядовитых паров сделаем через speaker (см. немного выше) и цепляем его к trigger_multiple (чтобы игрок кашлял всякий раз при пересечении триггера). Высоким его делать не стоит, здесь важны ширина и длина брашевого триггера, чтобы точно уловить момент прохождения сквозь струю пара.
Дабы player не кашлял зазря, прибавим ему проблем: сделаем так, чтобы всякий раз после того, как он пройдет через нашу небольшую ловушку, у него терялись жизненные силы. Натягиваем поверх trigger_multiple триггер, включающий систему повреждений - trigger_hurt. Здесь, опять же, важны лишь ширина и длина браша. Примерно так:
Параметры у данного триггера таковы:
delay: (значение в секундах) //задержка, после которой наступит ухудшение самочувствия
def_damage: (имя активируемого повреждения) //тип и характер наносимого повреждения. Скажем, чтобы с каждой секундой, пока игрок находится в зоне действия триггера, его здоровье убавлялось на 25 пунктов, в ключе нужно прописать значение damage_triggerhurt_25. Или полное и моментальное уничтожение - damage_suicide. Просмотреть или отредактировать список возможных повреждений можно в директории base\def\damage.def.
Ну вот и все. Ловушка с трубой, испускающей ядовитый пар, готова. Согласитесь, не очень сложно в исполнении, но весьма эффективно (и, главное, эффектно!) будет смотреться на карте. При известном желании и фантазии, вы сами можете теперь скомбинировать те или иные свойства труб или прочих объектов и эффектов, заставить из звучать и даже ранить игрока. Например, попробуйте соорудить узкий проход-головоломку через ряды таких вот смертоносных труб. Только не увлекайтесь. Думеры не слишком любят, когда их чересчур долго задерживают на одном месте и не дают покромсать в вермишель очередного монстрега - помните об этом ;)
Теперь здесь ходить опасно...
Пример непроходимой трубы в моде Kaiser
Небольшое дополнение от WarlorD69 (цитирую) /Второй способ. Рисуем браш, щелкаем по нему правой клавишей мыши, выбираем пункт func static\". Если браш не превратился сразу в квадратик функции - просто клонируем его клавишей \"пробел\" и удаляем первый (неудачный) вариант. Далее в инспекторе выбираем закладку media, в ней - particles, ну и, непосредственно, выбираем нужный эффект/ |
[1] [2] [3] [4] [5] [6] [7] [8] [9]
Ветка DOOM-ностальгия Статьи о DOOM
|
Большинство предоставленного здесь материала является цитированием со старых номеров компьютерных журналов, таких, как
"Мир ПК" или "Весь Компьютерный Мир". К сожалению, все мои попытки связаться с этими изданиями по поводу вопроса о цитировании были безуспешны.
Издания упорно хранили молчание. Что я разрешил себе расценивать как знак согласия, указывая, тем не менее, повсюду как выходные данные
издания (с работающей ссылкой на Интернет-представительство), так и автора публикации. Тем более, что, в силу срока давности этих публикаций, вряд ли материал можно рассматривать как коммерческий или рекламный,
пусть даже названия фирм здесь и присутствуют (уж без этого никуда).
Ежели появятся какие претензии по оному поводу, прошу
издания связаться со мной
Райво Штулберг |