Cave: Руководство по началу работы
Шаблоны сущностей
Lesson 11 of 19 • 10 XP
Keep your place in this quest
Log in or sign up for free to subscribe, follow lesson progress, and access more learning content.
Шаблоны сущностей — это система повторно используемых сущностей Cave.
Они позволяют вам один раз создать установку сущности, сохранить её в качестве актива и разместить экземпляры в разных сценах.

Если вы пришли из другого движка, вы можете мыслить о шаблонах сущностей как о подобной prefab-работе Cave. Если вы новичок в игровых движках, представьте их как повторно используемые рецепты объектов.
Вместо того чтобы каждый раз заново воссоздавать одну и ту же дверь, врага, предмет или элемент интерфейса, вы создаёте установку один раз и повторно используете её wherever нужен.
Что такое Шаблоны Сущностей?
Шаблон сущности — это актив, который хранит структуру сущности.
Он может включать:
- Корневую сущность (каждый шаблон ДОЛЖЕН иметь одну и только одну корневую сущность).
- Дочерние сущности.
- Компоненты.
- Настройки компонентов.
- Ссылки на активы.
- Свойства.
- Теги.
Когда вы размещаете шаблон в сцене, Cave создаёт экземпляр этого шаблона.
Экземпляр использует актив шаблона как свою базу, что означает, что он может сохранять ту же внутреннюю структуру, оставаясь при этом объектом, размещённым в конкретной сцене.
Почему Шаблоны Сущностей Важны
Множество игровых объектов — это не просто одна сетка.
Предмет может включать:
- Видимую модель.
- Датчик.
- Освещение.
- Эффект частиц.
- Звук.
- Логику, которая даёт награду.
Шаблон позволяет вам сохранить всю эту установку вместе.
Используйте шаблоны сущностей для таких вещей, как:
- Игроки.
- Противники.
- Предметы.
- Двери.
- Пули.
- Транспортные средства.
- Порталы.
- Объёмы урона.
- Реквизиты.
- Элементы интерфейса.
- Повторно используемые игровые объекты.
Шаблоны экономят время, но они также поддерживают консистентность повторяющихся объектов. Если каждый предмет здоровья создаётся из одного и того же шаблона, вы можете улучшать шаблон один раз и держать проект организованным.
Создание Шаблона Сущности
Вы можете создать шаблон сущности из браузера активов или повысить существующую сущность в сцене до шаблона, щёлкнув по ней правой кнопкой мыши в графе сцены или нажав Ctrl + T, чтобы повысить выбранную сущность.
Обычный рабочий процесс заключается в том, чтобы сначала создать объект прямо в сцене, протестировать его и только потом превратить его в шаблон, как только установка станет полезной. Это выглядит так:
- Создайте сущность в сцене.
- Добавьте необходимые компоненты и дочерние элементы.
- Настройте её параметры.
- Повышайте это до шаблона сущности.
- Повторно используйте этот шаблон в той же сцене или других сценах.
Но как только вы уверены, что будете много раз повторно использовать такой элемент, как игрок, противники, усилители и т. д., хорошей практикой будет немедленно создать его, либо в браузере активов, либо повысив его, как было предложено ранее.
В графе сцены быстрое меню редактирования может повысить сущность до шаблона. Сочетание клавиш, указанное редактором, — Ctrl + T.
Шаблон Актив vs Экземпляр Шаблона
Помогает разделить актив шаблона и размещённый экземпляр.
| Концепция | Значение |
|---|---|
| Шаблонный актив | Повторно используемая установка объекта, хранимая в Браузере Активов. |
| Экземпляр шаблона | Размещённая копия этого шаблона внутри сцены. |
Актив определяет повторно используемую структуру.
Экземпляр — это место, где эта повторно используемая структура появляется в конкретной сцене.
Редактирование Шаблона Сущности
Шаблоны редактируются как собственный актив.
Когда вы открываете шаблон для редактирования, Cave переключается на сцену редактирования шаблона, чтобы вы могли редактировать внутреннюю структуру сущности шаблона напрямую.
Важная идея такова:
> Шаблон владеет своей внутренней иерархией.
Экземпляры сцен используют эту иерархию, но они не владеют непосредственно каждым дочерним элементом внутри неё. Это сохраняет все экземпляры связанными с одной и той же повторно используемой установкой.
Стоит отметить, что это становится ложным, как только игра начинает работать, потому что когда вы запускаете игру, вся иерархия шаблона сразу доступна для вас, чтобы настраивать. Так что, программируя свою игровую логику, вы можете ожидать, что сможете взаимодействовать с экземплярами шаблона сущности, дочерними элементами и т. д.
Например, если вы откроете шаблон Противник и добавите нового дочернего элемента Health Bar, каждый экземпляр этого шаблона противника может воспользоваться обновлённой структурой.
Почему Дочерние Элементы Шаблона Не Редактируются Непосредственно в Сцене
Когда экземпляр шаблона помещается в сцену, внутренние дочерние элементы по-прежнему принадлежат шаблону. Вот почему Cave защищает дочерние элементы шаблона от прямого редактирования в сцене.
Например, если шаблон противника содержит:
Противник
Тело Меш
Зона Обнаружения
Полоса Здоровья
Вы должны редактировать эти внутренние дочерние элементы внутри шаблона, а не как отдельные объекты, принадлежащие сцене.
Это поддерживает консистентность каждого экземпляра. Если каждый размещённый противник мог бы свободно редактировать свои внутренние дочерние элементы, шаблон перестал бы быть надёжным повторно используемым объектом.
Инстанцирование Шаблона в Сцене
После того как шаблон существует, вы можете разместить его в сцене.
Например, вы можете перетащить шаблон из Браузера Активов в 3D View.
Когда шаблон размещен:
- Он появляется в графе сцены как экземпляр шаблона.
- Cave использует другой цвет шаблона (зелёный) для экземпляра.
- Экземпляр сохраняет свою связь с активом шаблона.

С точки зрения рабочего процесса это один из самых быстрых способов создать уровни. Вы создаёте повторно используемую дверь, предмет, противника или реквизит один раз, а затем размещаете экземпляры везде, где уровень нуждается в них.
Локальная Настройка Шаблона
Экземпляры шаблона по-прежнему могут быть настроены локально:

Основной способ сделать это — через свойства, выставленные корневой сущностью шаблона.
Это даёт вам полезный баланс:
- Структура остаётся повторно используемой.
- Каждый размещённый экземпляр может иметь свои собственные значения.
Например, несколько противников могут использовать один и тот же шаблон противника, в то время как каждый экземпляр имеет разные параметры здоровья, скорости, настройки патрулирования или опции поведения.
Примеры Локальных Свойств Шаблона
Полезные локальные свойства включают:
| Свойство | Пример использования |
|---|---|
| Здоровье противника | Сделать одного противника слабее или сильнее. |
| Скорость противника | Создать медленные и быстрые варианты. |
| Количество урона | Повторно использовать одну установку опасности с разными уровнями опасности. |
| Целевая сцена портала | Отправить каждый портал в другую сцену. |
| Значение предмета | Сделать монеты, драгоценные камни или награды с различными значениями. |
| Состояние двери | Повторно использовать одну установку двери для запертых и открытых дверей. |
| Текст интерфейса | Повторно использовать один виджет интерфейса с разными метками. |
Например, один шаблон Портал может использоваться во многих местах, если каждый размещённый портал имеет локальное свойство, которое выбирает целевую сцену.
Примеры Шаблонов Стартового Проекта
Стартовые проекты могут включать несколько полезных шаблонов в зависимости от выбранных вами опций проекта.
Вы можете найти примеры, такие как:
- Шаблон игрока.
- Шаблон противника.
- Шаблон урона.
- Шаблон портала.
- Шаблон транспортного средства.
- Повторно используемые игровые элементы.
Их стоит исследовать. Откройте их, посмотрите на иерархию, изучите компоненты и проверьте, какие свойства выставлены.
Сгенерированное содержание не только предназначено для использования. Оно также предназначено для того, чтобы научить вас, как реальные объекты Cave могут быть построены.
Хорошие Случаи Использования Шаблонов Сущностей
Создавайте шаблон, когда объект:
- Повторяется много раз.
- Используется в нескольких сценах.
- Состоит из нескольких компонентов.
- Состоит из нескольких дочерних сущностей.
- Должен вести себя последовательно.
Хорошие кандидаты включают:
- Противники.
- NPC.
- Оружие.
- Пули.
- Коллекционные вещи.
- Двери.
- Контрольные точки.
- Ловушки.
- Порталы уровня.
Чем чаще вы повторно используете объект, тем более ценным становится шаблон.
Когда Не Использовать Шаблон
Не всё должно быть шаблоном.
Уникальный объект, который появляется один раз и имеет смысл только в одной сцене, может остаться обычной сущностью сцены.
Например:
- Единственный реквизит для кинематографической сцены.
- Специальный триггер, специфичный для уровня.
- Уникальное украшение, которое никогда не будет повторно использовано.
- Временный тестовый объект.
Шаблоны мощны, но они наиболее полезны, когда повторное использование действительно важно. Превращение каждого крошечного объекта в шаблон слишком рано может сделать проект более трудным для управления, а не легче.
Простой Правило Шаблона
Если вы поймали себя на том, что копируете одну и ту же настройку сущности больше одного раза, подумайте о создании шаблона сущности.
Эта одна привычка может сэкономить много времени и помочь вашему проекту оставаться гораздо более чистым по мере его роста.