Руководство пользователя Отмена

Понимание языка выражений

  1. Руководство пользователя After Effects
  2. Выпуски бета-версии
    1. Обзор программы бета-тестирования
    2. Домашняя страница бета-версии After Effects
  3. Начало работы
    1. Начало работы с After Effects
    2. Новые возможности After Effects 
    3. Сведения о выпуске | After Effects
    4. Системные требования для After Effects
    5. Сочетания клавиш в After Effects
    6. Поддерживаемые форматы файлов | After Effects
    7. Рекомендации по аппаратному обеспечению
    8. After Effects для компьютеров с процессорами Apple
    9. Планирование и настройка
  4. Рабочие среды
    1. Общие элементы пользовательского интерфейса
    2. Знакомство с интерфейсом After Effects
    3. Рабочие процессы
    4. Рабочие среды, панели управления, программы просмотра
  5. Проекты и композиции
    1. Проекты
    2. Основы создания композиции
    3. Предварительная композиция, вложение и предварительный рендеринг
    4. Просмотр подробных сведений о производительности с помощью инструмента «Профайлер композиций»
    5. Модуль рендеринга композиций CINEMA 4D
  6. Импорт видеоряда
    1. Подготовка и импорт неподвижных изображений
    2. Импорт из After Effects и Adobe Premiere Pro
    3. Импорт и интерпретация видео и аудио
    4. Подготовка и импорт файлов 3D-изображений
    5. Импорт и интерпретация элементов видеоряда
    6. Работа с элементами видеоряда
    7. Определение точек редактирования с помощью функции «Определение изменения сцен»
    8. Метаданные XMP
  7. Текст и графические элементы
    1. Текст
      1. Форматирование символов и панель символов
      2. Эффекты текста
      3. Создание и редактирование текстовых слоев
      4. Форматирование абзацев и панель «Абзац»
      5. Экструзия слоев текста и слоев-фигур
      6. Анимация текста
      7. Примеры и ресурсы для текстовой анимации
      8. Шаблоны динамического текста
    2. Анимационный дизайн
      1. Работа с шаблонами анимационного дизайна в After Effects
      2. Использование выражений для создания раскрывающихся списков в шаблонах анимационного дизайна
      3. Работа с основными свойствами для создания шаблонов анимационного дизайна
      4. Замена изображений и видео в шаблонах анимационного дизайна и основных свойствах
      5. Быстрая и простая анимация с помощью панели «Свойства»
  8. Рисование, заливка цветом и контуры
    1. Обзор слоев-фигур, контуров и векторных изображений
    2. Инструменты рисования: «Кисть», «Штамп» и «Ластик»
    3. Сглаживание обводки фигуры
    4. Атрибуты фигур, операции заливки цветом и операции с контурами для слоев-фигур
    5. Использование эффекта фигуры «Cмещение контура» для изменения фигур
    6. Создание фигур
    7. Создание масок
    8. Удаление объектов из видеоматериалов с помощью панели «Заливка с учетом содержимого»
    9. Инструменты «Кисть для ротоскопии» и «Уточнить подложку»
  9. Слои, маркеры и камера
    1. Выделение и упорядочивание слоев
    2. Режимы наложения и стили слоев
    3. 3D-слои
    4. Свойства слоя
    5. Создание слоев
    6. Управление слоями
    7. Маркеры слоя и маркеры композиции
    8. Камеры, освещение и точки обзора
  10. Анимация, ключевые кадры, отслеживание движения и прозрачное наложение
    1. Анимация
      1. Основы анимации
      2. Анимация с помощью инструментов «Марионетка»
      3. Управление и анимация контуров фигур и масок
      4. Анимация фигур Sketch и Capture с помощью After Effects
      5. Инструменты анимации
      6. Работа с анимацией на основе данных
    2. Ключевой кадр
      1. Интерполяция ключевого кадра
      2. Установка, выбор и удаление ключевых кадров
      3. Редактирование, перемещение и копирование ключевых кадров
    3. Отслеживание движения
      1. Отслеживание и стабилизация движения
      2. Отслеживание лиц
      3. Отслеживание маски
      4. Ссылка на маску
      5. Скорость
      6. Растягивание по времени и перераспределение времени
      7. Тайм-код и единицы отображения времени
    4. Прозрачное наложение
      1. Прозрачное наложение
      2. Эффекты прозрачного наложения
  11. Прозрачность и композиция
    1. Обзор композиции и прозрачности и соответствующие ресурсы
    2. Альфа-каналы и маски
    3. Подложки дорожек и перемещающиеся подложки
  12. Корректирование цвета
    1. Основы работы с цветом
    2. Управление цветом
    3. Эффекты цветокоррекции
    4. Управление цветом OpenColorIO и ACES
  13. Эффекты и стили анимации
    1. Обзор эффектов и стилей анимации
    2. Список эффектов
    3. Диспетчер эффектов
    4. Эффекты имитации
    5. Эффекты стилизации
    6. Аудиоэффекты
    7. Эффекты искажения
    8. Эффекты перспективы
    9. Эффекты канала
    10. Эффекты создания
    11. Эффекты времени
    12. Эффекты перехода
    13. Эффект «Устранение эффекта плавающего затвора»
    14. Эффекты «Размытие» и «Резкость»
    15. Эффекты 3D-канала
    16. Программные эффекты
    17. Эффекты подложки
    18. Эффекты «Шум» и «Зернистость»
    19. Эффект «Увеличение с сохранением уровня детализации»
    20. Устаревшие эффекты
  14. Выражения и автоматизация
    1. Выражения
      1. Основы работы с выражениями
      2. Понимание языка выражений
      3. Использование элементов управления выражениями
      4. Различия в синтаксисе между движками выражений JavaScript и Legacy ExtendScript
      5. Управление выражениями
      6. Ошибки выражения
      7. Использование редактора выражений
      8. Использование выражений для изменения свойств текста и доступа к ним
      9. Справочник языка выражений
      10. Примеры выражений
    2. Автоматизация
      1. Автоматизация
      2. Сценарии
  15. Видео с погружением, VR и 3D
    1. Создание сред VR в After Effects
    2. Применение видеоэффектов с эффектом погружения
    3. Инструменты составления композиций для видеоизображений VR/360
    4. Модуль рендеринга Advanced 3D
    5. Импорт и добавление 3D-моделей в композицию
    6. Импорт 3D-моделей из Creative Cloud Libraries
    7. Освещение на основе изображения
    8. Извлечение и анимация источников света и камер из 3D-моделей
    9. Отслеживание движений камеры в трехмерном пространстве
    10. Отбрасывание и принятие теней
    11. Встроенные анимации 3D-моделей
    12. Ограничитель тени
    13. Извлечение 3D-данных о глубине
    14. Изменение свойств материалов 3D-слоя
    15. Пространство для работы с трехмерными объектами
    16. Инструменты 3D-преобразования
    17. Дополнительные возможности 3D-анимации
    18. Предварительный просмотр изменений в 3D-дизайнах в режиме реального времени с помощью модуля Mercury 3D
    19. Добавление гибкого дизайна в графику 
  16. Виды и предварительный просмотр
    1. Предпросмотр
    2. Предпросмотр видео с помощью Mercury Transmit
    3. Изменение и использование представлений
  17. Рендеринг и экспорт
    1. Основы рендеринга и экспорта
    2. Кодирование H.264 в After Effects
    3. Экспорт проекта After Effects как проекта Adobe Premiere Pro
    4. Преобразование фильмов
    5. Многокадровый рендеринг
    6. Автоматический рендеринг и рендеринг по сети
    7. Рендеринг и экспорт неподвижных изображений и наборов неподвижных изображений
    8. Использование кодека GoPro CineForm в After Effects
  18. Работа с другими приложениями
    1. Dynamic Link и After Effects
    2. Работа с After Effects и другими приложениями
      1. Экспорт проекта After Effects как проекта Premiere Pro
    3. Синхронизация настроек в After Effects
    4. Библиотеки Creative Cloud Libraries в After Effects
    5. Подключаемые модули
    6. Cinema 4D и Cineware
  19. Совместная работа: Frame.io и Team Projects
    1. Совместная работа в Premiere Pro и After Effects
    2. Frame.io
      1. Установка и активация Frame.io
      2. Использование Frame.io с Premiere Pro и After Effects
      3. Часто задаваемые вопросы
    3. Team Projects
      1. Начало работы с Team Projects
      2. Создание Team Project
      3. Совместная работа с помощью Team Projects
  20. Память, хранилище, производительность
    1. Память и хранилище
    2. Как After Effects справляется с проблемами нехватки памяти при предварительном просмотре    
    3. Повышение производительности
    4. Установки
    5. Требования к графическому процессору и драйверу графического процессора для After Effects
  21. База знаний
    1. Выявленные неполадки
    2. Исправленные ошибки
    3. Часто задаваемые вопросы
    4. After Effects и macOS Ventura
    5. Как After Effects справляется с проблемами нехватки памяти при предварительном просмотре

Изучайте язык выражений и используйте его для создания различных выражений в After Effects.

Язык выражений After Effects основан на JavaScript с расширенным набором встроенных объектов. В After Effects используется основной стандартный язык JavaScript, а не расширения, специфичные для веб-браузера, а также он содержит собственный набор объектов расширений, таких как Слой, Композиция, Видеоряд и Камера.

Хотя язык выражений основан на языке разработки сценариев, существует тонкое, но существенное различие между сценарием и выражением. Выражения отдают команды свойству сделать что-либо, тогда как сценарии отдают команды что-либо сделать приложению.

При создании выражений следует помнить следующее.

  • Значение выражения является значением последнего вычисленного оператора. Это обычно последняя строка выражения. В своей простейшей форме значение выражения создается последней переменной или функцией, вызванной в выражении, в зависимости от порядка расчета. Однако это также может быть любое значение, которое вы явно указываете в качестве значения для возврата. Сюда могут входить значения, использованные гораздо раньше в выражении для целей отладки, или значения вне явно объявленных функций и переменных, которые не обрабатываются в том порядке, в котором они были записаны.
  • JavaScript — это регистрозависимый язык.
  • Функции не следует объявлять в конце выражения.

Основы языка

В JavaScript значение, хранимое в объекте, называется свойством. Однако в After Effects термин «свойство» используется в отношении компонентов слоя, как это определено на панели Временная шкала. По этой причине в After Effects свойства JavaScript рассматриваются в качестве методов или атрибутов. Как правило, отличие между методом и атрибутом заключается в том, что метод обычно выполняет какую-либо операцию для создания своего выходного (возвратного) значения, тогда как атрибут просто ссылается на существующее значение для определения своего выходного (возвратного) значения. Отличить метод от атрибута можно по наличию скобок за именем метода, в которые заключены любые входные аргументы метода.

Объект — это элемент, который может содержать другие объекты, атрибуты и методы. Композиции, слои и видеоряд — это примеры объектов. В частности, композиции, слои и видеоряд являются глобальными объектами, т. е. к ним можно устанавливать ссылку в любом контексте не ссылаясь на какой-либо объект более высокого уровня.

Получение доступа к атрибутам и методам

Для получения доступа к атрибутам и методам свойств слоя используется язык выражений. Для получения доступа к значению используйте цепочку ссылок объекта, разделенных точкой (.). Для построения цепочки из ссылок объекта с пропуском уровня слоя (например, для отсылки к свойствам эффекта, маскам или аниматорам текста) можно использовать скобки. Например, чтобы связать свойство Непрозрачность в слое А со свойством Размытость эффекта Размытие по Гауссу в слое В, введите следующее выражение в поле выражения свойства Непрозрачность для слоя А:

thisCompayer(“Layer B”)ffect(“Gaussian Blur”)(“Blurriness”)

При чтении этого выражения слева направо выполняется переход с более высокого уровня, содержащего объект, к конкретному свойству:

  • Используемый глобальный объект ссылается на текущую композицию thisComp.

  • Ссылка к определенному объекту слоя в этой композиции устанавливается по имени слоя: layer("Layer B").

  • Ссылка к определенному объекту эффекта в этом слое устанавливается по имени эффекта: effect("Gaussian Blur").

  • Ссылка к определенному свойству эффекта в этом эффекте устанавливается по имени эффекта: ("Blurriness").

Для компонента n многомерного свойства, такого как компонент Y точки управления эффектом, добавьте [n] в конце, как показано ниже:

thisCompayer(“Layer B”)ffect(“Advanced Lightning”)(“Origin”1]

Объект выражения по умолчанию является свойством, по которому выполняется написание выражения, со следующим за ним слоем, содержащим выражение, поэтому свойство указывать не требуется. Например, выражение покачивания, написанное по свойству слоя Положение, может выглядеть следующим образом:

wiggle(5, 10)  
position.wiggle(5, 10) 
thisProperty.wiggle(5, 10)

Добавьте слой и свойство при их извлечении из слоя и свойства, по которым написано выражение. Например, выражение, написанное по свойству Непрозрачность слоя В, связывающее его со свойством Поворот слоя А, будет выглядеть следующим образом:

thisCompayer(“Layer A”)otation
Примечание.

Чтобы ознакомиться с другими примерами работы выражений, используйте инструмент «Лассо» для связывания одного свойства слоя с другим и изучите созданные выражения.

Массивы и многомерные свойства

Массив – это тип объекта, хранящий упорядоченный набор чисел. Массив отображается в виде списка чисел, разделенных запятыми и заключенных в скобки, как в следующем примере:

  [10, 23]

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

  myArray = [10, 23]

Размер объекта массива — это число элементов в массиве. Размер myArray — это число 2. Разные свойства в After Effects имеют разные размеры в зависимости от числа аргументов значения, которым они обладают. В языке выражений значения свойств являются единичными значениями (объекты числа) либо массивами (объекты массива).

В следующей таблице приведены примеры некоторых свойств и их размеры.

Размеры

Свойство

1

Поворот °

Непрозрачность %

2

Масштаб [X = ширина, Y = высота]

Положение [X, Y]

Опорная точка [X, Y]

Уровни аудио [влево, вправо]

3

Масштаб [ширина, высота, глубина]

Трехмерное положение [X, Y, Z]

Трехмерная опорная точка [X, Y, Z]

Ориентация [X, Y, Z]

4

Цвет [красный, зеленый, синий, альфа]

Получить доступ к отдельным элементам объекта массива можно с помощью скобок и порядкового номера для указания требуемого элемента. Элементы в объекте массива индексируются с нуля. В предыдущем примере myArray[0] — это число 10, а myArray[1] — 23.

Следующие два выражения эквивалентны:

  [myArray[0], 5] 
  [10, 5]

Массивы свойства положения

Массивы свойства «Положение» нумеруются следующим образом:

  • position[0] – это координата X положения.

  • position[1] – это координата Y положения.

  • position[2] – это координата Z положения.

Представление цветов в массивах

Цвета представлены в виде 4D-массивов:

  • Красный
  • Зеленый
  • Синий
  • Альфа-канал

В проектах с разрядностью цвета 8 бит на канал или 16 бит на канал каждое значение в массиве цветов находится в диапазоне от 0 (черный) до 1 (белый). Например, красный может находиться в диапазоне от 0 (нет цвета) до 1 (красный). Таким образом, [0,0,0,0] соответствует черному цвету и прозрачности, а [1,1,1,1] — белому цвету и непрозрачности. В проектах с глубиной цвета 32 бит на канал допускаются значения ниже 0 и более 1.

При использовании индекса, большего, чем индекс компонента самого высокого размера в объекте массива, After Effects сообщит об ошибке. Например, myArray[2]приводит к ошибке, но position[2] возвращает координату Z положения.

Многие свойства и методы в языке выражений After Effects обрабатывают объекты массива в качестве аргументов или возвращают их в виде значений. Например, thisLayer.position является объектом массива, который является 2-размерным или 3-размерным в зависимости от того, каким является слой: двух- или трехмерным.

Примеры

Если требуется написать выражение, в котором будет сохраняться значение Y анимации свойства Положение, а значение X будет зафиксировано на 9, следует создать следующее выражение:

  y = position[1]; 
  [9,y]

Выражение можно сократить еще:

  [9, position[1]]

Это важный аспект, поэтому давайте рассмотрим еще один пример. Если требуется совместить значение положения X из слоя А со значением положения Y из слоя В, необходимо составить следующее выражение:

  x = thisCompayer(“Layer A”)osition[0  
  y = thisCompayer(“Layer B”)osition[1  
  [x]

Можно создать выражение, которое будет ссылаться только на одно значение в массиве 2D- или 3D-свойства. По умолчанию используется первое значение, пока не будет указано другое. Например, при перетаскивании инструмента «Лассо» от свойства Поворот слоя А к свойству Масштаб слоя В отобразится следующее выражение:

  thisCompayer(“Layer B”)cale[0]

По умолчанию это выражение использует первое значение свойства Масштаб, которое является шириной. Если вместо этого требуется использовать значение высоты, перетащите инструмент «Лассо» непосредственно ко второму значению, а не к имени свойства или измените выражение следующим образом:

  thisCompayer(“Layer B”)cale[1]

И наоборот, при перетаскивании инструмента «Лассо» от свойства Масштаб слоя В к свойству Поворот слоя А After Effects автоматически создает переменную, присваивает ей одномерное свойство Поворот, а затем использует эту переменную для обоих размеров свойства Масштаб:

  temp = thisComp.layer(1).transform.rotation; 
  [temp, temp]

Векторы

В After Effects многие свойства и методы используют или возвращают векторы. After Effects ссылается на массив как на вектор, если он представляет собой точку или направление в пространстве. Например, After Effects описывает положение как возврат вектора.

Однако, несмотря на то, что функция типа audioLevels возвращает двухмерное значение (уровни левого и правого каналов), она не носит название вектор, так как она не представляет собой точку или направление. Некоторые функции в After Effects принимают аргументы вектора, но они обычно бывают полезны, только если передаваемые значения представляют собой направление. Например, cross(vec1, vec2) вычисляет третий вектор, находящийся под правильными углами относительно входных векторов. Векторное произведение полезно, когда vec1 и vec2 являются векторами, представляющими собой направления в пространстве, но не только когда они представляют две произвольные коллекции чисел.

Индексы и метки

Индексация свойств Слой, Эффект и Маска в After Effects начинается с 1. Например, первый слой на панели Временная шкала — это layer(1).

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

  effect(“Colorama”)aram(“Get Phase From”)  
  effect(1)aram(2)

Время выражения

Время внутри выражения всегда находится во времени композиции (а не времени слоя) и измеряется в секундах (это не относится к выражению sourceRectAtTime()). Время по умолчанию для любого выражения представляет собой текущее время композиции, во время которого выполняется вычисление выражения. В следующих выражениях используется время композиции по умолчанию; также выражения возвращают одинаковые значения:

thisComp.layer(1).position  
thisComp.layer(1).position.valueAtTime(time)

Для использования относительного времени добавьте инкрементное значение времени к аргументу time. Например, чтобы значение Положение было на 5 секунд меньше текущего времени, используйте следующее выражение:

thisComp.layer(1).position.valueAtTime(time-5)

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

Например, если источник слоя в содержащей композиции является вложенной композицией и в содержащей композиции было перераспределено время, при получении значений положения слоя во вложенной композиции с помощью следующего выражения значения положения будут использовать время композиции по умолчанию:

comp(“nested composition”)ayer(1)osition

Однако при осуществлении доступа к слою 1 с помощью функции source значения положения будут использовать перераспределенное время:

thisCompayer(“nested composition”)ourceayer(1)osition
Примечание.

При использовании определенного времени в выражении After Effects будет игнорировать перераспределенное время.

Поскольку выражения работают со временем, измеряемым в секундах (не кадрах), иногда требуется использовать методы преобразования времени, чтобы преобразовать значения времени для выполнения операций с кадрами.

Пример. Использование справочника языка выражения для написания выражения

Следуйте указаниям в этом примере, чтобы научиться пользоваться справочником языка выражения After Effects для написания выражений. Выражение, созданное в этом примере, связывает свойство Положение сплошного слоя 2 со свойством Положение сплошного слоя 1 при сдвиге смещения сплошного слоя 2 на 2 секунды от сдвига сплошного слоя 1.

  1. Создайте два слоя со сплошной заливкой: «Сплошной 1» и «Сплошной 2».

  2. Анимируйте значения свойства Положение для слоя «Сплошной 1» с помощью ключевых кадров. (См. раздел Сведения об анимации, ключевых кадрах и выражениях).

  3. Выберите свойство Положение для слоя «Сплошной 2» и выполните команду Анимация > Добавить выражение или, удерживая клавишу ALT (Windows) либо OPTION, нажмите кнопку секундомера для этого свойства. По умолчанию отобразится следующее выражение:

      transform.position
  4. Введите следующий текст непосредственно над текстом transform.position:

      thisComp
  5. Элемент thisComp — это глобальный атрибут, значением которого является объект Comp, представляющий собой текущую композицию. Чтобы определить, что может следовать за текстом thisComp в выражении, найдите в значении возврата текст thisComp в разделе Глобальные объекты, атрибуты и методы.

    Обратите внимание, что thisComp возвращает объект Comp. В разделе Атрибуты и методы Comp найдите атрибуты и методы, которые можно использовать с объектом Comp. Одним из вариантов является layer(index). Индекс (число) внутри скобок определяет слой, который нужно использовать. В этом примере подразумевается, что слой «Сплошной 1» является первым слоем в композиции. Для извлечения значений из первого слоя активной композиции введите .layer(1) в конце выражения, чтобы получить следующее:

      thisComp.layer(1)
  6. Взгляните на ссылку элементов выражения и убедитесь, что layer(index) возвращает объект слоя. В разделе Общие атрибуты и методы слоя найдите элемент, который необходимо использовать. Например, если требуется получить значения свойства «Положение» для слоя, введите текст .position в конце выражения для получения следующего текста:

      thisComp.layer(1).position
  7. В разделе Общие атрибуты и методы слоя можно увидеть, что атрибут position возвращает свойство. В разделе Атрибуты и методы свойства найдите временной коэффициент, который можно добавить к выражению. Чтобы добавить конкретное время, например текущее время плюс 2 секунды, введите .valueAtTime(time+2) в конце выражения, чтобы получить следующее:

      thisComp.layer(1).position.valueAtTime(time+2)
  8. В разделе Атрибуты и методы свойства указано, что метод valueAtTime возвращает число или массив. Когда выражение возвращает число, массив или логическое значение (истина или ложь), добавлять другие атрибуты либо методы к выражению нельзя (однако можно добавлять знаки арифметических операций, такие как +, -, * и /).

Дополнительные ресурсы о выражениях

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

На форуме AE Enhancers также можно найти множество примеров и сведения о выражениях, сценариях и шаблонах настроек анимации.

 Adobe

Получайте помощь быстрее и проще

Новый пользователь?