Pre-compose в After Effects: зачем нужен Collapse Transformations и когда он ломает картинку
Кнопка с иконкой звезды в таймлайне After Effects — источник половины непонимания в композитинге. У неё два разных названия и две разные функции, и включать её «на всякий случай» нельзя.
Разберём по документации Adobe.
Что делает Pre-compose
Документация: Pre-compose помещает выделенные слои в новую композицию и заменяет их в исходной одним слоем, который представляет новую композицию.
Клавиши: Ctrl+Shift+C на Windows, Cmd+Shift+C на macOS.
При создании предлагается выбор, что делать с атрибутами:
- оставить все атрибуты в исходной композиции;
- перенести все атрибуты в новую;
- оставить только эффекты.
Новая композиция появляется в Project panel и доступна для использования в любой другой композиции.
Стандартный порядок рендера
Чтобы понять Collapse, нужно знать базовый порядок. Документация описывает его так: внутри растрового слоя элементы применяются в порядке
- маски,
- эффекты,
- трансформации,
- стили слоя.
Для непрерывно растеризуемых векторных слоёв порядок другой: маски, затем трансформации, затем эффекты.
Композиция рендерится снизу вверх: нижний слой первым.
Что делает Collapse Transformations
Если для вложенной композиции включён Collapse Transformations, трансформации вложенной композиции не выполняются до того, как отрендерятся маски и эффекты содержащей композиции.
Это позволяет объединить — «схлопнуть» — трансформации вложенной и содержащей композиций в одну операцию.
Пример из документации: слой уменьшен вдвое внутри вложенной композиции, а вложенная композиция увеличена вдвое в содержащей. Без Collapse выполняются две трансформации с потерей данных. С Collapse — одна, которая ничего не делает, потому что они взаимно компенсируются.
Continuously Rasterize — та же кнопка, другое имя
Для векторных слоёв (шейпы, текст, векторная графика) на этом же месте находится Continuously Rasterize.
Документация: текст и шейп-слои всегда непрерывно растеризуются. Для векторных слоёв, которые не растеризуются непрерывно, действует то же правило со «схлопыванием».
Практическая разница:
- Collapse Transformations — про композиции (comp layer);
- Continuously Rasterize — про векторные слои.
Иконка одна, поведение зависит от типа слоя.
Что ломается при включении
Это главный практический раздел. Когда трансформации схлопнуты, эффекты на слое композиции применяются к каждому слою внутри неё, а не к общему результату.
Последствия:
- Эффект на прекомпе работает иначе. Например, размытие или свечение, применённое к прекомпу, при Collapse может дать совсем другой результат.
- Режимы наложения начинают взаимодействовать со слоями содержащей композиции — это иногда нужно, но часто неожиданно.
- Adjustment layer внутри прекомпа начинает влиять на слои под прекомпом в основной композиции.
- Нельзя задать свойства прекомпа целиком — режим наложения, качество, motion blur. Документация по 3D-слоям прямо это отмечает.
3D и Collapse
Отдельный важный случай. Документация по 3D-слоям: прекомп с включённым Collapse не мешает взаимодействию 3D-слоёв по обе стороны — при условии, что все слои внутри прекомпа сами 3D.
Схлопывание раскрывает 3D-свойства слоёв прекомпа. Каждый 3D-слой композитится в основную композицию отдельно, вместо создания единого 2D-композита.
Практически это значит: камера и свет основной композиции начинают действовать на 3D-слои внутри прекомпа. Камера и свет самого прекомпа игнорируются.
Когда включать
- прекомп содержит 3D-слои, а камера — в основной композиции;
- нужен adjustment layer, действующий через границу прекомпа;
- прекомп масштабируется, и важно сохранить резкость векторов;
- нужны режимы наложения, взаимодействующие с внешними слоями.
Когда не включать
- прекомп используется как матта для другого слоя;
- эффекты прекомпа не должны взаимодействовать с эффектами основной композиции;
- нужен полный контроль над свойствами прекомпа как единого слоя;
- прекомп тяжёлый по эффектам и рендерится отдельно.
Эффект-контрольные точки
Документация по эффектам уточняет: контрольные точки эффекта находятся в пространстве слоя для слоёв без непрерывной растеризации. Если слой растеризуется непрерывно или трансформации схлопнуты, точки переходят в пространство композиции.
Это объясняет, почему после включения Collapse эффект «съезжает»: его точки привязки сменили систему координат.
Практический пример: масштабирование вектора
Классический сценарий — логотип из Illustrator, который нужно увеличить.
- Импортировать AI-файл.
- Увеличить масштаб. Края становятся мягкими.
- Включить Continuously Rasterize — логотип перерисовывается в новом масштабе.
Без этого After Effects растеризует вектор один раз в исходном размере, а потом масштабирует пиксели.
Практический пример: 3D-сцена внутри прекомпа
- Собрать объекты в отдельной композиции как 3D-слои.
- Поместить композицию в основную.
- Включить Collapse Transformations.
- Добавить камеру и свет в основную композицию.
Объекты внутри начнут реагировать на внешнюю камеру.
Производительность
Схлопывание меняет не только картинку, но и стоимость рендера. Слои прекомпа обрабатываются по отдельности — на тяжёлых эффектах это может быть медленнее, чем рендер единого 2D-композита.
На ноутбуке с 16 ГБ ОЗУ разница заметна на проектах с глубокой вложенностью. Если превью перестало обновляться, попробуйте выключить Collapse и сравнить.
Что проверить перед включением
Прежде чем нажимать переключатель, ответьте на три вопроса.
- Есть ли на слое прекомпа эффекты? Если да, включение изменит результат — эффекты начнут применяться к каждому внутреннему слою.
- Нужны ли свойства прекомпа целиком? Режим наложения, качество и motion blur после включения задать нельзя.
- Используется ли прекомп как матта? Тогда оставьте переключатель выключенным.
Если все три ответа «нет» и при этом внутри есть 3D-слои, векторы или adjustment layer — включайте.
Проверка результата занимает один кадр: поставьте плейхед на характерный момент, сравните картинку до и после. Расхождение в цвете или резкости сразу покажет, что эффекты начали работать иначе.
Частые ошибки
Включать Collapse «для резкости» на прекомпе с эффектами. Результат изменится непредсказуемо.
Путать с настройкой качества слоя. Это разные вещи.
Ждать, что вложенная камера сохранится. При Collapse работает камера основной композиции.
Забывать про исчезновение motion blur прекомпа. Это документированное следствие.
Включать Collapse на прекомпе-матте. Приведёт к неверному результату.
FAQ
Collapse Transformations и Continuously Rasterize — одно и то же?
Кнопка одна, но функция зависит от типа слоя: для композиций — Collapse, для векторов — Rasterize.
Где находится переключатель?
В колонке Switches таймлайна. Если её не видно, переключите Toggle Switches/Modes.
Почему после включения изменился эффект?
Эффекты стали применяться к каждому слою внутри прекомпа отдельно.
Сохраняется ли motion blur прекомпа?
Нет, при Collapse нельзя задать motion blur для прекомпа целиком.
Как быть с 3D-камерой внутри прекомпа?
При Collapse она перестаёт работать — используется камера основной композиции.