Объёмный объект мира

From Valve Developer Community
< Ru
Jump to navigation Jump to search
English (en)Español (es)Português (pt)Русский (ru)中文 (zh)Translate (Translate)

Объёмный объект мира (Brush entity) - это объект мира на движках GoldSrc GoldSrc и Source Source, который связан с элементом геометрии карты, и придаёт элементу карты определённые функции. (Горячие клавиши по умолчанию: CTRL+T)

Назначение и использование

Объёмный объект мира используется для объектов мира, которым требуется место или зона срабатывания, чтобы соприкасаться, сталкиваться или выполнять конкретную задачу.

Другой вариант использования - создание "модели" физического объекта, состоящей из одного или нескольких объёмов, покрытых текстурами (например, лифт, дверь и т.д.).

Отличным примером, реализующим обе конструкции, является func_button, которой требуется объём, задающий игроку зону нажатия, касания или стрельбы для её активации; она может быть любой формы и состоять из группы объёмов, может быть покрыта интересной текстурой, быть рычагом или поворотной ручкой.

Такие объёмные объекты мира, как func_button, имеют отличительные особенности, влияющие на направление движения связанных элементов карты при активации, создавая эффект вдавливаемой и возвращающейся в исходное положение кнопки.

Другим примером объёмного объекта является trigger_multiple(en), который может активировать некоторые выходы, как только игрок попадает в область его действия (объем которой определяется объемом элемента карты, использованного для создания переключателя).

Tip.pngСовет: Многие объёмные объекты работают при динамическом создании через команды/сценарий и устанавливают ключ-параметр solid 2 и желаемые mins/maxs после создания объекта. Это полезно для создания неотображаемых объектов без перекомпиляции карты. Также возможно повторно использовать элементы других объёмных объектов, находящихся в данной карте.
PlacementTip.pngПример: Создание trigger_multiple(en) через команды управления, который будет разрушать любой коснувшийся его prop_physics
ent_create trigger_multiple targetname test spawnflags 1032 OnStartTouch "!activator,Break";
ent_fire test addoutput "solid 2";
ent_fire test addoutput "maxs 100 100 100";
ent_text test; ent_bbox test;

(не во всех играх команда ent_create поддерживает больше параметров, чем classname, в этом случае их необходимо задать через ent_fire addoutput)

Warning.pngПредупреждение: привязывание объёмных объектов мира между собой приведёт к вылету игры при попытке зайти на карту.

Основные типы

Переключатели

Они невидимы во время обычной игры и активируют выходы или влияют на другие объекты, когда они касаются объёма переключателя. Являются подклассами CBaseTrigger, их видимость можно переключать с помощью showtriggers_toggle, если составляющие его элементы карты покрыты видимой текстурой, например toolstrigger.

Навигационный контроль

Они помогают контролировать или создавать навигационный граф, и тоже невидимы.

Визуализируемые

Объёмные объекты, элементы которых которых должны быть видны игроку, и могут добавлять к ним некоторые специальные функциональные возможности.

Прочие

Смотрите также