Москва: проверенные б/у ноутбуки с гарантией и проверкой перед оплатой
+7 906 722-94-45

Главная → Статьи → Нулл-объекты в After Effects: родительство и иерархия слоёв

Нулл-объекты в After Effects: как устроено родительство и что оно не передаёт

Как работают нулл-объекты и родительство в After Effects: какие свойства наследуются, что происходит с непрозрачностью, как привязать группу слоёв и не сломать анимацию.

Нулл-объекты в After Effects: как устроено родительство и что оно не передаёт

Анимация группы объектов почти всегда строится одинаково: создаётся невидимый слой-контроллер, к нему привязываются видимые слои, и дальше анимируется только он.

Это называется parenting, а контроллер — null object. Механика простая, но у неё есть ровно одно свойство, которое нас не наследуется, и о нём забывают чаще всего.

Что передаётся, а что нет

Документация формулирует точно: родительство влияет на все трансформации — Position, Scale, Rotation, Orientation (для 3D-слоёв) — но не на Opacity.

То есть если уменьшить прозрачность нулла, дочерние слои не станут прозрачными.

Это первое, о чём стоит помнить: opacity не наследуется. Для групповой прозрачности нужен adjustment layer с эффектом или отдельная настройка каждого слоя.

Один родитель, много детей

Правила из документации:

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

Последнее важно: родительство не «замораживает» ребёнка. Его собственные ключевые кадры продолжают работать, просто отсчитываются в системе координат родителя.

Что такое нулл

Нулл — невидимый слой, у которого есть все свойства обычного слоя. Он нужен, чтобы быть родителем, не появляясь в кадре.

Документация: нулл виден только в панели Composition и Layer, отображается прямоугольным контуром с маркерами. Эффекты на нуллах не видны.

Создание: Layer → New → Null Object.

В композиции может быть любое количество нуллов.

Как привязать

Два способа:

  1. Pick whip — спиральная иконка в колонке Parent таймлайна. Тянуть от дочернего слоя к родителю.
  2. Выпадающий список в той же колонке — выбрать родителя по имени.

Если колонки Parent не видно, её включают через меню таймлайна: Columns → Parent.

Несколько слоёв можно привязать сразу: выделить их и потянуть pick whip с любого — привяжутся все.

Прыжок или сохранение позиции

Тонкость, которая ломает анимацию при неаккуратном использовании.

При создании связи можно выбрать:

  • ребёнок принимает трансформации родителя — тогда он «прыгает» в позицию родителя;
  • ребёнок сохраняет свои значения — тогда остаётся на месте, но дальше следует за родителем.

Документация описывает и приём с клавишей Shift: если удерживать её при привязке, дочерний слой перемещается к позиции родителя.

Это удобно, когда нужно прикрепить объект к нуллу, созданному трекером камеры: слой встанет ровно туда, где находится контроллер.

Чего нельзя сделать

Анимировать назначение родителя. Документация прямо говорит: нельзя в один момент времени назначить слой родителем, а в другой — снять это. Связь статична на протяжении слоя.

Если нужно «переключить» управление, используют другие приёмы: отдельные нуллы с разными периодами активности, выражения или дублирование слоя.

Передать прозрачность. Уже упоминалось, но повторим: opacity не наследуется.

Сгруппировать для эффекта. Нулл не применяет эффекты к детям. Для этого нужен adjustment layer.

Практическая схема: контроллер для сцены

  1. Создать нулл.
  2. Переименовать: CTRL_scene.
  3. Разместить в логической точке — центре сцены или точке вращения.
  4. Выделить все объекты сцены.
  5. Привязать их pick whip к нуллу.
  6. Анимировать только нулл.

В таймлайне получится один набор ключевых кадров вместо десяти. Изменение тайминга становится одной правкой.

Практическая схема: 3D-текст на трекере

  1. Прогнать 3D Camera Tracker.
  2. Создать Null на нужной плоскости.
  3. Создать текст, включить у него 3D.
  4. Привязать текст к нуллу с зажатым Shift, чтобы он встал в позицию контроллера.
  5. Дальше двигать только нулл.

Без Shift текст останется в центре композиции, и его придётся совмещать вручную.

Иерархия глубже одного уровня

Нуллы можно выстраивать в цепочки: нулл-родитель, нулл-ребёнок, слои.

Это удобно, когда нужна составная анимация: общий контроллер двигает сцену, вложенный вращает отдельный элемент.

Цена — сложность отладки. Если слой ведёт себя странно, проверьте всю цепочку: ошибка может быть на два уровня выше.

Рендер и производительность

Нуллы не рендерятся и почти не влияют на скорость. Родительство — математическая операция, а не эффект.

Но глубокая иерархия усложняет кэширование: при движении верхнего нулла пересчитываются все дочерние слои. На тяжёлой сцене это заметно.

Нуллы и выражения

Нулл часто используют как «пульт» для выражений.

Схема: создать нулл, добавить к нему слайдер-эффекты (Effect → Expression Controls → Slider Control), а в выражениях слоёв ссылаться на эти слайдеры через pick whip. Тогда один ползунок управляет десятком параметров.

Плюс — все настройки собраны в одном месте. Минус — выражения пересчитываются каждый кадр, и на тяжёлой сцене это добавляет нагрузку.

Документация по layer properties напоминает: нулл виден только в панели композиции, эффекты на нём не рендерятся. Для слайдеров это идеально.

Когда нулл хуже, чем шейп-слой

Нулл — не единственный контейнер. Шейп-слой с фигурой тоже может быть родителем и при этом рендерится.

Разница в задачах. Нулл нужен, когда контроллер не должен быть виден. Если вам нужен видимый элемент, к которому крепится группа (например, стрелка-указатель на схеме), берите шейп-слой: он и родитель, и объект.

Ещё вариант — adjustment layer: он рендерится как эффект поверх детей, но не как геометрия.

Правило простое: контейнер выбирается по тому, должен ли он быть виден в кадре.

Частые ошибки

Ждать, что opacity передастся. Не передастся.

Забыть про Shift при привязке к трекеру. Объект остаётся в центре.

Пытаться анимировать смену родителя. Невозможно.

Привязывать к слою, который сам анимирован. Двойная трансформация.

Строить цепочку из пяти нуллов без нужды. Отладка превращается в квест.

FAQ

Что такое нулл-объект?

Невидимый слой, который используют как родителя для других слоёв.

Наследуется ли прозрачность?

Нет, parenting не влияет на Opacity.

Сколько родителей может быть у слоя?

Один.

Как привязать слой к нуллу?

Pick whip в колонке Parent или выбор из списка.

Можно ли менять родителя во времени?

Нет, связь фиксирована на протяжении слоя.

Похожие материалы