Переиспользование: префабы, копирование, генераторы
Четыре инструмента, каждый из которых значит "не строй это дважды", и что под какую задачу
Что выбрать
Задайте два вопроса:
- Понадобится ли потом менять эти объекты все сразу? Тогда префаб, сколько бы их ни было
- Можно ли описать содержимое правилом, а не рисовать руками? Тогда генератор, даже ради восьми объектов
Если оба ответа "нет", просто копируйте
Почему генератор даже ради восьми объектов: запуск генератора - одна операция для отмены. Восемь объектов, расставленных руками, - восемь шансов промахнуться в одном из них
Копирование
Для формы, которую нужно повторить несколько раз и больше не связывать с оригиналом
Буферов обмена пять, по одному на каждый таймлайн. Клипы, скопированные на одном таймлайне, не вставятся поверх ключей на другом
Копирование и вставка направляются по-разному:
- Вставка всегда идёт в тот таймлайн, на который вы смотрите
- Копирование берёт то, что выделено. Открытый таймлайн побеждает, если на нём есть своё выделение. Иначе копируется выделение, где бы оно ни было, поэтому объект, выделенный при открытом локальном таймлайне, всё равно скопируется
Дублирование (Ctrl+D) не пишет ни в один буфер. То, что вы скопировали раньше, не пропадёт
С родителем дублирование и вставка обходятся по-разному:
- Дубликат сохраняет родителя. Копия встаёт рядом с оригиналом в иерархии
- Вставка родителя сбрасывает, и вставленные объекты оказываются на верхнем уровне. Исключение - родитель
КамераилиЛокальный игрок: на уровне он переживает вставку
Оба ищут свободный слой только на тех кадрах, куда попадает каждый скопированный объект. Вставка на пустой участок таймлайна сохраняет слои, которые были у объектов
Имя копии перенумеровывается. Хвост из _ и цифр - это id объекта, поэтому Shape_12 становится Shape_ с новым id. Имя без такого хвоста его не получает, а хвост не только из цифр (Wave_2b) остаётся как есть. Аудиодорожки переименовываются так же
Объекты, скопированные в режиме префаба, вставляются обратно в шаблон, а не в уровень
Буферы очищаются при загрузке уровня. Все id и кадры в них относятся к уровню, который был открыт
Префабы
Для того, что нужно много раз и что вы хотите менять везде сразу
Префаб - это шаблон и его размещения. Когда вы указываете размещению шаблон, размещение получает настоящие копии его объектов с постоянными идентификаторами. В файле уровня хранится только само размещение: шаблон, идентификаторы копий и ваши переопределения. Копии собираются из шаблона заново при каждой загрузке уровня
Правка шаблона расходится по всем размещениям, которые на него ссылаются. Правка копии в одном размещении (вне редактирования шаблона) записывается как переопределение только этого экземпляра. Переопределения переживают следующие правки шаблона. Поэтому префаб годится и для вариаций, а не только для клонов
Префабы можно вкладывать друг в друга. Вложенный шаблон можно править изнутри другого: шаблоны открываются друг поверх друга и закрываются в обратном порядке
Префаб из выделения
Выделите объекты и нажмите Ctrl+G (Создать префаб из выделения). То же действие есть:
- в палитре команд
- в контекстном меню вьюпорта, пока что-то выделено
- в меню строки иерархии, как
Создать префаб из этого - в настройках уровня, вкладка
Префабы,Из выделения
Выделенные объекты переносятся в новый шаблон, а их место занимает одно его размещение, и оно же выделяется. Это одна операция для отмены.
Один объект даёт шаблону своё имя. Несколько объектов дают шаблон с именем Prefab
Размещение и объект, который ему принадлежит, упаковать ещё раз нельзя. Их меню вместо этого предлагают Открыть в префабе, и открывается их шаблон.
В режиме префаба упаковка недоступна
Генераторы и модификаторы
Генераторы создают содержимое по правилу: спираль, сетку, фрактал, волну, дождь снарядов, веер лучей. Вы задаёте окно кадров, слой и сид и получаете объекты. Оценку результата видно до того, как вы что-то нажали
Модификаторы работают так же, но с тем, что уже есть: подгоняют промежутки, разносят их, квантуют ключи, пересчитывают частоту кадров, удаляют содержимое в окне
Между уровнями: библиотеки устройства
Всё, что выше, работает внутри одного уровня. Из уровня в уровень переходят только библиотеки устройства
Темы, эффекты, фигуры и префабы экспортируются из уровня и импортируются в другой. Библиотеки лежат рядом с папкой уровней, поэтому отправленный уровень несёт свою копию