Четверг, 28.03.2024, 19:01

Новые сообщения · Участники · Правила форума · Поиск
  • Страница 1 из 1
  • 1
Модератор форума: ZubastiG  
Форум » Мастерская Counter Strike » Создание карт » Сдвигающиеся и вращающиеся двери
Сдвигающиеся и вращающиеся двери
ZubastiGДата: Понедельник, 02.06.2008, 19:45 | Сообщение # 1
СцУкА ПаПко=)
Группа: Админ
Сообщений: 583
Смайл настроения:
« 54 »
Статус: :-(
Сдвигающиеся и вращающиеся двери

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

* func_door
* func_door_rotating
* func_button
* trigger_multiple

1. Сдвигающиеся двери
Наиболее просто изготовить сдвигающуюся в сторону дверь. С такого типа дверей мы и начнем.

Активировать, т.е. открывать сдвигающуюся дверь можно несколькими способами, вот основные из них:

– дотрагиванием до двери или нажатием на «Use» (по умолчанию «E»)
– кнопкой
– триггером

a) открытие двери дотрагиванием

Предположим мы хотим создать дверь в этом проеме (см. рис. ниже). Для этого выберем подходящую текстуру двери (например, C1A0B_DR4A) и построим браш по размерам равный проему. Следует заметить, что стандартными размерами дверей в Half-Life являются 96х64х8 (т.е. 96 юнитов по высоте, 64 по ширине и 4 или 8 по толщине). Естественно это не строгое правило.

Теперь выделим браш и превратим его [Ctrl-T] в энтити-объект func_door. Дверь готова! Осталось только определить ее свойства, такие как: направление и скорость движения, звуки при движении и остановке, время до автоматического закрытия и т.д.

Angle — здесь указывается направление движения двери. Чтобы правильно его определить, поставьте вид сверху (2D top), тогда движение налево будет соответствовать 180°, направо — 0°. Если необходимо, чтобы дверь поднималась вверх или опускалась вниз, то выберите в списке Up или Down соответственно;

Speed — скорость движения двери (по умолчанию 100, нормальная скорость);

Move Sound — звук при движении двери, можно не указывать;

Stop Sound — звук остановки двери, также можно не указывать;

Delay before close — время в секундах, в течении которого дверь будет открыта, потом она автоматически закроется. Если необходимо чтобы дверь не закрывалась поставьте здесь значение «-1» или фо флагах отметьте «Toggle» (см. ниже). По умолчанию дверь закрывается через 4 секунды.

Health (shoot open) — «прочность» двери. Если указать значение больше нуля (> 0), то дверь откроется, только после нанесения ей указанного значения повреждений. Например, если указать Health = 100, то дверь откроется после 4-5 выстрелов из автомата. По умолчанию значение 0.

Lip — этим параметром можно изменить расстояние, на которое открывается дверь. По умолчанию дверь открывается на свою ширину, т.е. если дверь имеет ширину 64 юнита, то и откроется она на 64 юнита. Формула очень простая: Расстояние = (Ширина двери - Lip), т.е. если параметр Lip положительный, то дверь откроется на расстояние меньшее своей ширины, а если — отрицательный, то, соответственно, на большее.

Для чего нужен Lip? Когда дверь открывается полностью, то ее видимая боковая сторона совпадает со стеной, в которую дверь задвинулась, что создает не очень красивый эффект (попробуйте :). Если задать параметр Lip, скажем, в 2 юнита, то дверь будет выглядывать из стены на 2 юнита, и некрасивого эффекта уже не будет.

Остальные параметры не так важны.

Теперь рассмотрим флаги.

Starts Open — отметьте этот флаг, если необходимо, чтобы дверь была открыта в начале раунда
Passable — через дверь можно будет проходить (врядли нужно для нормальной двери)
Toggle — если у двери есть имя (Name), то ее можно будет открывать и закрывать при помощи кнопки или триггера (см. ниже). Дверь с установленным флагом Toggle не будет автоматически закрываться
Use Only — если отметить, то дверь будет открываться только при нажатии на «Use» (по умолчанию кнопка «E»).

б) открытие двери нажатием на кнопку

Дверь, рассмотренная выше, открывается при дотрагивании до нее. Рассмотрим теперь открытие двери от нажатия кнопки.

Изготовьте точно такую же дверь. Единственным отличием этой двери от рассмотренной выше будет наличие имени (Name). Чтобы дверь можно было открывать кнопкой, ей необходимо присвоить какое-нибудь имя, например, sliding_door1.

Теперь изготовим собственно кнопку. Кнопкой у нас будет браш с размерами 12х12х4 юнита (см. рис. ниже), окрашенный текстурой +0BUTTON1 и расположенный на стене рядом с дверью. Естественно простой браш работать не будет, поэтому превратим его [Ctrl-T] в кнопку func_button.

Учебник по созданию карт
Глава X. Двери.

§ 10.1 Сдвигающиеся и вращающиеся двери

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

* func_door
* func_door_rotating
* func_button
* trigger_multiple

1. Сдвигающиеся двери
Наиболее просто изготовить сдвигающуюся в сторону дверь. С такого типа дверей мы и начнем.

Активировать, т.е. открывать сдвигающуюся дверь можно несколькими способами, вот основные из них:

– дотрагиванием до двери или нажатием на «Use» (по умолчанию «E»)
– кнопкой
– триггером

a) открытие двери дотрагиванием

Предположим мы хотим создать дверь в этом проеме (см. рис. ниже). Для этого выберем подходящую текстуру двери (например, C1A0B_DR4A) и построим браш по размерам равный проему. Следует заметить, что стандартными размерами дверей в Half-Life являются 96х64х8 (т.е. 96 юнитов по высоте, 64 по ширине и 4 или 8 по толщине). Естественно это не строгое правило.

Создаем дверь

Теперь выделим браш и превратим его [Ctrl-T] в энтити-объект func_door. Дверь готова! Осталось только определить ее свойства, такие как: направление и скорость движения, звуки при движении и остановке, время до автоматического закрытия и т.д.

Angle — здесь указывается направление движения двери. Чтобы правильно его определить, поставьте вид сверху (2D top), тогда движение налево будет соответствовать 180°, направо — 0°. Если необходимо, чтобы дверь поднималась вверх или опускалась вниз, то выберите в списке Up или Down соответственно;

Speed — скорость движения двери (по умолчанию 100, нормальная скорость);

Move Sound — звук при движении двери, можно не указывать;

Stop Sound — звук остановки двери, также можно не указывать;

Delay before close — время в секундах, в течении которого дверь будет открыта, потом она автоматически закроется. Если необходимо чтобы дверь не закрывалась поставьте здесь значение «-1» или фо флагах отметьте «Toggle» (см. ниже). По умолчанию дверь закрывается через 4 секунды.

Health (shoot open) — «прочность» двери. Если указать значение больше нуля (> 0), то дверь откроется, только после нанесения ей указанного значения повреждений. Например, если указать Health = 100, то дверь откроется после 4-5 выстрелов из автомата. По умолчанию значение 0.

Lip — этим параметром можно изменить расстояние, на которое открывается дверь. По умолчанию дверь открывается на свою ширину, т.е. если дверь имеет ширину 64 юнита, то и откроется она на 64 юнита. Формула очень простая: Расстояние = (Ширина двери - Lip), т.е. если параметр Lip положительный, то дверь откроется на расстояние меньшее своей ширины, а если — отрицательный, то, соответственно, на большее.

Для чего нужен Lip? Когда дверь открывается полностью, то ее видимая боковая сторона совпадает со стеной, в которую дверь задвинулась, что создает не очень красивый эффект (попробуйте :). Если задать параметр Lip, скажем, в 2 юнита, то дверь будет выглядывать из стены на 2 юнита, и некрасивого эффекта уже не будет.

Остальные параметры не так важны.

Теперь рассмотрим флаги.

Starts Open — отметьте этот флаг, если необходимо, чтобы дверь была открыта в начале раунда
Passable — через дверь можно будет проходить (врядли нужно для нормальной двери)
Toggle — если у двери есть имя (Name), то ее можно будет открывать и закрывать при помощи кнопки или триггера (см. ниже). Дверь с установленным флагом Toggle не будет автоматически закрываться
Use Only — если отметить, то дверь будет открываться только при нажатии на «Use» (по умолчанию кнопка «E»).

б) открытие двери нажатием на кнопку

Дверь, рассмотренная выше, открывается при дотрагивании до нее. Рассмотрим теперь открытие двери от нажатия кнопки.

Изготовьте точно такую же дверь. Единственным отличием этой двери от рассмотренной выше будет наличие имени (Name). Чтобы дверь можно было открывать кнопкой, ей необходимо присвоить какое-нибудь имя, например, sliding_door1.

Теперь изготовим собственно кнопку. Кнопкой у нас будет браш с размерами 12х12х4 юнита (см. рис. ниже), окрашенный текстурой +0BUTTON1 и расположенный на стене рядом с дверью. Естественно простой браш работать не будет, поэтому превратим его [Ctrl-T] в кнопку func_button.

Создаем кнопку, при нажатии на которую, откроется дверь

Свойства кнопки в данном случае очень простые:

Targetted object — sliding_door1 (здесь мы указываем, что при нажатии кнопки будет открыта дверь по имени sliding_door1)

Delay before reset — время в секундах, в течении которого кнопка не будет действовать, после того, как была нажата. По умолчанию: 3 секунды, можно поставить 0.

Флаги:

Don't Move — если отметить этот флаг, то кнопка не будет вдавливаться в стену, но активация двери все же произойдет. Естественно, если Вы хотите, то можете не отмечать этот флаг, но тогда необходимо будет указать в парметре «Angle» направление движения (вжатия) кнопки, скорость и т.д.

в) открытие двери прохождением через триггер

Триггеры в игре невидимы. При прохождении игрока через триггер, активируется объект, указанный в его свойствах. Эту возможность мы и используем для открытия двери.

Итак, дверь у нас уже есть. Назовем ее sliding_door2. Теперь создадим браш, окрашенный специальной текстурой AAATrigger и разместим его в центре двери (см. рис. ниже).

Браш необходимо делать немного бОльшим, чем дверь, чтобы игрок касался его с любой стороны двери (см. вид top (x/y) на рис. выше).

Выделите браш и нажмите [Ctrl-T], в списке выберите trigger_multiple. Данный тип триггера позволяет активировать объект многократно.

Выставим свойства триггера.

Target — sliding_door2 (здесь указывается имя двери, которую будет открывать триггер);

Delay before reset — время в секундах, в течении которого триггер работать не будет после того, как был активирован. По умолчанию 10 секунд, однако в нашем случае с дверью, наилучшим будет значение 0, чтобы дверь открывалась всегда, когда игрок проходит через триггер.

Delay before trigger — время в секундах, до активации объекта (до открытия двери). Например, если здесь указать 5 секунд, то дверь будет открыта только через 5 секунд, после прохождения игрока через триггер. Для двери лучше поставить 0 секунд, чтобы дверь открывалась мгновенно, без задержек.

Остальные параметры можно не изменять. Все — дверь готова. Когда игрок пройдет через триггер (причем не важно с какой стороны, ведь триггер "выглядывает" с двух сторон двери), дверь откроется.

2. Вращающиеся двери
Вращающиеся двери немного сложнее в изготовлении и имеют больше свойств, но ничего страшного нет smile

a) открытие двери дотрагиванием

Изготовьте браш, который будет дверью.

Так как дверь (в данном случае) вращающийся объект, то для нее необходимо определить ось вращения. Делается это при помощи ORIGIN-браша, т.е. браша со всех сторон окрашенного специальной текстурой ORIGIN.

Необходимо правильно размещать ORIGIN-браш, т.к. от этого зависит как дверь будет вращаться. Чтобы при открытии дверь «не вьезжала» в стену, ORIGIN-браш должен располагаться на виде сверху так, как показано на рисунке ниже.

Обратите внимание, что центр ORIGIN-браша расположен посередине толщины двери (видно на виде сверху), и расстояние от края двери до этого центра равно половине толщины двери. Размеры ORIGIN-браша роли не играют. Это может быть совсем маленький браш, а может и большой.

Выделите дверь (пока что дверь это простой браш) и ORIGIN-браш (во время выделения зажмите клавишу Ctrl), нажмите [Ctrl-T] и в списке выберите func_door_rotating. Дверь готова! Все что остается сделать - это определить параметры вращения двери. Большинство параметров совпадает с параметрами сдвигающей двери func_door, поэтому рассмотрим только новые.

Distance (deg) — угол поворота двери в градусах. По умолчанию дверь поворачивается на 90 градусов, что вполне нормально.

Теперь рассмотрим флаги.

Starts Open — если отметить, то дверь в начале раунда будет открыта;
Reverse Dir — по умолчанию дверь открывается «от игрока», если отметить этот флаг, то она будет открываться «на игрока». В случае с открытием двери кнопкой или триггером этот флаг просто меняет направление открытия двери на противоположное;
Passable — если отмечено, то через дверь можно будет свободно проходить;
One-way — дверь будет открываться только в какую-то одну сторону (независимо от того, с какой стороны подошел к ней игрок);
Toggle — если у двери есть имя и открытие происходит от кнопки или триггера, то она не будет автоматически закрываться. Чтобы закрыть дверь, нужно будет повторно нажать на кнопку или пройти через триггер;
X-Axis, Y-Axis — этими флагами определяется ось, относительно которой будет вращаться дверь. По умолчанию, если ничего не отмечать, дверь вращается вокруг вертикальной оси Z, т.е. как обычно. Use Only — если отметить этот флаг, то дверь будет открываться только от нажатия на «Use» (по умолчанию кнопка «E»).

б) открытие двери от кнопки или триггера

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




Сs-Game-Portal - The new and the best for you!
Steam Community :: ZubastiG
 
Форум » Мастерская Counter Strike » Создание карт » Сдвигающиеся и вращающиеся двери
  • Страница 1 из 1
  • 1
Поиск:
Статистика
Посетители за сутки:
Статистика сайта
Последние новости Самые популярные темы Последние сообщения
Counter-Strike 1... 25.04.2009
Прибавление в Be... 25.04.2009
PinCho покидают ... 25.04.2009
Begrip.ru с новы... 25.04.2009
lurppis в состав... 25.04.2009
Продажа админки 44
Баннерообмен 35
как дела? 32
Досчитай до 1000 31
Жалобы 30
Тема Дата, Время Автор сообщения Раздел
Какой вы посов... 09.01.2014, 15:36 NewsPR Мир TV и Кино
Как увеличить ... 03.09.2012, 21:26 fredo Вопросы и Ответы
BOADR.RU 15.12.2011, 02:37 slep Unban на Cs-Game-Portal
BOADR.RU 15.12.2011, 02:37 slep Unban на Cs-Game-Portal
BOADR.RU 15.12.2011, 02:36 slep Unban на Cs-Game-Portal
BOADR.RU 15.12.2011, 02:36 slep Unban на Cs-Game-Portal
BOADR.RU 15.12.2011, 02:36 slep Unban на Cs-Game-Portal
BOADR.Ru 15.12.2011, 02:36 slep Cs-Game-Portal MIX server
BOADR.Ru 15.12.2011, 02:36 slep Cs-Game-Portal MIX server
BOADR.Ru 15.12.2011, 02:36 slep Cs-Game-Portal MIX server
Новые пользователи Активные пользователи
WilliaFokvotuzu 26.01.2017
DavidIfyqobguf 26.01.2017
AngelinajoliTig 19.01.2017
JamesDot 17.01.2017
Anthonyknito 17.01.2017
ZubastiG 583
RulezZz 137
Anomaly 100
ISQ 98
SnoopY 92
© ZubastiG 2024