AE表達式入門——wiggle
說起來AE表達式,相信接觸過AE軟件的小伙伴們應該都知道,有的人很抵觸它,也有的人很喜歡它。AE表達式其實算是一只紙老虎,看起來有點嚇人,其實并不難,而且會用之后就會發(fā)現(xiàn)它真的很方便!
最常用的表達式莫過于wiggle了,這也是為什么我會先把wiggle給拎出來了。
wiggle(freq
,?amp
,?octaves=1
,?amp_mult=0.5
,?t=time
)

我們一般以為wiggle有兩個參數(shù),其實它有5個參數(shù),分別是頻率,幅度,疊加波的個數(shù),疊加波的幅度,默認采樣時間。
wiggle其實是來源于一種噪聲波,就像AE中很多效果也是用到了噪聲一樣。因此它的參數(shù)也與噪聲波有關。
頻率(freq):是該屬性在1s內的擺動次數(shù),頻率越高,擺動的就越頻繁。
幅度(amp):是該屬性擺動范圍的最大值,如果設置amp=20,就意味著擺動范圍在-20到+20之間。
疊加波的個數(shù)(octaves):這是在每一個基波的基礎上,再疊加進去幾個噪聲波,疊加的個數(shù)越多,該擺動就越復雜,擺動頻率就越高,擺動的細節(jié)就越多。這個數(shù)值不常用的原因是,我們也可以直接調節(jié)頻率(freq)來增加擺動復雜度。
疊加波的幅度(amp_mult):每個疊加波都要乘以這個數(shù)值,用于調整疊加波的最大擺動范圍。
采樣時間(t):一般默認值就是當前時間time,如果你設置了固定值,那就不會擺動了。

介紹完wiggle的參數(shù),我們還需要介紹它在不同維度下屬性中的應用:
1 一維屬性,如:rotation(旋轉),opacity(不透明度)等。
直接添加wiggle表達式即可。
wiggle(2,10)
2 二維屬性,如:scale(縮放),position(位置)等。
wiggle里面自帶屬性維度的識別,直接寫
wiggle(2,10)
屬性中的元素會分別做隨機的wiggle擺動。
但如果想讓二維屬性的兩個元素的值按同樣方式擺動,而不是分別擺動,要怎么做呢?
以scale(縮放)為例:
要想讓scale的長寬同時擺動,需要將最后的輸出的二維數(shù)組中的元素設置為相同值,方法如下:
?s?= wiggle(5, 10);
[s[0], s[0]] 或者?[s[1],?s[1]]?
這樣做的原因是wiggle輸出的結果已經自動識別為一個二維數(shù)組,也就是s已經是二維數(shù)組,因此需要給最終結果都賦予相同的值s[0](長度),或s[1](寬度)都是可以的。
3 三維屬性,如:scale(縮放),position(位置)等。
和二維屬性基本一樣,可以直接最后給結果的時候可以按照需要設置相同值或不同值。
直接添加
wiggle(2,10)
屬性中的元素會分別做隨機的wiggle擺動。
要想讓屬性中的元素獲得同樣的擺動方式,則需:
?s?=?wiggle(5,?10);
[s[0],?s[0], s[0]]?或者?[s[1],?s[1], s[1]] 或者[s[2],?s[2], s[2]]