返回

AE Joy:探索五个令人惊艳的 AE 表达式代码块【JS】

前端

  1. 循环路径动画 (Loop Path Animations)

现在,让我们用一个表达式代码块开启我们的冒险之旅:循环路径动画。这个代码块允许您沿着预定义的路径循环移动图层,为您的动画增添动感。准备好了吗?让我们开始吧!

// 定义路径
var path = [
    [0, 0],
    [100, 100],
    [200, 0],
    [300, 100],
    [400, 0]
];

// 定义循环次数
var numLoops = 3;

// 获取图层位置
var pos = thisComp.layer("Layer").position;

// 循环移动图层
for (var i = 0; i < numLoops; i++) {
    for (var j = 0; j < path.length; j++) {
        pos += [path[j][0] - pos[0], path[j][1] - pos[1]];
    }
}

2. 随机改变到特定值 (Randomize to Specific Value)

下一个代码块将带我们进入随机的世界。随机改变到特定值代码块允许您在给定范围内随机改变图层属性。无论是位置、旋转还是缩放,这个代码块都能让您的动画充满惊喜。

// 定义属性名称
var propName = "Position";

// 定义随机变化范围
var minVal = 0;
var maxVal = 100;

// 获取图层属性值
var propVal = thisComp.layer("Layer").transform.property(propName).value;

// 随机改变属性值
propVal += Math.random() * (maxVal - minVal) + minVal;

// 设置新属性值
thisComp.layer("Layer").transform.property(propName).setValue(propVal);

3. 随机生成蒙版 (Randomize Mask)

蒙版是动画师的强大工具,可以用来创建各种视觉效果。随机生成蒙版代码块让您能够轻松生成随机形状的蒙版,为您的动画增添创意。

// 定义蒙版形状类型
var maskType = "Ellipse";

// 定义蒙版大小范围
var minWidth = 100;
var maxWidth = 200;
var minHeight = 100;
var maxHeight = 200;

// 定义蒙版位置范围
var minX = 0;
var maxX = 400;
var minY = 0;
var maxY = 300;

// 生成随机蒙版
var mask = thisComp.layer("Layer").createMask(maskType);
mask.size = [
    Math.random() * (maxWidth - minWidth) + minWidth,
    Math.random() * (maxHeight - minHeight) + minHeight
];
mask.position = [
    Math.random() * (maxX - minX) + minX,
    Math.random() * (maxY - minY) + minY
];

4. 梯度旋转 (Gradient Rotation)

梯度旋转代码块将为您的动画增添动感和深度。通过这个代码块,您可以让图层以梯度的方式旋转,创造出令人惊叹的视觉效果。

// 定义旋转速度
var speed = 360;

// 获取图层旋转角度
var rotation = thisComp.layer("Layer").transform.rotation;

// 旋转图层
rotation += speed * time;

// 设置新旋转角度
thisComp.layer("Layer").transform.rotation = rotation;

5. 贝塞尔曲线扩展 (Bezier Path Extend)

最后,我们来看看贝塞尔曲线扩展代码块。这个代码块可以将贝塞尔曲线扩展到预定义的长度,为您的动画增添流畅的运动感。

// 定义贝塞尔曲线
var path = thisComp.layer("Layer").path;

// 定义扩展长度
var extendLength = 100;

// 扩展贝塞尔曲线
path.extendPath(extendLength);

现在,您已经掌握了这五个令人惊艳的 AE 表达式代码块。准备好让您的动画脱颖而出了吗?尽情探索这些代码块的无限可能,将您的创意变为现实吧!