Вертикальные лестницы

Материал из CSM Wiki
Перейти к навигации Перейти к поиску

Из этой статьи Вы узнаете как создавать вертикальные лестницы. Для их создания потребуется два энтити-объекта:

Лестницы состоят из двух частей: func_detail — видимая часть, func_ladder — невидимая часть, по которой игрок поднимается.

Стандарты лестниц — это 2-4 юнита в толщину и 24-32 юнита в ширину, высота лестницы зависит от того как высоко надо подняться.

Создайте браш толщиной 96, шириной 256 и высотой 128 юнитов. Это будет то препятствие, на которое требуется залезть. Теперь начнем с создания видимой части лестницы. Выберите текстуру metal/metalladder001a и создайте вдоль нашего препятствия браш толщиной 2 юнита и шириной 24 юнита. Возможно, для этого вам потребуется отрегулировать шаг сетки «горячими клавишами» [Alt+A] или [Alt+S]. Должно получиться примерно так:

Ladder img01.gif

Превратите [Ctrl+T] лестницу в энтити-объект func_detail (это делается для оптимизации геометрии, о которой поговорим позже). На этом с видимой частью закончили. Если сейчас Вы откомпилируете и запустите это в игре, то заметите, что лестница не работает. Это потому что мы еще не создали ту невидимую часть лестницы, которая поднимает игрока.

Ladder img02.jpg

Создайте браш таких же размеров как видимая часть и пододвиньте его вплотную к лестнице, покройте все его стороны текстурой tools/toolsinvisibleladder и превратите [Ctrl+T] этот браш в энтити-объект func_ladder.

Ladder img03.jpg

Все! Вертикальная лестница готова. В игре объект func_ladder будет невиден, и игрок будет думать, что взбирается по видимой части.

Но стоит сделать несколько замечаний. Наверное, Вы заметили, когда спускаешься в игре с нашей лестницы, то игрок застревает в конце спуска, как бы прилипает к лестнице, и требуется нажать клавишу «прыжок», чтобы оторваться. Для того чтобы это не происходило, между полом и нижним концом энтити-объекта func_ladder требуется сделать зазор в 32 юнита (можно на несколько юнитов больше, но меньше нельзя).

Ladder img04.gif

Вместо func_detail (видимой части лестницы) Вы можете использовать другие различные обьекты по форме похожие на лестницу. Например, модель prop_static. Для этого на гланой панели инструментов выберите Entity Creation Tool [Shift+E] и создайте точечный энтити-объект prop_static. Зайдите в свойства этого энтити-объекта и поставте свойству World Model значение models/props/cs_office/ladder1.mdl, так же выставите в свойстве Collisions значение Not Solid. Остается добавить func_ladder способом, описанным ранее.

Ladder img05.jpg

Теперь Вы овладели основными приемами создания лестниц. Вы можете скачать архив с примерами нескольких типов вертикальных лестниц. В архиве находится исходник в формате VMF и и уже откомпилированный вариант в BSP.

Файл:Ladder01.zipВ архиве [91Кб] — карта-пример в форматах BSP и VMF.