AE表达式:利用wiggle和Math.sin制作蝴蝶动画
B站链接:

AE表达式:B站讲解最详细的Math表达式和蝴蝶动画制作

课程准备

  • 蝴蝶AI素材

  • wiggle的用法,上次录了一节视频,链接

  • Math.sin三角函数 ,函数原型 :
    y = A ∗ s i n ( ω ∗ x + φ ) + b y = A*sin(\omega*x+\varphi)+b y=Asin(ωx+φ)+b
    各常数值对函数图像的影响:

    φ:决定波形与X轴位置关系或横向移动距离(左加右减)

    ω:决定周期

    A:决定峰值(即纵向拉伸压缩的倍数)

    b:表示波形在Y轴的位置关系或纵向移动距离(上加下减)

    在这里我们只关心A和ω就可以了。φ和b用不上。我们可以把这个函数转化成和wiggle相关的函数
    y = a m p ∗ s i n ( f r e q ∗ t ) y=amp*sin(freq*t) y=ampsin(freqt)
    其中amp是振幅 决定wiggle的最大峰值,freq是频率决定wiggle抖动的速度,t就是时间轴

制作步骤

1 新建一个1920x1080的合成,名为butterfly

2 通过overlord把AI矢量图导进来

3 新建一个空对象,命名为controller

4 给空对象添加三个滑块,更改名称:amp(振幅),freq(频率),speed(速度)

amp 设置为100,freq设置为4,speed暂时不设置

5 给左右翅膀Y轴属性 添加表达式

//left
thisComp.layer("controller").effect("speed")("滑块");
//right
thisComp.layer("controller").effect("speed")("滑块")*(-1);

现在这样拖动speed滑块,可以看到左右翅膀可以挥动了。但是因为锚点问题效果不对,我们要调整下锚点。

6 接下来可以给speed滑块 添加关键帧,或者表达式。

  • 比如time*80 看看效果如何?

  • 问题来了,我们不需要speed的值一直上升,我们需要它来回循环,为了实现这个,我们需要引入三角函数Math.sin

  • 不要看到三角函数就害怕,很简单。sin( x ) = {-1-1},不管你x输入多少,它的值都在[-1,1]这个区间,为了直观的观察,我用ggb做了一个动态图。ggb三角函数动态图

  • 理解了sin函数后,我们来修改speed的表达式 Math.sin(time) 。引入这个表达式后,你会感觉看不出什么效果。这是因为它的值一直在-1 到1之间,太小了。所以我们要把振幅加大,继续修改

    amp = effect("amp")("滑块");
    amp*Math.sin(time)
    

    现在的效果很不错了。

蝴蝶挥动的速度还是慢了些? 现在我们把频率引入进来,改变它挥动的快慢。继续完善表达式

amp = effect("amp")("滑块");
freq = effect("freq")("滑块");
amp*Math.sin(freq*time)

蝴蝶挥动的效果就做好了,完美

7 新建一个主合成 main,把butterfly合成拉进来,打开3D开关,以及折叠开关

8 新建一个空对象 并且把空对象的3D开关打开

9 讲butterfly合成的位置属性绑定空对象的位置属性

表达式代码如下(直接用拾取器拖动即可)

thisComp.layer("空 2").transform.position

10 给空对象 位置属性K动画

播放下会发现蝴蝶的方向不对!我们修正下这个问题,操作如下

  1. 图层——变换——自动定向——沿路径定向
  2. 旋转下蝴蝶合成的方向,X轴旋转270°

11 多复制几只蝴蝶

  • 直接复制法 ,每只蝴蝶都会重叠

  • 改进——加入wiggle,修改位置属性的表达式

    //这里需要注意 一定要减去value,因为wiggle函数返回的值包含了value
    thisComp.layer("空 2").transform.position + wiggle(1,200) - value;
    

12 错开复制合成的时间,导入一张背景图

完成!

AE表达式:利用wiggle和Math.sin制作蝴蝶动画相关推荐

  1. ae制作的mg如何用到html,【教程】AE表达式常用的函数-制作MG动画必备

    我一开始接触AE是简单的套模板,后来慢慢学会自己调关键帧动画.感觉应用比较多的同样也让我很头疼的是运动.所以对表达式控制做了初步的学习.下面是一些常用的AE表达式 1.time time随着时间线的变 ...

  2. ae绘图未指定错误怎么办_【教程】最全的ae表达式教学分享(实用!)表达式其实很简单...

    大部分人对ae表达式是望而却之,感觉很难,无从下手,网上的教程也是层次不齐,很难找到好的教程跟着学.于是呢,搜罗全网,整理了一份最全的最实用的ae表达式教学.也算是一个对自己的总结. 下面解决几个问题 ...

  3. 【AE表达式】以插值方法代替关键帧

    在<[AE表达式]更好的动画时间控制>这篇文章中说过我比较不是很喜欢用关键帧来控制动画,这是有一定条件的.使用表达式控制动画更多的是强调复用性,比如你拿到我的工程文件,不管是显示的内容.尺 ...

  4. 【AE表达式】300多个人名正从宇宙中飞来……

    问题 数量级的问题: 昨天我朋友问:要做三百多个人名(文本)从宇宙深处飞出来的效果,怎么处理? 对于这样的需求,做 AE 包装的小伙伴们都不陌生,就是 3D文本层摆位置,打个相机穿梭一下.没错,对于几 ...

  5. ae编程语言as_【微教程】从编程的思路学习AE表达式

    (这是一段引人入胜的开场白......),针对知道ae基础操作的群体的教学 授人以鱼不如授人以渔,学习表达式应该是从学会脚本语言入手,而不是通过记忆的方式记住每种效果的表达式语句.这里说的编程并非特指 ...

  6. 如何用html制作一个动态烟花,利用HTML5实现庆祝2018年烟花动画特效

    特效描述:利用HTML5实现庆祝2018年烟花动画特效.利用HTML5实现庆祝2018年烟花动画特效 代码结构 1. HTML代码 2018 var ctx = document.querySelec ...

  7. ae制作的mg如何用到html,AE实战案例教程:如何制作MG动画

    很多朋友喜欢MG动画,是因为它元素简单却能表现丰富的内容.今天我们给大家分享的教程是:如何利用AE制作MG动画,教程主要内容是结合案例讲解,让你快速入门AE,并且逐步能够制作一些简单的MG动画. 一. ...

  8. 如何学好 AE 表达式?

    --你知道世界上最难的问题是什么吗? --就是这道题. 上面的只是一个梗,不过面对知乎里或者朋友的这种发问,我真的不知道怎么回答,从上个礼拜,我就开始琢磨这个事儿:如何讲明白如何学好 AE 表达式.问 ...

  9. 【转载】AE 表达式精通大法

    本文是转自 设计树 的一篇文章,我对文章进行了重新排版,并标注了重点 原文地址 -- AE表达式精通大法 以下是正文部分: AE 表达式一直是大家学习 AE 过程中的一道坎,涉及代码网上教程资源又不多 ...

最新文章

  1. 【stanford C++】容器III——Vector类
  2. 大数据驱动的运营创新和探索
  3. Windows 2003 server 服务器集群实例
  4. 阿里云文件存储的高性能架构演进之路
  5. No style sheet with given id found错误
  6. 在Azure平台上使用托管卡进行身份认证
  7. 科来过滤jd提示语法解析器错误的解决问题方法
  8. 小孩子都喜欢的卡通影视角色原来是用maya软件制作出来的
  9. word表格保存后缺失框线_word表格框线突然没了
  10. 【C++要笑着学】缺省参数 | 全缺省与半缺省 | 函数重载
  11. 【JS】Number to digit tiers
  12. 史上最强!目标检测数据集标注工具网页版
  13. window子对象的详细介绍 _@jie
  14. monkey 测试 ANR 问题 整理分析
  15. 2020宁波市多校赛训练biu~
  16. 元宇宙系列--元宇宙介绍
  17. urx驱动ur3和onrobot rg2
  18. 学校计算机网络教室管理员职责,福建广播电视大学计算机网络教室管理人员工作职责...
  19. 万字长文,详尽PyCharm 教程
  20. OCR文本识别软件SDK

热门文章

  1. “王者荣耀”之猜数字(简略版)
  2. 一文带你全面解析postman工具的使用(效率篇)
  3. Android SwipeRefreshLayout下拉刷新控件源码简单分析
  4. 《3D打印:正在到来的工业革命》——1.5节21世纪的个人计算机
  5. 2023最新SSM计算机毕业设计选题大全(附源码+LW)之java宠物领养平台16e63
  6. c语言一些如暂停、清屏等功能(持续更新ing...)
  7. AxureRP for chorme 0.62(Axure谷歌浏览器插件)下载安装
  8. 针对 MySQL/InnoDB 刷盘调优
  9. 编译 FFmpeg-4.4
  10. 三菱socket通信实例_Delphi與三菱QCPU PLC通信控制(Winsocket篇) @ 非常低調(也談PLC) :: 隨意窩 Xuite日誌...