В этом документе рассказывается о том, как работать с анимацией, управляемой данными

Для создания анимации, управляемой данными, используются данные, поступающие в реальном времени из различных источников. Анимации в композициях формируются на основе этих данных. Можно использовать данные из нескольких источников. Данные могут быть статическими или изменяться во времени. Можно импортировать данные в проект After Effects, а затем использовать их в качестве входных для анимации графиков, символов, управления визуальными эффектами, создания титров к фильмам и другой анимационного дизайна.

Пример анимации, управляемой данными
Пример анимации, управляемой данными

Источники данных

Можно использовать данные практически из любого доступного источника, такого как:

  • Файлы данных, формируемые устройствами. Данные с таких устройств, как фитнес-трекеры, которые записывают производимые действия с помощью датчиков и сохраняют их в файлы различных форматов. Такие изменяющиеся со временем данные включают скорость, высоту над уровнем моря, расстояние, частоту сердечных сокращений и другие параметры выполняемых пользователем действий.
  • Статические данные, формируемые пользователем. Глобальные статические данные (например, результаты опросов), которые можно изменять, чтобы управлять графикой. Созданный пользователем файл данных может обеспечить рабочий процесс для глобальных данных.
  • URL-адрес — поступающие в реальном времени данные с веб-сайтов (например, пути входа и выхода пользователя, выполняющего навигацию по веб-странице).
  • Метаданные. Внедренные описательные сведения о видеофайлах.

Форматы входных данных

Файлы данных можно импортировать в следующие форматы:

  • JSON
  • MGJSON
  • CSV
  • TSV

При наличии файлов данных в других форматах преобразуйте их в любой поддерживаемый форма импорта, а затем импортируйте в проект After Effects. Для преобразования файлов данных в форматы, поддерживаемые программой After Effects, существуют различные инструменты конвертации.

Анимация, управляемая данными

Анимация, управляемая данными

Поддержка стандарта JSON (.json)

Стандартный файл JSON можно импортировать в After Effects в виде видеоряда и файлов данных для работы в фоновом режиме. After Effects напрямую ссылается на данные в этих файлах данных для управления анимацией в проектах. Видеоряд JSON не представлен в виде потоков данных на панели Таймлайн. На данные можно ссылаться помощью выражений как на оцененный объект JSON.

Чтобы изменить способ обращения к данным, можно внести изменения в выражения. Данные, на которые ссылается After Effects для управления анимацией, можно записать в текстовом редакторе. Поддержка JSON основана на схеме JSON, которая определяет и указывает, как приложение будет использовать и изменять данные JSON.

Основные типы данных JSON:

  • Число: число с десятичным знаком.
  • Строка: последовательность символов Юникод длиной ноль или более.
  • Логическое значение: значение true или false.
  • Массив: упорядоченный список значений, в котором может быть ноль или более значений.
  • Объект: неупорядоченный набор пар имен или значений, где имена (ключи) являются строками.
  • Null: пустое значение со словом «null».

Работа с файлами JSON в After Effects

Для работы со стандартным файлом JSON выполняйте следующие действия:

  1. Выберите Файл > Импорт.

  2. Чтобы выполнить импорт, выберитефайлJSON и нажмите кнопку Открыть.

  3. Файл будет добавлен в окно проекта. Создайте композицию с этим видеорядом.

  4. Добавьте в композицию сплошную заливку. Чтобы добавить сплошную заливку, выберите Слой > Сплошной.

  5. На панели Таймлайн разверните свойства слоя со сплошной заливкой и нажмите на параметр Непрозрачность, удерживая клавишу Alt.

  6. Для внесения изменений в анимацию измените данные в выражении. Данными JSON можно управлять. Для доступа к данным используются ссылки из файла данных, где сохранена вся информация.

  7. Чтобы использовать для анимации другие данные, также можно заменить файл JSON другим файлом JSON. Чтобы выполнить замену, выберите Заменить видеоряд > Файл и откройте новый файл со своего компьютера.

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

  1. Воспользоваться атрибутом sourceData для считывания данных из файла JSON. Например:

    var sampleData = footage("sample.json").sourceData;
  2. Чтобы вернуть его значение, обратитесь к определенному свойству внутри данных JSON. Например:

    myData.engineData.RPM or myData.latitude.value.

Поддержка анимационного дизайна JSON (.mgJSON)

В качестве видеоряда можно импортировать в проект файл данных MGJSON. При добавлении в композицию данных видеоряда потоки свойств данных объединяются в новую группу верхнего уровня «Данные». В группе «Данные» данные видеоряда отображаются как свойства. Каждое свойство в этой группе данных представляет собой выражение с обратной связью с файлом видеоряда, который осуществляет доступ к значению в файле данных с помощью выражения footage("foo.mgjson").dataValue(N). Здесь N — это путь к потоку данных в файле. MGJSON работает на основе схемы, с помощью которой проще ссылаться на потоки данных и импортировать их в After Effects.

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

На панели Таймлайн можно разворачивать слои данных и связывать параметры с другими параметрами с помощью инструмента «Лассо». Изменения вносятся автоматически.

Работа с видеорядами MGJSON в After Effects

Для работы со файлом MGJSON выполняйте следующие действия:

  1. Выберите Файл > Импорт.

  2. Чтобы выполнить импорт, выберитефайл MGJSONи нажмите кнопку Открыть.

  3. Файл будет добавлен в окно проекта. Создайте композицию с этим видеорядом.

  4. Импортируйте ресурс в проект и добавьте его в композицию.

  5. На панели Таймлайн разверните свойства видеоряда.

  6. С помощью инструмента Лассо свяжите одно из свойств ресурса, например Поворот, с одним из потоков данных, имеющихся на слое данных. Теперь свойство ресурса ссылается на данные из слоя данных. Каждый поток данных, на который имеется ссылка, содержит выражение, которое получает его значение из файла видеоряда.

  7. При просмотре видеоряда ресурс анимируется на основе потока данных слоя данных.

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

  1. Импортируйте файл MGJSON в проект и перетащите его на панель Таймлайн.

  2. Щелкните слой данных правой кнопкой мыши и выберите пункт Помощник в работе с ключевыми кадрами > Создать ключевые кадры из данных в меню Помощник в работе со слоями и ключевыми кадрами.

  3. Чтобы просмотреть ключевые кадры, разверните слой данных.

Примечание.

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

Данные, передаваемые в режиме реального времени, можно также просматривать в редакторе диаграмм. Для этого нажмите на значок редактора диаграмм на панели Таймлайн.

Анимация, управляемая данными, использует справочник выражений. Дополнительные сведения см. в разделе Анимация, управляемая данными (справочник выражений).

Согласование видео по времени с данными mgJSON

Команда Слой > Время > Согласовать видео с данными смещает слои видео на различные кадры как указано в файле mgJSON. С помощью этой команды можно согласовать видео по времени с образцами данных, хранящимися в соответствующем файле mgJSON. Например, если данные были записаны во время гонки, однако время начала видео не совпадает со временем начала записанных данных, можно задать смещение, и данные будут автоматически сопоставлены с видео.

Чтобы согласовать видео по времени с данными mgJSON, выполните следующие действия:

  1. Добавьте файл .mgJSON в композицию, в которой также имеются целевые слои.
  2. Выберите слой .mgJSON и целевые слои.
  3. Выберите команду Слой > Видео > Согласовать видео с данными.

Чтобы эта команда сработала, в файле mgJSON должна присутствовать группа videoSyncTimeList, содержащая следующие элементы:

  • Имя одного или нескольких целевых слоев (fileName)
  • Число кадров (frameNumber), на которые необходимо сместить эти слои от начала слоя данных.

Например:

"videoSyncTimeList": [
  {
    "fileName": "sample1.mp4",
    "frameNumber": 1000
  },

  {
    "fileName": "sample2.mp4",
    "frameNumber": -1000
  }

Значением fileName должно быть имя выбранного слоя, а не исходное имя слоя. Если имя слоя изменить на исходное в композиции, например, переименовать слой «sample1.mp4» в «Гонка камера 1», то также необходимо будет изменить значение fileName в файле mgJSON. Слои, на которые ссылается параметр fileName, не обязательно должны быть элементами видеоряда с исходным файлом. Этими слоями также могут быть сплошные заливки, вложенные композиции или слои других видов.

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

Поддержка форматов CSV (.csv) и TSV (.tsv или .txt)

Файлы со значениями, разделенными запятой (.csv), и файлы со значениями, разделенными табуляцией (.tsv или .txt), можно импортировать в After Effects как видеоряд для использования в качестве источников данных. Файлы CSV и TSV содержат данные таблиц в формате простого текста. При этом значения разделяются либо запятыми, либо символами табуляции. Файлы данных CSV и TSV работают так же, как файлы данных JSON.

Чтобы использовать файлы данных CSV или TSV в After Effects, выполните следующие действия:

  1. Импортируйте файл CSV или TSV в проект как видеоряд (делается это так же, как импорт видео-, аудио- или других файлов).
    Для импорта файлов как видеоряда выполните одну из следующих процедур:
    • Выберите Файл > Импорт.
    • Щелкните правой кнопкой мыши панель Проект и выберите команду Импорт > Тип файла.
    • Дважды щелкните панель Проект.
  2. Файл будет добавлен в окно проекта. Создайте композицию с файлом.

  3. На панели Таймлайн разверните свойства видеоряда. Свяжите свойства данных слоя композиции с другим слоем с помощью лассо выбора выражения или лассо ссылки на свойство. Чтобы открыть текстовое поле выражения, щелкните значок таймера напротив имени слоя, удерживая нажатой клавишу Shift . Связать свойства данных также можно с помощью команды Правка > Копировать со ссылками свойства.

    Сведения о свойствах данных слоя на панели «Таймлайн» см. в разделе Общие сведения о свойствах данных.

  4.  Чтобы указать ссылку на данные видеоряда, используйте выражение для свойства, которое будут определять данные. Для считывания данных из указанной строки и столбца используйте атрибут видеоряда dataValue(). Стоки и столбцы имеют нулевой индекс. Например, выражение footage("sample.tsv").dataValue([15,1]) возвращает значение строки 16 второго столбца.

Общие сведения о свойствах данных

Если добавить JSON-, CSV- или TSV-файл к композиции и открыть свойства, в них будет содержаться только группа Свойства данных вместо группы Свойства преобразования. Группа «Свойства данных» содержит иерархию данных, определенную в файле.

Группа свойств данных JSON на панели «Таймлайн»
Группа свойств данных JSON на панели «Таймлайн»
Группа свойств данных CSV и TSV на панели «Таймлайн»
Группа свойств данных CSV и TSV на панели «Таймлайн»

Работа с этой группой данных похожа на работу After Effects с файлами Motion Graphics JSON (.mgJSON). Разница состоит в том, что файлы JSON, CSV и TSV могут содержать только статические значения данных, тогда как файлы mgJSON могут содержать динамические данные (данные, которые изменяются со временем).

К каждому отдельному свойству данных применено выражение, которое связывает это свойство с данными из JSON-, CSV- или TSV-файла. При изменении исходного файла данных эти изменения отражаются в значениях свойств данных.

Связывание свойств с помощью лассо ссылки на свойство

Если вы не хотите писать сложные выражения, можно воспользоваться лассо ссылки на свойство или командой Правка > Копировать со ссылками свойства, чтобы связать свойства данных со свойствами других слоев. При связывании слоев лассо ссылки на свойство автоматически пишет выражение.

Библиотеки пользовательских функций выражений — JSX

В After Effects 15.0 можно было импортировать файл JSON, содержащий определения пользовательских функций JavaScript. Этот файл можно было использовать как библиотеку пользовательских функций выражений. В After Effects 15.1 объекты JavaScrpt нельзя использовать для JSON. В After Effects 15.1 используется другой, более строгий, синтаксический анализатор JSON, который не позволяет импортировать файлы JSON с недопустимым синтаксисом.

Если попытаться импортировать в After Effects 15.1 файл JSON с определением функции JavaScript или открыть проект, содержащий такой файл, программа After Effects отобразит сообщение об ошибке.

Чтобы избежать этой проблемы, в After Effects 15.1 можно импортировать файл выражений синтаксиса JavaScript (.jsx). Содержание файла JSX может быть таким же, как у файла JSON, импортированного в After Effects 15.0. Нужно только изменить расширение имени файла на .jsx. Если необходимо открыть существующий проект, содержащий файл JSON, который не работает, можно заменить файл JSON файлом JSX с помощью команды Файл > Заменить видеоряд. Ссылки выражений на файл JSON заменяются ссылками на файл JSX.

Выявленные неполадки анимации, управляемой данными

Работая с анимацией, управляемой данными в After Effects, можно столкнуться с несколькими проблемами. Полный перечень этих проблем см. в разделе Выявленные неполадки анимации, управляемой данным.

Эта работа лицензируется в соответствии с лицензией Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported  На посты, размещаемые в Twitter™ и Facebook, условия Creative Commons не распространяются.

Правовые уведомления   |   Политика конфиденциальности в сети Интернет