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

§ 11.1 Бьющиеся и небьющиеся стекла

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

1. Бьющиеся стекла

Нет ничего проще, чем создание стекол :) Вот как создаются бьющиеся стекла:

Создайте браш в форме стекла любых размеров (оптимальная толщина 2-4 юнита). Для закрашивания хорошо подходят стандартные текстуры со словом GLASS такие как: GLASSBRIGHT, GLASSBLUE1, GLASSGREEN. Мы будем использовать последнюю, GLASSGREEN. Вообще-то для стекол можно использовать практически любую текстуру (кроме специальных и воды, разумеется), т.к. все-равно объект будет прозрачным, но текстуры со словом GLASS подойдут лучше.

На рисунке ниже Вы можете видеть три стекла, сделанные из разных энтитей с различными свойствами: левое - разбиваемое, центральное и правое - неразбиваемые.

Три способа создания стекол


Итак, Вы создали браш, теперь превратите его в func_breakable и выставьте следующие свойства:

Strength - 30 (прочность стекла. Чем больше значение, тем больше пуль необходимо выстрелить по стеклу, чтобы оно разбилось);
Material Type - Glass (материал, естественно, выбираем стекло);
Render Mode - Texture (этот режим делает объект прозрачным, также можно использовать Additive);
FX Amount - 40 (степень прозрачности. Чем ближе значение к 0, тем стекло прозрачнее и наоборот, чем ближе к 255, тем - непрозрачнее. При fx amount = 0 стекло будет полностью невидимым)

Бьющееся стекло готово! Мы же говорили, что это очень просто.

Для бьющихся стекол (объект func_breakable) дополнительно можно выставить следующие флаги:

Only Trigger - если отмечено, то стекло разобъется только от триггера (стеклу, т.е. объекту func_breakable надо дать имя и активировать триггером, чтобы оно разбилось);
Touch - если отмечено, то стекло разобъется от прикосновения игрока;
Pressure - если отмечено, то стекло разобъется от давления (игрок встал на стекло). Можно, например, использовать для создания ломающегося льда;
Instant Crowbar - мгновенное разрушение от монтировки (используется в HL)


2. Небьющиеся стекла

Небьющиеся стекла можно изготовить тремя способами:

a) изспользуем func_breakable

Material Type - Unbreakable Glass (материал: неразбиваемое стекло);
Render Mode - Texture;
FX Amount - 40


б) изспользуем func_breakable и флаг Only Trigger

Material Type - Glass;
Render Mode - Texture;
FX Amount - 40

Флаги:

Only Trigger - если установлен этот флаг, то игрок разбить стекло не сможет (ни ножом, ни оружием)


в) изспользуем func_wall

С func_wall еще проще, т.к. необходимо выставить только параметры отображения.

Render Mode - Texture или Additive;
FX Amount - 40 (степень прозрачности. Значения от 0 до 255)

А вот так выглядят стекла в игре. Как видите, визуальных различий между разбиваемыми и неразбиваемыми стеклами нет.

Так выглядят стекла в игре (Render Mode: texture; FX Amount: 40)


Как видите, вариантов много. Какой использовать? Да, любой. Хотя у func_wall выставлять меньше свойств.


Ссылки

glass.zip [13Кб] — в архиве карта-пример в форматах BSP и RMF.


Глава XI. Стекла.


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

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