Разрушаемые стены

Один из элементов игры вызывающий у кого-то злость, у кого-то веселое недоумение - это разрушаемая стена из-за которой хлещет поток зараженных. Вы можете неоднократно стрелять в эту стену, поджигать ее но она не разрушается. Разбить ее могут только зомби. Согласитесь, эта фишка неплохо подстегивает игроков и добавляет драйва игре.
Как же сделать такую стену на своей карте? Это мы сейчас и разберем.

Для начала вспомним - как выглядит эта стена до и после разрушения в игре:
Вид стены до и после разрушения


Отметим для себя составные элементы:
Новые элементы


и начнем работу.

Создадим новую заготовку карты и построим там стену толщиной 16 юнитов с проемом равным 128х128 юнитов:
Заготовка


Заполните проем отдельным брашем и выровняйте текстуру на всех брашах стены, что бы скрыть местоположение проема:
Заполнение


Превратите браш в Entity-объект и выберите в выпадающем списке "func_breakable". Дайте элементу имя, поставьте тип материала - дерево и кто может разбить этот браш:
Настройки func_breakable

Убедитесь, что ни один флаг не установлен. Вы же не хотите, чтоб ваша стена разрушилось не вовремя просто от внешнего воздействия?

Вставьте в проект один элемент "prop_static" примените к нему модель "props_interiors / breakwall_interior.mdl", отключите тени (переведите параметр Disable Shadows в положение Yes) и расположите внутри разрушаемого браша.
Решетка


Откройте броузер текстур и наберите в поле "фильтр" ключевое слово "break", из полученных текстур выберите "overlays/breakwall":
Подбор декалей


Возьмите инструмент "Decal". Наложите декаль на стену слева от нашего разрушаемого проема и выровняйте его по краю браша. Откройте окно свойств декали и задайте ей имя - breakwall_decal. Повторите этот шаг для правой части стены с текстурой декали "overlays/breakwall_mirror". Присвойте ей такое же имя как и левой декали. Вы получите такой вид:
Наложение декалей


Возвращаемся к нашему "func_breakable". Открываем вкладку "Outputs" и добавляем строчку:
Настройки разрушения


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

Чтобы инфицированные и боты могли свободно проходить через разрушенную стену, необходимо проверить NAV-файл вашей карты. А конкретно, навигационную область в месте разрушенной стены. Для начала наведите прицел на вашу разрушаемую стену, откройте консоль и введите команду "ent_fire !picker break", это разрушит ее. Проверьте маркировку навигационной области лежащей через стену, при необходимости добавьте ее и привяжите к основной навигационной сетке.
Nav-сетка


Принцип построения файлов навигации рассматривается в этом уроке.

Комментариев 0

Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.