一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

AE教程!12種常用AE實(shí)用表達(dá)式整理(附表達(dá)式合集腳本)

 W360文檔 2023-01-01 發(fā)布于遼寧

表達(dá)式是AE中非常好用的工具,它可以幫助我們節(jié)省大量的制作時(shí)間。如果你對(duì)表達(dá)式掌握的比較好,那么很多看似復(fù)雜、繁瑣的效果,利用表達(dá)式都可以輕松的實(shí)現(xiàn)。

但是表達(dá)式的學(xué)習(xí)是有一定門檻的,簡(jiǎn)單的運(yùn)用還好,一旦涉及到復(fù)雜點(diǎn)的運(yùn)用,就對(duì)數(shù)學(xué)能力、邏輯能力有一定的要求了。

為此,我整理了一些工作中常用、實(shí)用的表達(dá)式效果。無需理解背后的語義,只要直接套用即可。并且已經(jīng)將它們集成進(jìn)了我編寫的“常用表達(dá)式合集”腳本中,可以一鍵添加,文后也會(huì)將此腳本分享給大家。

1.抖動(dòng)

Wiggle表達(dá)式,能夠?qū)崿F(xiàn)隨機(jī)的位移旋轉(zhuǎn)縮放、透明度閃爍等效果。

AE教程!12種常用AE實(shí)用表達(dá)式整理(附表達(dá)式合集腳本)

AE教程!12種常用AE實(shí)用表達(dá)式整理(附表達(dá)式合集腳本)

表達(dá)式語句:

Wiggle(3,50);

前面的數(shù)字3代表抖動(dòng)的頻率,也就是抖動(dòng)的快慢;后面的數(shù)字50代表抖動(dòng)的振幅,也就是抖動(dòng)的幅度大小。通過調(diào)整這兩個(gè)數(shù)值來控制抖動(dòng)效果。

2. 分向抖動(dòng)

Wiggle表達(dá)式更高級(jí)的運(yùn)用,在不同的方向使用不同的抖動(dòng)強(qiáng)度,也可以制作只在一個(gè)方向進(jìn)行抖動(dòng)的效果。

表達(dá)式語句:

a=wiggle(3,50)[0]; //控制x方向的抖動(dòng)

b=wiggle(0,0)[1]; //控制y方向的抖動(dòng)

[a,b];

AE教程!12種常用AE實(shí)用表達(dá)式整理(附表達(dá)式合集腳本)

AE教程!12種常用AE實(shí)用表達(dá)式整理(附表達(dá)式合集腳本)

3. 時(shí)間

Time表達(dá)式,常用于制作持續(xù)旋轉(zhuǎn)的效果。

表達(dá)式語句:

value+time*100; //后面的數(shù)值用來控制速度的快慢

對(duì)表達(dá)式有一定基礎(chǔ)的同學(xué)可能會(huì)直接寫成:

time*100;

這里多寫了一個(gè)value,而value代表屬性的原始數(shù)值,這里加上value是為了能夠調(diào)整旋轉(zhuǎn)的初始角度,增強(qiáng)可控性。

AE教程!12種常用AE實(shí)用表達(dá)式整理(附表達(dá)式合集腳本)

4. 循環(huán)

loopOut表達(dá)式,使關(guān)鍵幀動(dòng)畫循環(huán),常用的有三種模式:

第一種,cycle模式

表達(dá)式語句:

loopOut(type = "cycle", numKeyframes = 0);//后面的數(shù)值0用來控制從第幾幀開始循環(huán)

將關(guān)鍵幀動(dòng)畫重復(fù)進(jìn)行的循環(huán)效果

比如你有關(guān)鍵幀1、2、3,這種循環(huán)模式就是1、2、3、1、2、3、1、2、3.....一直循環(huán)下去

AE教程!12種常用AE實(shí)用表達(dá)式整理(附表達(dá)式合集腳本)

第二種,pingPong模式

表達(dá)式語句:

loopOut(type = "pingPong", numKeyframes = 0);//后面的數(shù)值0用來控制從第幾幀開始循環(huán)

像乒乓球一樣來回往復(fù)循環(huán)

同樣,如果你有關(guān)鍵幀1、2、3,那么這種循環(huán)模式就是按1、2、3、3、2、1、1、2、3.....這種規(guī)律循環(huán)下去

AE教程!12種常用AE實(shí)用表達(dá)式整理(附表達(dá)式合集腳本)

第三種,continue模式

表達(dá)式語句:

loopOut(type="continue")

沿著最后一幀的方向和運(yùn)動(dòng)速度繼續(xù)運(yùn)動(dòng)下去

這種模式相比前兩種用的較少,可以便于制作動(dòng)畫持續(xù)緩慢運(yùn)動(dòng)的效果,避免動(dòng)畫靜止,也可以制作一些數(shù)字持續(xù)增長等效果

AE教程!12種常用AE實(shí)用表達(dá)式整理(附表達(dá)式合集腳本)

5. 循環(huán)旋轉(zhuǎn)

一想到要做一個(gè)持續(xù)旋轉(zhuǎn)的動(dòng)畫,可能我們會(huì)直接加上一個(gè)time表達(dá)式。

但是如果這個(gè)旋轉(zhuǎn)動(dòng)畫需要能夠無限循環(huán)進(jìn)行,就需要保證一個(gè)循環(huán)內(nèi)轉(zhuǎn)360度的倍數(shù)才行,那么就不是簡(jiǎn)單一個(gè)time能搞定了。要么得去計(jì)算下time后需要乘的數(shù)值,要么得手動(dòng)K幀,總之是有些麻煩的。

AE教程!12種常用AE實(shí)用表達(dá)式整理(附表達(dá)式合集腳本)

為了解決此問題,我自己編寫了一個(gè)表達(dá)式:

表達(dá)式語句:

cycle=360;  //循環(huán)周期

n=1;  //轉(zhuǎn)速(需為整數(shù))

cycle*n/thisComp.duration*time

簡(jiǎn)單解釋下兩個(gè)可以調(diào)的數(shù)值:

循環(huán)周期,默認(rèn)是360度,但是不同的圖形循環(huán)周期可能有所區(qū)別,比如一個(gè)正方形旋轉(zhuǎn)90度就能形成循環(huán),而一個(gè)正五角形的循環(huán)周期是旋轉(zhuǎn)360÷5 =72度

AE教程!12種常用AE實(shí)用表達(dá)式整理(附表達(dá)式合集腳本)

第二個(gè)值很好理解,代表轉(zhuǎn)速,值越大,轉(zhuǎn)的越快。

AE教程!12種常用AE實(shí)用表達(dá)式整理(附表達(dá)式合集腳本)

6. 路徑循環(huán)

有時(shí)候我們需要做mask變形動(dòng)畫的循環(huán),但是你會(huì)發(fā)現(xiàn)直接給mask path屬性加循環(huán)表達(dá)式是不起作用的。

而利用下面這個(gè)表達(dá)式就能夠解決這個(gè)問題

表達(dá)式語句:

valueAtTime(time%key(numKeys).time)

AE教程!12種常用AE實(shí)用表達(dá)式整理(附表達(dá)式合集腳本)

對(duì)于mask路徑和形狀層路徑均有效哦。

該表達(dá)式的原理是利用valueAtTime表達(dá)式讀取關(guān)鍵幀數(shù)據(jù),并通過數(shù)學(xué)計(jì)算使關(guān)鍵幀數(shù)據(jù)在時(shí)間線上重復(fù)。(所以有趣的是,其實(shí)你把它加給任何其他屬性都能夠產(chǎn)生cycle模式的循環(huán)。)

7. 隨機(jī)循環(huán)

讓隨機(jī)抖動(dòng)的效果能夠形成循環(huán)

表達(dá)式語句:

freq = 3; // 頻率

amp = 100; // 幅度

loopTime =3; // 循環(huán)時(shí)間,單位為秒

t = time % loopTime;

wiggle1 = wiggle(freq, amp, 1, 0.5, t);

wiggle2 = wiggle(freq, amp, 1, 0.5, t - loopTime);

linear(t, 0, loopTime, wiggle1, wiggle2)

AE教程!12種常用AE實(shí)用表達(dá)式整理(附表達(dá)式合集腳本)

對(duì)于做一些元素隨機(jī)晃動(dòng)之類的GIF循環(huán)動(dòng)畫非常好用!

8. 彈性

萬能彈性表達(dá)式,給動(dòng)畫添加彈性抖動(dòng)效果

AE教程!12種常用AE實(shí)用表達(dá)式整理(附表達(dá)式合集腳本)

表達(dá)式語句:

amp = .1; //振幅

freq = 2.0; //頻率

decay = 2.0; //阻力

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){

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

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

}

else{value}

這個(gè)表達(dá)式看起來很復(fù)雜,但是沒關(guān)系,咱們只要會(huì)復(fù)制粘貼就好。

其中有三個(gè)關(guān)鍵的數(shù)值用來控制彈性的效果,需要根據(jù)自己需要的效果來調(diào)整。

amp,即振幅,用來控制彈性的幅度大小。

freq,頻率,用來控制彈性抖動(dòng)的快慢。

decay,阻力,也叫衰減、阻尼等,這個(gè)值越大,則彈性效果能夠越快停下來。

9. 回彈

跟上面的彈性表達(dá)式很類似,它能夠制作物體撞擊墻壁或地面產(chǎn)生的回彈反彈效果

AE教程!12種常用AE實(shí)用表達(dá)式整理(附表達(dá)式合集腳本)

表達(dá)式語句:

e =0.7;//彈力

g =1000;//重力

nMax = 9;//最大彈跳次數(shù)

n = 0;

if (numKeys > 0){

n = nearestKey(time).index;

if (key(n).time > time) n--;

}

if (n > 0){

t = time - key(n).time;

v = -velocityAtTime(key(n).time - .001)*e;

vl = length(v);

if (value instanceof Array){

vu = (vl > 0) ? normalize(v) : [0,0,0];

}else{

vu = (v < 0) ? -1 : 1;

}

tCur = 0;

segDur = 2*vl/g;

tNext = segDur;

nb = 1; // number of bounces

while (tNext < t && nb <= nMax){

vl *= e;

segDur *= e;

tCur = tNext;

tNext += segDur;

nb++

}

if(nb <= nMax){

delta = t - tCur;

value +  vu*delta*(vl - g*delta/2);

}else{

value

}

}else  

value

同樣,這兒有三個(gè)關(guān)鍵數(shù)值用來控制彈性的效果,

彈力,這個(gè)值越高,則跳起的越高

重力,這個(gè)值越大,則彈的越快,同時(shí)停止的也越快

最大彈跳次數(shù),字面意思,用來控制彈跳的次數(shù),值越大,效果越細(xì)膩

這里的彈力和重力都是物理名詞,這個(gè)效果也是模擬真實(shí)物理現(xiàn)象的,所以需要結(jié)合下物理知識(shí)來理解。

10. 數(shù)字增長

MG動(dòng)畫中數(shù)字增長效果很常見,一般可以用Numbers特效去制作,但是它有一個(gè)很大的限制,就是數(shù)值最大只能達(dá)到30000。

AE教程!12種常用AE實(shí)用表達(dá)式整理(附表達(dá)式合集腳本)

還有一個(gè)方法是用文字層連接滑塊控制器,但是最大也只能到一百萬

AE教程!12種常用AE實(shí)用表達(dá)式整理(附表達(dá)式合集腳本)

而利用這組表達(dá)式就可以輕松解決數(shù)字增長的動(dòng)畫問題:

AE教程!12種常用AE實(shí)用表達(dá)式整理(附表達(dá)式合集腳本)

表達(dá)式很長,就不粘貼了,同時(shí)需要配合表達(dá)式控件來使用。(但是不用擔(dān)心,后面使用我的腳本就可以直接一鍵添加這個(gè)效果,不需要自己復(fù)制噠~)

AE教程!12種常用AE實(shí)用表達(dá)式整理(附表達(dá)式合集腳本)

這組表達(dá)式是我在網(wǎng)上找到的一個(gè)表達(dá)式的基礎(chǔ)上改進(jìn)的,增加了制作隨機(jī)數(shù)字的效果。

來看一下表達(dá)式控件的可控參數(shù):

AE教程!12種常用AE實(shí)用表達(dá)式整理(附表達(dá)式合集腳本)

數(shù)值,最基礎(chǔ)的參數(shù),通過給它打關(guān)鍵幀就可以制作數(shù)字增長的效果。

倍率,讓數(shù)字大小突破一百萬限制的關(guān)鍵,原理很簡(jiǎn)單:在上面的數(shù)值的基礎(chǔ)上再乘以一個(gè)數(shù),這樣就能突破一百萬大小了。當(dāng)大小不夠用時(shí),就使用它吧?。ㄋ越柚鷶?shù)值和倍率相乘,數(shù)值最大能夠達(dá)到一百萬乘一百萬,應(yīng)該足夠滿足你的需求了。)

小數(shù)點(diǎn)位數(shù),控制小數(shù)點(diǎn)后面的位數(shù)。

逗號(hào),勾選此選項(xiàng),可以讓數(shù)字以每三位數(shù)一個(gè)逗號(hào)的格式呈現(xiàn):

AE教程!12種常用AE實(shí)用表達(dá)式整理(附表達(dá)式合集腳本)

數(shù)字隨機(jī),勾選此選項(xiàng),可以制作數(shù)字隨機(jī)跳動(dòng)的效果,而不再是按順序增長。

隨機(jī)范圍,與上面的數(shù)字隨機(jī)配合使用,控制數(shù)字隨機(jī)的范圍大小。(最終數(shù)字跳動(dòng)的范圍就是:數(shù)值±隨機(jī)范圍。)

AE教程!12種常用AE實(shí)用表達(dá)式整理(附表達(dá)式合集腳本)

11. 3D坐標(biāo)轉(zhuǎn)2D坐標(biāo)

toComp表達(dá)式,可以將三維坐標(biāo)轉(zhuǎn)換為二維坐標(biāo)。(聽起來像是三體中的降維打擊( ̄▽ ̄)")

用到的機(jī)會(huì)不多,但是一旦需要用到它的時(shí)候,你就會(huì)后悔自己沒有早點(diǎn)認(rèn)識(shí)這個(gè)表達(dá)式。

它可以用來將一些二維的特效做成三維的效果,還可以給二維層做出三維空間感的運(yùn)動(dòng)效果。

表達(dá)式語句:

thisComp.layer('三維層名字').toComp([0,0,0]);  //加給二維坐標(biāo),后面的數(shù)值[0,0,0]用來調(diào)整位置的偏移

AE教程!12種常用AE實(shí)用表達(dá)式整理(附表達(dá)式合集腳本)

給二維層的位置加上此表達(dá)式,就能讓二維層位置匹配上三維層的空間位置。

下面再來看個(gè)效果:

AE教程!12種常用AE實(shí)用表達(dá)式整理(附表達(dá)式合集腳本)

此效果是使用Beam(光束)特效結(jié)合toComp表達(dá)式制作的。

制作思路是,先用空物體在三維空間擺出角錐的五個(gè)頂點(diǎn),然后利用beam特效讓這些頂點(diǎn)間產(chǎn)生連線,但是beam是一個(gè)二維特效,無法直接跟蹤三維的點(diǎn),這時(shí)候就可以利用toComp表達(dá)式將三維坐標(biāo)轉(zhuǎn)為對(duì)應(yīng)的平面二維坐標(biāo)。

AE教程!12種常用AE實(shí)用表達(dá)式整理(附表達(dá)式合集腳本)

12. 目標(biāo)

lookAt表達(dá)式,使圖層的方向始終朝向一個(gè)目標(biāo)圖層,對(duì)于二維層和三維層均有效。

表達(dá)式語句:

(對(duì)于二維層,加給rotation[旋轉(zhuǎn)]屬性)

function lookAtMe(fromPt, toPt){

lkAt = lookAt(fromPt, toPt);

if (toPt[1] > fromPt[1]){

return 180-lkAt[1];

} else {

return lkAt[1];

}

}

p0= transform.position;

p1=thisComp.layer("目標(biāo)層").transform.position; //設(shè)置目標(biāo)層名

lookAtMe(p0, p1)+value //改變旋轉(zhuǎn)值可調(diào)整角度

(對(duì)于三維層,加給orientation [角度] 屬性)

p0=transform.position;

p1=thisComp.layer("目標(biāo)層").transform.position; //設(shè)置目標(biāo)層名

lookAt(p0,p1)

AE教程!12種常用AE實(shí)用表達(dá)式整理(附表達(dá)式合集腳本)

最后就是福利放送時(shí)間了。

我已經(jīng)將以上表達(dá)式都集成進(jìn)了我編寫的”常用表達(dá)式合集”腳本中,在此分享給大家。

使用此腳本就可以一鍵添加以上表達(dá)式,且能夠同時(shí)選擇多個(gè)圖層批量添加。

表達(dá)式中需要調(diào)整的參數(shù)都添加了表達(dá)式控件,無需進(jìn)入表達(dá)式中修改,直接選擇對(duì)應(yīng)的滑塊參數(shù)調(diào)整即可

AE教程!12種常用AE實(shí)用表達(dá)式整理(附表達(dá)式合集腳本)

腳本操作演示:

AE教程!12種常用AE實(shí)用表達(dá)式整理(附表達(dá)式合集腳本)

AE教程!12種常用AE實(shí)用表達(dá)式整理(附表達(dá)式合集腳本)

AE教程!12種常用AE實(shí)用表達(dá)式整理(附表達(dá)式合集腳本)

腳本的代碼部分也開源共享,不做加密處理了,分享給對(duì)寫腳本感興趣的盆友。

AE教程!12種常用AE實(shí)用表達(dá)式整理(附表達(dá)式合集腳本)

腳本文件附在文后,請(qǐng)自行抱走~

最后希望本腳本對(duì)你的工作和學(xué)習(xí)有所幫助!

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多

    日韩一区二区三区18| 少妇激情在线免费观看| 日本精品免费在线观看| 男女午夜视频在线观看免费| 久久精品国产99国产免费| 中文字幕久久精品亚洲乱码| 国产目拍亚洲精品区一区| 日本一本在线免费福利| 国产欧美高清精品一区| 国产亚洲神马午夜福利| 国产性色精品福利在线观看| 国产三级视频不卡在线观看| 国产午夜精品福利免费不| 尤物久久91欧美人禽亚洲| 黄色片一区二区三区高清| 亚洲国产色婷婷久久精品| 免费久久一级欧美特大黄孕妇| 婷婷基地五月激情五月| 手机在线观看亚洲中文字幕| 亚洲男人的天堂就去爱| 国产欧美一区二区三区精品视 | 国产熟女一区二区不卡| 中文字幕在线区中文色| 国产精品福利一二三区| 欧美激情一区二区亚洲专区| 国产a天堂一区二区专区| 十八禁日本一区二区三区| 中文字幕亚洲视频一区二区| 日韩精品视频高清在线观看| 久久精品福利在线观看| 91欧美日韩中在线视频| 久久国产亚洲精品成人| 亚洲人午夜精品射精日韩| 人妻熟女中文字幕在线| 久久国内午夜福利直播| 美女被后入视频在线观看| 日本道播放一区二区三区| 国产精品一区二区成人在线| 麻豆最新出品国产精品| 激情爱爱一区二区三区| 中文字幕欧美精品人妻一区|