当您想创建和链接复杂的动画,但想避免手动创建数十乃至数百个关键帧时,请尝试使用表达式。表达式是一小段代码,与脚本非常相似 – 您可以将其插入到 After Effects 项目中,以便在特定时间点为单个图层属性计算单个值。
与脚本(告知应用程序执行某些操作)不同,表达式会告诉属性执行某种操作。例如,您在屏幕上从左到右移动了一个球,但您也希望该球晃动。您可以向其应用“摆动”表达式,而不是使用关键帧对“定位”属性进行动画制作。
表达式语言基于标准的 Javascript 语言,但您不必了解 Javascript 就能入门。您可以创建表达式,方法是使用关联器或者复制简单示例并修改示例以满足您的需求。
为什么使用表达式?快速节省时间和创建动画。
使用表达式,您可以自动化操作(例如,摆动、抖动或跳动)。这会节省大量时间,因为您不必为每个动作创建新的关键帧。以下是几个帮助您入门的例子:
链接不同的属性。
您可以使用表达式链接不同的属性,例如,跨合成的旋转和定位。链接可帮助您创建不同的动画,而无需为每个动画编写不同的表达式。
创建运动信息图。
您可以在创建动态图形模板时使用表达式。调整不同的属性、链接动画并修改 After Effects MOGRT。
控制多个图层以创建复杂动画。
使用“关联器”功能,您可以轻松地从一些控件驱动多个动画以创建动画,用其他功能则需要更多操作。
创建动画图形和图表。
快速创建动画和运动信息图,例如动态世界地图和指示不同国家/地区的污染指数的动态条形图。
保存和重用表达式.
将表达式存储为模板并在其他 After Effects 项目中重复使用。无需重新发明轮子!
表达式 UI在开始使用表达式之前,第一步是了解用户界面。使用以下步骤快速入门:
- 创建一个合成,然后选择“图层>新建>纯色”以创建实体图层。 在时间轴面板中,选择图层,然后按键盘上的 S 以显示缩放属性。自此,您的使用表达式的旅程将开始。 让我们创建一个表达式。在时间轴面板中,按住 Alt 键并单击 (Win) 或按住 Option 并单击 (Mac)“位置”旁边的秒表,将表达式添加到属性。After Effects 为您可以稍后修改的所有属性分配默认表达式。 请注意创建表达式后用户界面发生的更改。首先,“缩放”属性的值(显示为 100,100)从蓝色变为红色。红色表示该值具有活动表达式。 看到 twirls 显示在秒表的左侧,请单击打开它。使用它来公开表达式本身。第一个按钮看起来像等号(“=”),并开启和关闭表达式。当表达式启用时,它会显示为蓝色。第二个按钮会在图表编辑器中显示一段时间内表达式的值。带有小螺旋线的第三个按钮是可用于帮助构造表达式的关联器。 第四个按钮会打开“表达式语言”菜单,该菜单可用于帮助构造表达式。 最后,在四个按钮的右侧,您可以查看默认表达式 transform.position。如果要更改表达式,请单击时间轴中的表达式文本以激活表达式编辑器字段。其工作方式与任何文本字段一样,复制、粘贴、选择或拖动文本。按 Enter 键会创建一个新行,并可调整高度。单击它,然后键入所需的表达式,例如“晃动”(3,50)。要了解更多信息,请参阅编辑表达式。
在向某一属性添加表达式后,可以继续为该属性添加或编辑关键帧。表达式可以采用某一属性值(由其关键帧确定)并使用该值作为生成新的修改值的输入。例如,除了已设置关键帧的运动外,图层的旋转属性上的 value+90 表达式还会将旋转属性的值增大 90 度。
某些方法(例如摆动)直接在现有属性值上操作。(参见属性归因和方法(表达式引用)。)
图层的位置属性的wiggle(10, 10) 表达式会保留图层的关键帧的运动并使其稍微摆动一点。
在表达式中使用简单的数学包含表达式的属性的值显示为红色或粉红色类型。
开始使用表达式的一种好方法是使用关联器创建简单表达式,然后使用简单数学运算(例如下表中所列的运算)调整表达式的行为:
符号
函数
+
相加
–
相减
/
相除
*
相乘
*-1
执行与原来相反的操作,例如逆时针,而非顺时针.
例如,可以通过在表达式结尾键入 *2 将结果增大一倍;也可以通过在表达式结尾键入 /2 将结果减小一半。
在编制适合编辑的表达式时,可以结合这些简单的运算以及更多运算。例如,可以将 /360*100 添加到表达式结尾以将其范围从 0-360 更改到 0-100。如果您要将 360 度刻度盘的值转换为按百分比计算的滑块,此更改将很有帮助。
“表达式语言”菜单“时间轴”面板中的“表达式语言”菜单包含可在表达式中使用的特定于 After Effects 的语言元素。此菜单有助于确定有效元素及其正确语法;可使用其作为可用元素的参考。当您从菜单中选择任何对象、属性或方法时,After Effects 会在表达式字段中的插入点将其自动插入。如果选中表达式字段中的文本,新表达式文本将替换所选文本。如果插入点不在表达式字段中,新表达式文本将替换该字段中的所有文本。
“表达式语言”菜单
可以使用的常用表达式 Wiggle随机摆动
“摆动”表达式是最常见的 After Effects 表达式之一。摆动表达式的作用完全如其名称所示,它会导致属性以随机量晃动。此表达式可用于使您的场景看起来更加自然。
括号之间的数字会控制摆动:第一个数字是每秒的摇摆数,而第二个数字是摆动的量。因此,使用 wiggle(2,30) 表达式的定位属性摆动 2 次,最多 30 像素的。
时间每秒无限旋转 40 度
Time 表达式适用于具有永久运动的对象。例如,如果要让对象无限旋转,可以将表达式 time 添加到旋转属性,且对象每秒钟旋转 1 度。它还适用于基本数学公式,因此,如果您希望让之前的对象以 40 倍的速度更快地旋转,就使用表达式 time*40。
循环循环入点和出点
如果您使用多个关键帧来创建重复的动画,则可能会非常耗时。而应使用 loop 表达式自动执行此过程,并创建复杂的循环动画。有两种类型的循环,loopIn 和 loopOut(更常用)。因此,带有表达式 loopOut() 或 loopOut (“cycle”) 的旋转属性可循环播放您的动画,直到时间轴结束。
更多此类示例,请参阅表达式示例。
- 单击表达式字段进入文本编辑模式。注意:在您进入文本编辑模式后,会选中整个表达式。要添加到表达式,请在表达式中单击以放置插入点;否则,您将替换整个表达式。 在表达式字段中键入和编辑文本,可以选择使用“表达式语言”菜单。 要退出文本编辑模式并激活表达式,请执行下列操作之一:按数字小键盘上的 Enter 键。在表达式字段外部单击。
时间轴面板中的表达式编辑器
您可以使用“脚本和表达式”首选项,在表达式编辑器(位于时间轴面板中)中自定义表达式外观。要打开它,请选择“After effect>首选项>脚本和表达式”(Mac) 或“应用程序>首选项>”。表达式”(Win)。