Канал в IRC
RusNet: #cmt
Учебник по созданию карт
Глава VII. Разное.

§ 7.2 Использование CLIP-брашей

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

1. Блокирование пути игрокам

В стандартной библиотеке текстур halflife.wad есть текстура под названием CLIP. Это служебная (специальная) текстура. Браш окрашенный со всех сторон данной текстурой обладает интересными свойствами: он абсолютно прозрачен в игре, через него пролетают пули и гранаты, но игрок пройти сквозь него не может. Браш необходимо окрашивать данной текстурой СО ВСЕХ сторон. Это обязательное условие. Не допускается применять текстуру CLIP для обычных объектов. Только для создания CLIP-брашей.

Итак, первое предназначение CLIP-брашей: блокирование пути игрокам. На рисунке ниже показано как необходимо размещать CLIP-браш, чтобы игрок не мог пройти сквозь проход в стене. Слева показан проход, справа - этот же проход, но <заделанный> CLIP-брашем.

Блокирование CLIP-брашем пути игроку


Толщина CLIP-браша значения не имеет (хоть 1 юнит, хоть 100 юнитов - игрок не пройдет). CLIP-браши можно размещать, например, в тех, местах, где игроки могут упасть за пределы карты. Создаете в таком месте сплошную стену из CLIP-браш(а)ей и будьте уверены - игроки не упадут.


2. Создание прозрачных простреливаемых решеток

При помощи энтити-объекта func_illusionary и наложенной на него текстуры с маской создается решетка или забор. Затем вплотную или рядом размещается CLIP-браш (см. рис. ниже). Таким образом, мы получаем прозрачную простреливаемую решетку.

Создание прозрачных простреливаемых решеток


Преимуществом такой <комбинированной> решетки перед решеткой из объекта func_wall является ее простреливаемость из любого вида оружия, а вот func_wall не простреливается из пистолетов, троек и шотганов, не смотря на прозрачность. Также в пользу решения func_illusionary + CLIP-браш говорят не остающиеся на решетке следы от пуль. Постреляйте на какой-нибудь карте по решеткам из func_wall, а потом присмотритесь - будут заметны следы от выстрелов, тем самым автор карты показывает свою неосведомленность в данном вопросе :-)


3. Предотвращение застревания игроков

Посмотрите на рисунок ниже. На нем изображена наклонная горка и стоящий около нее ящик.

Предотвращение застревания игрока


При попадании игрока между поверхностями с небольшим углом наклона друг к другу, он (игрок) может застрять. Тогда ему поможет только kill :-). В некоторых случаях игрок погибает мгновенно :) За примером ходить далеко не надо: De_Aztec, база контров (левый бомб-плейс). Если прыгнуть между большим ящиком в левом углу бомб-плейса и стенкой и <поёрзать> там, то можно отправиться к праотцам :)

Использование CLIP-браша, как показано на рисунке, предотвращает застревание игрока, т.к. в таком случае он будет сидеть на CLIP-браше.


4. Экономия Clipnode-плоскостей

Clipnodes - это такие плоскости, которые создаются вокруг всех объектов на карте. Эти плоскости не позволяют игроку проваливаться сквозь пол, ходить сквозь стены, однако не путайте clipnodes и CLIP-браши - это не одно и то же. Clipnodes создаются игровым движком, а CLIP-браши это просто возможность для маппера сделать непроходимую прозрачную стенку.

Вспомните читерскую команду noclip, после ее ввода можно <летать> сквозь стены, т.е. попросту отменяются ограничивающие плоскости clipnodes.

Посмотрите на рисунок ниже. На нем изображена бочка, сделанная из цилиндра с 24 боковыми гранями. При компиляции вокруг бочки будут создано множество clipnode-плоскостей (до нескольких сотен). Все бы ничего, если бы не ограничение на эти самые clipnode-плоскости, которые накладывает движок Half-Life. При достижении максимально допустимого количества этих плоскостей, возникнет ошибка при компиляции.

Экономия Clipnode-плоскостей


Использование CLIP-браша, как показано на рисунке, помогает, во-первых, облегчить работу компиляторам, а, во-вторых, помогает снизить количество clipnode-плоскостей.

Следует заметить, что данный метод следует применять при возникновении ошибки MAX_MAP_CLIPNODES и на очень больших картах. В остальных же случаях тратить время на подобную <оптимизацию> карты не стОит.


5. Сглаживание выступов на стенах

Этот способ применения CLIP-брашей используется для улучшения играбельности (комфортности игры). На рисунке ниже (часть 1), Вы можете видеть стенку с выступающей частью. В пылу боя, отходя задом, игрок может зацепиться за этот выступ, и его убьют. Рядом с таким уступом можно разместить CLIP-браш (часть 3, вид сбоку-сверху). Это позволит избежать данной ситуации. Игрок <проскользит> по CLIP-брашу и благополучно скроется от врагов :-)

Сглаживание выступов на стенах


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


6. Применение CLIP-браша при создании машины

CLIP-браш можно включать в состав машины (объектов: func_vehicle, func_train, func_tracktrain). Это может пригодиться, если нужно заблокировать передвижения игрока в какой-то части машины. Например, чтобы игрок не застрял между наклонными поверхностями. Прежде чем окончательно превратить браши, составляющие автомобиль, в func_vehicle (или другой объект из перечисленных выше), не забудьте выделить и CLIP-браш. А уж затем можете создавать энтити-объект.

Применение CLIP-браша при создании машины



Ну, и последнее, не забывайте создавать CLIP-браши в тех местах, куда игрок не должен попадать во время игры, чтобы не возникло ситуации, когда игроки воспользуются отсутствием CLIP-браша и начнут бегать за пределами карты или где-то еще, где им неположено. А вообще совет: не злоупотребляйте CLIP-брашами, игроки не очень любят, когда они видят какой-то проход, но не могут туда попасть из-за невидимой <стенки>.


Глава VII. Разное.


К оглавлению Учебника

© http://cs-mapper.by.ru/
CMT (CS Mapping Tutorials) - © 2006-2011. Created by VM
[ Script Execution time: 0.0603 ]