ae位置上下d性表达式怎么添加?

ae位置上下d性表达式怎么添加?,第1张

在After Effects中,要为图层添加位置的上下d性效果,可以使用以下表达式

scssCopy codeamp = 20// d性的振幅freq = 2.0// d性的频率decay = 4.0// d性的衰减n = 0

if (numKeys >0){

n = nearestKey(time).index

if (key(n).time >time){

n--

}

}

if (n == 0){

t = 0

}else{

t = time - key(n).time

}

if (n >0 &&t <1){

v = velocityAtTime(key(n).time - thisComp.frameDuration/10)

value + v*amp*Math.sin(freq*t*2*Math.PI)/Math.exp(decay*t)

}else{

value

}

这段表达式可以为位置属性添加d性效果,其中amp表示d性的振幅,freq表示d性的频率,decay表示d性的衰减。

要添加这个表达式,请按照以下步骤 *** 作:

选中您想要添加表达式的图层,在时间轴上打开位置属性。

单击位置属性右侧的“添加表达式”按钮。这将打开表达式编辑器。

将上述表达式复制并粘贴到表达式编辑器中,然后单击“应用”按钮。

您现在可以调整表达式中的amp、freq和decay等值,以达到您想要的效果。

您可以通过拖动时间轴上的关键帧,或手动添加关键帧来查看d性效果。

注意:在使用表达式之前,请确保已经备份好您的工程文件,以防止不必要的数据丢失。

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

下面解决几个问题针对大家对表达式的恐惧和疑问。

1.Ae表达式是什么?

2.ae表达式优势在哪?

3.表达式和脚本的区别在哪?

刚刚学习表达式,不懂原理也可以很快速的将表达式用起来,针对一些常用的表达式,记住它,用的上的时候取而用之。

1.wiggle(频率,振幅)。

频率就是单位时间内震动的次数,振幅就是震动的幅度。

Wiggle抖动表达式,使用方法如下:

2.time*n

time时间表达式,是循环动画的利器。

使用方法如下:

3.Time Remap*n 抽帧表达式

对图层/合成添加 时间重映射 ,然后 添加此表达式 即可看到效果

4.loopOut()-创建循环动画表达式

进阶:

loopOut() 括号里面是可以填写内容的,内容如下:

0 表示从第零帧开始循环,循环类型有:

    cycle:周而复始来回运动

    offset:叠加之前关键帧循环

    continue:延续属性变化的最后速度

不理解文字意思,直接开软件尝试效果,看如图效果,都是从第0帧到第20帧k的关键帧,cycle则一直不断循环,offset则叠加最后关键帧20度数后继续匀速递增。continue是0-30k的关键帧,最后关键帧位置它延续之前的速度继续旋转。

5.Random(x,y)随机数表达式

       区别wiggle(振幅,频率),括号里面两个参数含义,wiggle的是两个控制不同属性的参数,Random中x表示最小值(Min)y表示最大值(Max),表示在最小值和最大值之间随机取一个数字。

6.index图层序号表达式

这个表达式特别好用,针对一些随着图层增加有一点规律变化的效果时,用这个表达式可以直接通过复制就可达到效果。

7.Math.round()取整表达式

将需要取整的表达式放在括号内,即可实现取整。

有时候对文本添加time表达式后很多小数点,就可以使用这个表达式清除小数点。另外针对文字图层如果多个相同文字的文字图层,可以使用下图的 *** 作方法,直接修改一个文字图层就能对应都修改。

8.Math.sin表达式

Math方法可以调用ae内部的数学函数,Math相当于一个“盒子”,通过这个“盒子”能够调用ae里面的一些数学运算表达式,当ae系统看到你用Math表达式的时候,就能识别你使用的函数,例如:sin,Cos等等

图中表达式暂不用每个都了解,我们先学习一个常用的Math.sin()表达式,该表达式调用sin()函数

结合sin函数特性,括号内time*3无论取何值,sin()取值范围在【-1,1】之间

所以sin()*60为扩大变化范围达【-60,60】

再如:Math.sin(time*8)*20在位置x属性上添加,可以得到一个来回滑动的效果;

表达式的灵活运用都是与这些基础的表达式相结合,所以多练多背,单单看明白是不够的

9.valueAtTime(time-n)延迟表达式

这个表达式可以得到当前时间图层效果的值,并且通过括号内参数对图层效果时间轴往前或往后推移,可制作延迟效果。

使用前先给运动物体k关键帧,结合上面学过的index图层序号表达式,可作出如下效果

以上这些表达式都是最基础最好理解的,多用多记,用得着的时候拿出来,慢慢积累,表达式的原理就会慢慢无师自通。

今天分享这些很常用很简单的表达式,下次通过通过一个案例练习,通过实际根深一步大家一起了解表达式

分享其实是为了记录我生活中所收获学习到东西的总结,大家一起成长,希望后期这条路上,更多人不迷茫,更多人能够找到自己的导师。

我是后期仓鼠菌

我:加油!

微信公众号关注:小仓鼠爱后期

更多资源会放在公号供大家提取,还有更多干活和伙伴在这里等你


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/8029207.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-12
下一篇2023-04-12

发表评论

登录后才能评论

评论列表(0条)

    保存