
抖动循环(Wiggle Loop)AE表达式
每隔几秒钟进行一次完美的抖动循环——非常适合循环标题、GIF、回旋动画或模板中的可重复运动。
// 抖动移动的速度(每秒) wigglesPerSecond = 2; // 属性移动的幅度(以像素、度数等为单位) wiggleAmount = 40; // 循环长度(以秒为单位) loopTime = 3; // 循环内的时间(每 'loopTime' 秒重置) current = time % loopTime; // 采样两个抖动状态:一个是当前时间的抖动,一个是完整循环之前的抖动 start = wiggle(wigglesPerSecond, wiggleAmount, 1, 0.5, current); end = wiggle(wigglesPerSecond, wiggleAmount, 1, 0.5, current - loopTime); // 在这两个抖动状态之间进行插值,形成完美的循环 linear(current, 0, loopTime, start, end);
应用位置
将此表达式应用于位置(Position)、旋转(Rotation)、缩放(Scale)或任何可动画化的属性,通常在这些地方可以使用抖动效果。
适用场景
- 循环动画标题
- GIF 或无缝导出
- 需要可重复运动的模板
工作原理
time % loopTime 当时间达到循环长度时,会将时间重置为 0,从而创建循环周期。
我们采样两个 wiggle() 调用:
- 一个是在当前循环时间
- 另一个是在完整循环之前
然后使用 linear() 在这两次采样之间进行插值,以便动画平滑地循环。
这种方法保持了 wiggle() 的自然随机感觉,但每个 loopTime 秒都有一个整洁的循环效果。
声明:预览视频中的视频、音频、图片及字体仅做展示,不包含在下载文件内;水印不代表署名仅用于防盗,版权归原作者所有。 版权说明:资源均源于互联网收集整理,不保证资源的可用及完整性,不提供安装使用及技术服务,仅供个人学习研究,请勿商用。喜欢记得支持正版,若侵犯第三方权益,请及时联系我们删除!《版权声明》

评论0