Меню сайта


[DS]: Half-Life Server
[DS]: Half-Life Server


[DS]: CS:S GunGame v34 Server
[DS]: CS:S GunGame v34 Server


[DS]: CS:S v34 Server
[DS]: CS:S v34 Server


Поиск

add_newДобавить новость
Последние добавленные
Название игры: S.I.P: Out Life
Жанр: FPS, с элементами RPG
Язык: с++, скрипты lua
G API: DirectX 9
Сайт: sip-game.su
Группа Vk: vk....
Читать далее

<JAM>
m1-palinka


HL-HEV
hl-hev

DS-Servers
Статьи
Туториалы
Маппинг
Goldsrc
Создание карт
Продвинутый маппинг

Маятник



Маятник
Добавил: root
2013-01-09 13:27:17
12 просмотров

В этой статье мы рассмотрим создание маятника. Нам понадобятся два объекта (звук и собственно маятник):

Давайте подумаем, как часто на CS-картах встречаются часы с маятником и вообще нужны ли они? Ответ вполне очевиден. Но ведь мы знаем, что объекты в Half-Life не являются какими-то конкретными предметами. Например, в HL нет стиральной машины (func_clotheswasher :), однако мы можем ее изобразить при помощи других объектов. Так вот и в нашем случаем мы будем использовать func_pendulum не по своему прямому назначению.

Мы создадим подвесной мост, раскачивающийся из стороны в сторону. Согласитесь, что в некотором роде такой мост тоже является маятником. Вот как он будет выглядеть:

Так мост будет выглядеть в игре



Мы не будем подробно останавливаться на создании самого моста, т.к. каждый вправе самостоятельно решить, какой мост будет лучше смотреться на его карте. Мы считаем более важным рассказать о расположении ORIGIN-браша, который обязательно должен быть у func_pendulum, т.к. это вращающийся объект.

На рисунке ниже показано, как расположен ORIGIN-браш по отношению к мосту. Форма ORIGIN-браша не имеет значения, главным является расположение его центра. Для наглядности мы удлинили ORIGIN-браш вдоль оси Y (оси вращения).

Так мы расположили ORIGIN-браш



На следующих двух картинках Вы можете более четко увидеть, как расположен ORIGIN-браш на видах сверху и спереди. Для большей наглядности внизу каждой картинки мы разместили 3-х мерный вид (ORIGIN-браш отмечен белой стрелкой).

Так расположен ORIGIN-браш на виде сверху



Так расположен ORIGIN-браш на виде спереди



Итак, выделяем все браши, составляющие мост (это и доски, и канаты) и ORIGIN-браш, и превращаем в func_pendulum. Теперь все, что выделено (см. рис. ниже) будет вращаться (раскачиваться) вокруг ORIGIN-браша.

Выделяем все браши, составляющие мост (доски, канаты и ORIGIN-браш)



Теперь необходимо выставить свойства и флаги для func_pendulum.

Func_pendulum (раскачивающийся мост)
Speed: 3 (скорость раскачивания моста; очень медленная)
Distance (deg): 2 (угол раскачивания моста)
Damping (0-1000): 0 (замедление при раскачивании до остановки)
Damage inflicted when blocked: 0 (повреждения игроку; по умолчанию отключены)

Флаги:

Start ON — раскачиваться в начале раунда
Y Axis — вращение вдоль оси Y



Определение оси вращения

Мост раскачивается вдоль одной из горизонтальных осей (X или Y), поэтому во флагах необходимо отметить флаг или X Axis, или Y Axis.

Ось определяем на виде сверху (см. рис.3). На виде сверху ось, вдоль которой раскачивается мост, вертикальна, а значит это ось Y. Следовательно во флагах отмечаем Y Axis.


Вставляем звук

Для придания большей реалистичности около середины моста вставим звук ambient_generic. Звук раскачивания моста (скрип натянутых канатов) будет воспроизводиться постоянно, как бы повторяя движения моста слева-направо и обратно.

Так как звук будет повторяться бесконечно, то он должен содержать ключевую точку (cue point), которая дает знать движку Half-Life откуда начинать повторение. Подробнее о создании бесконечно играющих звуков Вы можете прочитать в этой статье.

Свойства ambient_generic мы приводить не будем, потому как Вы прекрасно их знаете :) Данный объект неоднократно использовался в других наших уроках.


func_pendulum.zip [74Кб] — в архиве карта-пример в форматах BSP и RMF, а также нужный звуковой файл.


Поделиться:
Тэги:

DS-Servers.com
Copyright © 2012-2016. All Rights Reserved.
При копировании материала ссылка на источник обязательна
За материалы, размещенные пользователями, администрация сайта ответственности НЕ несет