介绍
AE(After Effects)常用表达式语句是AE软件中非常重要的一部分,它可以帮助用户自动化处理图层、特效等多种操作。本攻略将介绍AE常用表达式语句的使用和解析,帮助用户更好地掌握AE表达式技术。
表达式语句的基本使用
在AE中,表达式语句可以应用于各种图层属性,例如位置、旋转、缩放、不透明度等等。下面是一个简单的例子,应用表达式语句实现一个循环运动的图层:
-
创建一个正方形的图层
-
选中图层,按下
Alt/Option
键并单击“位置”属性,输入以下表达式:
x = thisComp.width/2;
y = thisComp.height/2;
r = 100;
timeFactor = 10;
theta = thisComp.layer("Null 1").transform.rotation;
x + r*Math.sin(theta*timeFactor);
y - r*Math.cos(theta*timeFactor);
-
创建一个空对象,并命名为“Null 1”;
-
将“Null 1”放置在正方形图层上面并旋转“Null 1”对象。
这里我们使用了 AE 的内置全局对象 thisComp
, thisComp.width/2
和 thisComp.height/2
表示画布的中心点坐标。在表达式语句中,通过使用变量来实现计算。theta
代表在图层上“Null 1”旋转的角度,timeFactor
用来加速/减速循环旋转的速度。最终的位置值会根据给定的表达式计算得到。
表达式语句的进阶使用
除了基本的表达式使用,在AE中也有许多高级的表达式语句可以应用于图层。下面是一个实现文本淡入淡出效果的表达式示例:
-
在AE中创建一个文本图层;
-
选中文本图层,按下
Alt/Option
键并单击“不透明度”属性,输入以下表达式:
f = 2.0 // 动画帧速率
a = 0.5 // 淡入淡出的时间(单位:秒)
t1 = key(1).time;
t2 = key(2).time;
if (time < t1+a) linear(time-t1, 0, 1, 0, 100)
else if (time > t2-a) linear(time-t2+a, 1, 0, 0, 100)
else 100
- 对于不透明度属性设置三个关键帧,分别为0帧、8帧和16帧,单击关键帧用鼠标拖动关键帧上下移动;
这个表达式使用了许多内置函数,例如key(1).time
是获取第一个关键帧时间,linear
是一个插值函数,它可以根据时间计算出当前不透明度的百分比值,并对文本图层进行淡入淡出的过渡效果。根据变量f设置的帧速率,a设置的时间,表达式语句会自动生成不透明度的动画效果。
这两个示例是AE常用表达式语句的简单应用。对于表达式语句的深入学习和掌握,需要对表达式语句相关的各种函数、参数、语法、变量等有更加深入和全面的了解。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:ae常用表达式语句的使用和解析 - Python技术站