用户指南 取消(C)

使用数据驱动的动画

  1. After Effects 用户指南
  2. Beta 版
    1. Beta 版项目概述
    2. After Effects Beta 版主页
  3. 快速入门
    1. After Effects 快速入门
    2. After Effects 的新增功能 
    3. 发行说明 | After Effects
    4. After Effects 系统要求
    5. After Effects 中的键盘快捷键
    6. 支持的文件格式 | After Effects
    7. 硬件建议
    8. 适用于 Apple Silicon 的 After Effects
    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. 使用“位移路径”形状效果更改形状
    6. 创建形状
    7. 创建蒙版
    8. 使用内容识别填充面板,移除视频中的对象
    9. Roto 笔刷和调整遮罩
  9. 图层、标记和摄像机
    1. 选择和排列图层
    2. 混合模式和图层样式
    3. 3D 图层
    4. 图层属性
    5. 创建图层
    6. 管理图层
    7. 图层标记和合成标记
    8. 摄像机、光和目标点
  10. 动画、关键帧、运动跟踪和抠像
    1. 动画
      1. 动画基础知识
      2. 使用人偶工具制作动画
      3. 管理形状路径和蒙版并对其进行动画制作
      4. 使用 After Effects 为 Sketch 和 Capture 形状制作动画
      5. 分类动画工具
      6. 使用数据驱动的动画
    2. 关键帧
      1. 关键帧插值
      2. 设置、选择和删除关键帧
      3. 编辑、移动和复制关键帧
    3. 运动跟踪
      1. 跟踪和稳定运动
      2. 人脸跟踪
      3. 蒙版跟踪
      4. 蒙版引用
      5. 速度
      6. 时间拉伸和时间重映射
      7. 时间码和时间显示单位
    4. 抠像
      1. 抠像
      2. 抠像效果
  11. 透明度与合成
    1. 合成和透明度概述及资源
    2. Alpha 通道和遮罩
    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 与旧版 ExtendScript 表达式引擎之间的语法差别
      5. 正在编辑表达式
      6. 表达式错误
      7. 使用表达式编辑器
      8. 使用表达式编辑和访问文本属性
      9. 表达式语言引用
      10. 表达式示例
    2. 自动化
      1. 自动化
      2. 脚本
  15. 沉浸式视频、VR 和 3D
    1. 在 After Effects 中构造 VR 环境
    2. 应用沉浸式视频效果
    3. 用于 VR/360 视频的合成工具
    4. 高级 3D 渲染器
    5. 将 3D 模型导入并添加到合成中
    6. 从 Creative Cloud Libraries 导入3D 模型
    7. 基于图像的光照
    8. 从 3D 模型中提取光线和相机并为其制作动画
    9. 跟踪 3D 摄像机运动
    10. 投射和接受阴影
    11. 嵌入的 3D 模型动画
    12. 阴影捕手
    13. 3D 深度数据提取
    14. 修改 3D 图层的素材属性
    15. 使用 3D 设计空间
    16. 3D 变换 Gizmo
    17. 使用 3D 动画执行更多操作
    18. 使用 Mercury 3D 引擎实时预览对 3D 设计的更改
    19. 向图形添加响应式设计
  16. 视图和预览
    1. 预览
    2. 使用 Mercury Transmit 进行视频预览
    3. 修改和使用视图
  17. 渲染和导出
    1. 渲染和导出的基础知识
    2. After Effects 中的 H.264 编码
    3. 将 After Effects 项目导出为 Adobe Premiere Pro 项目
    4. 转换影片
    5. 多帧渲染
    6. 自动渲染和网络渲染
    7. 渲染和导出静止图像及静止图像序列
    8. 在 After Effects 中使用 GoPro CineForm 编解码器
  18. 使用其他应用程序
    1. Dynamic Link 和 After Effects
    2. 使用 After Effects 和其他应用程序
      1. 将 After Effects 项目导出为 Premiere Pro 项目
    3. After Effects 中的同步设置
    4. After Effects 中的 Creative Cloud Libraries
    5. 增效工具
    6. Cinema 4D 和 Cineware
  19. 协作:Frame.io 和团队项目
    1. 在 Premiere Pro 和 After Effects 中协作
    2. Frame.io
      1. 安装和激活 Frame.io
      2. 将 Frame.io 与 Premiere Pro 和 After Effects 搭配使用
      3. 常见问题解答
    3. 团队项目
      1. 开始使用团队项目
      2. 创建团队项目
      3. 使用团队项目进行协作
  20. 内存、存储、性能
    1. 内存和存储
    2. After Effects 处理预览时内存不足问题的方式    
    3. 提高性能
    4. 首选项
    5. After Effects 的 GPU 和 GPU 驱动程序要求
  21. 知识库
    1. 已知问题
    2. 已修复的问题
    3. 常见问题解答
    4. After Effects 和 macOS Ventura
    5. After Effects 处理预览时内存不足问题的方式

使用此文档了解如何使用数据驱动的动画。

数据驱动的动画是使用从各种数据源收集的实时数据创建的,这些数据源驱动着合成中的动画。您可以使用来自多个数据源的数据。数据可以为静态或随时间变化。将数据导入 After Effects 项目并将其用作输入,用于对图形、字符、控件视觉效果、电影字幕以及其他动态图形进行动画制作。

数据驱动的动画示例
数据驱动的动画示例

数据源

您可以使用几乎所有可能的来源的数据,例如:

  • 设备生成的数据文件 – 来自通过传感器记录活动并以不同文件格式对其进行存储的设备(例如健身跟踪器)的数据。这是随时间变化的数据,包括速度、高度、距离、心率以及用户活动的各种其他参数。
  • 用户生成的静态数据 – 可以更改以驱动图形的全局静态数据,例如调查结果。用户创建的数据文件可以为全局数据提供工作流程。
  • URL – 来自网站的实时数据,例如用户浏览网页的登入和退出路径。
  • 元数据 – 嵌入在视频文件元数据中的数据。

输入格式

您可以导入下列格式的数据文件:

  • JSON
  • MGJSON
  • CSV
  • TSV
  • BVH

如果您的数据文件采用其他格式,请将其转换为任何受支持的导入文件格式,然后将其导入 After Effects 项目。有多种转换工具可用于将数据文件转换为 After Effects 支持的格式。

支持标准 JSON (.json)

您可以将标准 JSON 文件作为素材导入到 After Effects 中,数据文件会在后台运行。After Effects 会直接引用这些数据文件中的数据来驱动项目中的动画。在“时间轴”面板中,JSON 素材不会表现为数据流。您可以使用表达式作为计算的 JSON 对象来引用数据。

您可以修改表达式以更改数据的引用方式。您可以在文本编辑器中编写数据,After Effects 将引用这些数据来驱动动画。JSON 支持基于 JSON 架构,该架构指定和定义应用程序如何使用和修改 JSON 数据。

JSON 的基本数据类型为:

  • 数字:带符号的十进制数字。
  • 字符串:零个或多个 Unicode 字符的序列。
  • 布尔值:值 true 或 false。
  • 数组:零个或多个值的有序列表。
  • 对象:名称或值对的无序集合,其中名称(键)是字符串。
  • Null:一个空值,使用单词“null”。
注意:

如果打算使用 Adobe Media Encoder 或将合成链接到 Premiere Pro,请将数据源文件添加到时间轴,而不是使用表达式来引用驻留在项目面板中的数据条目。将数据文件添加为合成图层还可确保在选择收集文件时复制该数据文件。

在 After Effects 中使用 JSON 文件

要处理标准 JSON 文件,请使用以下步骤:

  1. 选择文件 > 导入 > 文件

  2. 选择 .JSON 文件并选择打开

  3. 该文件将添加到项目窗口。使用素材创建合成。

  4. 向该合成中添加纯色。要添加纯色,请选择图层 > 新建 > 纯色

  5. 时间轴面板中,旋转打开纯色图层的属性并打开不透明度参数,方法是按住 Alt单击(在 Windows 中),以及按住 单击(在 macOS 中)。

  6. 在表达式中更改数据以修改动画。您可以控制 JSON 数据和存储所有信息的数据文件。

  7. 您也可以将 JSON 文件替换为另一个 JSON 文件,以更改引用的数据。要进行替换,请选择“替换素材”>“文件”,然后从计算机打开新文件。

要使用数据,您可以对想要数据驱动的属性应用表达式,然后执行以下操作:

  1. 使用 sourceData 属性读取 .JSON 文件中的数据。例如:

    var sampleData = footage(“sampleson”)ourceData;
  2. 要返回其值,请引用 JSON 数据内的特定属性。例如:

    myData.engineData.RPM 或 myData.latitude.value。

支持动态图形 JSON (.mgJSON)

可以在项目中导入 MGJSON 数据文件作为素材。将数据素材添加到合成中时,数据属性流将分组到顶层组“数据”中。数据组将素材数据显示为属性。数据组中的每个属性都通过表达式链接回使用表达式 footage("foo.mgjson").dataValue(N) 访问数据文件值的素材文件。此处,N 指文件中数据流的路径。MGJSON 基于一个架构,它旨在简化 After Effects 中的引用和导入数据流。

每个数据属性都会应用一个表达式,将该属性链接到 MGJSON 文件中的数据。如果源 MGJSON 文件发生变化,数据属性值会自动更新。

“时间轴”面板中,您可以旋转打开“数据”图层,并使用关联器将参数链接到其他参数。这些更改将自动填充。

在 After Effects 中使用 MGJSON 素材

要处理 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”重命名为“Race Camera 1”,则您还需要更改 mgJSON 文件中的 fileName 值进行匹配。fileName 引用的图层无需是具有源文件的素材项,也可以是纯色图层、嵌套合成或其他图层类型。

正 frameNumber 值会使目标图层向左偏移(在数据图层之前)。负 frameNumber 值会使目标图层向右偏移(在数据图层之后)。frameNumber 值等于 0 时,将目标图层的起点与数据图层的起点对齐。

支持 CSV (.csv) 和 TSV(.tsv 或 .txt)

您可以将逗号分隔值 (.csv) 和制表符分隔值(.tsv 或 .txt)文件作为素材导入 After Effects 并将其用作数据源。CSV 和 TSV 文件存储表格数据,采用纯文本格式,且值按逗号字符或制表符字符分隔。CSV 和 TSV 数据文件的工作方式与 JSON 文件类似。

要在 After Effects 中使用 CSV 或 TSV 数据文件,请按照以下步骤操作:

  1. 将 CSV 或 TSV 文件作为素材导入项目中,像您导入视频、音频或其他文件一样。使用以下任一方法将文件作为素材导入:

    • 选择文件 > 导入 > 文件
    • 右键单击项目面板,然后选择导入 > 文件类型
    • 双击“项目”面板。
  2. 该文件将添加到项目窗口。使用文件创建合成。

  3. “时间轴”面板中,旋转打开素材的属性。使用“表达式”关联器或“属性链接”关联器将合成中图层的数据属性链接到另一个图层。要打开表达式文本字段,请按住 Shift 键并单击与图层名称相对的计时器图标。您还可以通过编辑 > 带属性链接复制命令链接数据属性。

    要了解时间轴中的图层数据属性,请参阅数据属性基础知识

  4. 要引用数据素材文件,请对数据要驱动的属性使用表达式。使用 dataValue() 素材属性从指定行和列读取数据。行和列为零索引。例如,footage("sample.tsv").dataValue([15,1]) 返回第 2 列第 16 行的值。

数据属性基础知识

当您向合成添加 JSON、CSV 或 TSV 文件并打开属性时,属性仅包含“数据”属性组,而不是“变换”属性组。数据属性组包含文件中定义的数据层次结构。

“时间轴”面板中的 JSON 数据属性组
“时间轴”面板中的 JSON 数据属性组

“时间轴”面板中的 CSV 和 TSV 数据属性组
“时间轴”面板中的 CSV 和 TSV 数据属性组

此数据组类似于 After Effects 处理动态图形 JSON (.mgJSON) 文件的方式。区别是 JSON、CSV 和 TSV 仅可包含静态数据值,而 mgJSON 可以包含动态数据(随时间变化的数据)。

每个数据属性都会应用一个表达式,将该属性链接到 JSON、CSV 或 TSV 文件中的数据。如果更改源数据文件,数据属性值将反映所做的更改。

使用“属性链接”关联器链接属性

如果您不想编写复杂表达式,可以使用“属性链接”关联器,编辑 > 带属性链接复制命令将数据属性链接到其他图层的属性。链接图层时,属性链接关联器将自动编写表达式。

自定义表达式函数库 - JSX

在 After Effects 15.0 中,可以导入定义自定义 JavaScript 函数的 JSON 文件,该文件可用作自定义表达式函数的库。在 After Effects 15.1 中,JavaScrpt 对象不是 JSON 的合法语法。After Effects 15.1 使用另外一种严格的 JSON 解析器,该解析器不允许导入包含非法语法的 JSON 文件。

如果您尝试在 After Effects 15.1 中导入定义了 JavaScript 函数的 JSON 文件,或打开包含此类文件的项目,After Effects 将显示错误。

为了避免此问题,您可以将 JavaScript 语法扩展文件 (.jsx) 导入到 After Effects 15.1 中。JSX 文件的内容可以与导入到 After Effects 15.0 中的 JSON 文件相同,您仅需将文件名扩展更改为 .jsx。如果打开包含无效 JSON 文件的现有项目,请使用文件 > 替换素材将 JSON 文件替换为 JSX 文件。对 JSON 文件的表达式引用将替换为对 JSX 文件的引用。

数据驱动的动画的已知问题

在 After Effects 中使用数据驱动的动画时,可能会遇到几个问题。有关完整列表,请参阅数据驱动的动画的已知问题

 Adobe

更快、更轻松地获得帮助

新用户?