韩国精品一区二区三区四区,国产精品视频一区二区不卡,国产精品久久久久久av三级,亚洲午夜精品久久久久久人妖l

登錄享有權(quán)益
積分獎勵計劃
下載視頻源片
工具免費體驗
視頻制作工具
視頻工具
音頻制作工具
音頻工具
圖片設計工具
圖片工具
視頻制作
其他
牛片APP
APP專屬功能
邀請認證

你尚未認證為創(chuàng)作人或影視公司,認證即可享有:

超實用的18種常用AE表達式解析

2020-09-07 11:12 發(fā)布

幕后 | 后期分享

很多朋友面對AE表達式望而生畏,不過再難的東西都會有它最本質(zhì)的規(guī)則,如果你理解了基本的原理和常用的表達式命令,這也許會提高你的工作效率。我通過自己對AE表達式的理解,嘗試用最簡單的語言解釋一些看似復雜的操作,如果此篇文章能給你帶來一些啟發(fā),不勝榮幸~


首先什么是表達式呢?


表達式就是AE內(nèi)部基于JS編程語言開發(fā)的編輯工具,可以理解為簡單的編程,不過沒有編程那么復雜。其次表達式只能添加在可以編輯的關(guān)建幀的屬性上,不可以添加在其他地方;表達式的使用根據(jù)實際情況來決定,如果關(guān)鍵幀可以更好的實現(xiàn)你想要的效果,使用關(guān)鍵幀就可以啦,表達式大部分情況下是可以更節(jié)約時間,提高工作效率的。


接下來看一下如何添加表達式



表達式工具


A.表達式開關(guān) B.表達式圖表 C.表達式關(guān)聯(lián)器 D.表達式語言菜單



由于AE里不同的屬性的參數(shù)不同,常用的我們可以分為:數(shù)值(旋轉(zhuǎn)/不透明度)、數(shù)組(位置/縮放)、布爾值(true代表真、false代表假/0代表假、1代表真)這三種形式來進行書寫表達式。對于表達式AE也有很多內(nèi)置的函數(shù)命令,直接可以在表達式語言菜單里面進行調(diào)用。


接下來一起看看常用的表達式有哪些吧!


1. time表達式


原理:


time表示時間,以秒為單位,time*n =時間(秒數(shù))*n (若應用于旋轉(zhuǎn)屬性,則n表示角度)


舉例:


若在旋轉(zhuǎn)屬性上設置time表達式為time*60,則圖層將通過1秒的時間旋轉(zhuǎn)60度,2秒時旋轉(zhuǎn)到120度以此類推(數(shù)值為正數(shù)時順時針旋轉(zhuǎn),為負數(shù)時逆時針旋轉(zhuǎn))


注意事項:


time只能賦予一維屬性的數(shù)據(jù)。(位置屬性可進行單獨尺寸的分離,從而可單獨設置X或Y上的time)



2. 抖動/擺動表達式


wiggle(freq, amp, octaves = 1, amp_mult = 0.5, t = time)


原理:


freq=頻率(設置每秒抖動的頻率);amp=振幅(每次抖動的幅度);octaves=振幅幅度(在每次振幅的基礎上還會進行一定的震幅幅度,很少用);amp_mult=頻率倍頻(默認數(shù)值即可,數(shù)值越接近0,細節(jié)越少;越接近1,細節(jié)越多);t=持續(xù)時間(抖動時間為合成時間,一般無需修改);一般只寫前兩個數(shù)值即可


舉例:


若在一維屬性中,為位置屬性添加wiggle(10,20),則表示圖層每秒抖動10次,每次隨機波動的幅度為20;若在二維屬性中,為縮放添加n=wiggle(1,10);[n[0],n[0]],則表示圖層的縮放XY在每秒抖動10次,每次隨機波動的幅度為20;若在二維屬性中,想單獨在單維度進行抖動,需要將屬性設置為單獨尺寸后添加wiggle(10,20),表示圖層的縮放X軸在每秒抖動10次,每次隨機波動的幅度為20。


注意事項:


可直接在現(xiàn)有屬性上運行,包括任何關(guān)鍵幀




3. index表達式(索引表達式)


原理:


為每間隔多少數(shù)值來產(chǎn)生多少變化


舉例:


若為圖層1的旋轉(zhuǎn)屬性添加表達式index*5 ,則第一個圖層會旋轉(zhuǎn)5度,之后按Ctrl+D去復制多個圖層時,第2個圖層將旋轉(zhuǎn)10度,以此類推;若想第一層圖形不產(chǎn)生旋轉(zhuǎn)保持正常形態(tài),復制后的圖形以5度遞增,表達式可寫為(index-1)*5



4. value表達式


原理:


在當前時間輸出當前屬性值


舉例:


若對位置屬性添加表達式為value+100,則位置會在關(guān)鍵幀數(shù)值的基礎上對X軸向右偏移100(正數(shù)向右側(cè),負數(shù)像左側(cè));若想控制Y軸的位置屬性,則可對位置屬性進行單獨尺寸的分割,從而可單獨控制Y軸(正數(shù)向下,負數(shù)向上)


注意事項:


更多的使用場景是結(jié)合其他表達式一起應用



5. random表達式(隨機表達式)


原理:


random(x,y)在數(shù)值x到y(tǒng)之間隨機進行抽取,最小值為x,最大值為y


舉例:


若為數(shù)字源文本添加表達式random(20),則數(shù)據(jù)會隨機改變,最大值不會超過20;


若為數(shù)字源文本添加表達式random(10,100),則數(shù)據(jù)會在10<數(shù)值<100之間隨機改變; 若為數(shù)字源文本添加表達式seedRandom(5, timeless = false),random(50),則數(shù)據(jù)會在50以內(nèi)隨機改變(前面的5是種子數(shù),如一張畫面中需要多個相同區(qū)間的數(shù)值做隨機變化,就要為他們添加不同的種子數(shù),防止兩者隨機變化雷同),若希望數(shù)字隨機變化為整數(shù)則應添加表達式為Math.round(random(2,50)),表示在2和50之間隨機改變無小數(shù)


注意事項:


隨機表達式不僅局限于數(shù)據(jù)上的使用,其他屬性也可以應用,若數(shù)值為整數(shù)Math的M要大寫



6. loopOut表達式(循環(huán)表達式)


原理:


loopOut(type=”類型”,numkeyframes=0)對一組動作進行循環(huán)


loopOut(type=”pingpong”,numkeyframes=0)是類似像乒乓球一樣的來回循環(huán);


loopOut(type=”cycle”,numkeyframes=0)是周而復始的循環(huán);


loopOut(type=”continue”)延續(xù)屬性變化的最后速度,


loopOut(type=”offset”,numkeyframes=0)是重復指定的時間段進行循環(huán);


numkeyframes=0是循環(huán)的次數(shù),0為無限循環(huán),1是最后兩個關(guān)鍵幀無限循環(huán),2是最后三個關(guān)鍵幀無限循環(huán),


以此類推


舉例:


如下圖gif




7. timeRemap表達式(抽幀)


原理:


timeRemap*n,n以幀為單位


舉例:


將圖層設置為timeRemap*10,代表每隔10幀就抽掉1幀畫面,(根據(jù)要抽取的速率決定)


注意事項:


使用timeRemap表達式之前要啟用時間重映射,否則無法使用此表達式



8. linear表達式(線性表達式)


原理:


linear(t, tMin, tMax, value1, value2)表示linear(time, 開始變化的時間, 結(jié)束變化的時間, 開始變化時的數(shù)值, 結(jié)束變化的數(shù)值);


linear(t, value1, value2)表示當time在0到1之間時,從value1變化到value2;


ease(t, tMin, tMax, value1, value2)的含義與linear一樣, 區(qū)別是在tMin和tMax點處,進行緩入緩出,使數(shù)據(jù)更加平滑;


easeIn(t, tMin, tMax, value1, value2)與linear的含義一樣, 區(qū)別是在tMin處,進行緩入,使數(shù)據(jù)更加平滑;


easeOut(t, tMin, tMax, value1, value2)與linear的含義一樣, 區(qū)別是在tMax點處,進行緩出,使數(shù)據(jù)更加平滑


舉例:


見下圖均以(time,0,3,131,1000)為例,若為數(shù)字的源文本屬性添加此表達式可以制作出倒計時的效果n=linear(time, 0, 3, 3, 0)表示從0-3秒數(shù)字從3到0,希望數(shù)字為整體需添加Math.floor()


注意事項:


倒計時的用法比較常用,整數(shù)M要大寫




9. Other Math(角度弧度)


原理:


degreesToRadians(degrees) 角度轉(zhuǎn)為弧度(degrees度的變量或表達式)radiansToDegrees(radians)弧度轉(zhuǎn)為角度(radians弧度的變量或表達式)


舉例:


常用語數(shù)學中的一些計算sin,cos,tan,sec,csc,cot等



10. layer表達式


原理:


layer(index)中index 是數(shù)值,按照編號檢索圖層;layer(name)中name 是一個字符串,按照名稱檢索圖層(若沒有圖層名稱,則根據(jù)源名稱);layer(otherLayer, relIndex)中otherLayer 表示圖層對象,relIndex 表示數(shù)值,檢索屬于圖層對象的數(shù)值圖層


舉例:


layer(index)—thisComp.layer(1).position;


layer(name)—thisComp.layer(“形狀圖層1”);


layer(otherLayer, relIndex)—thisComp.layer(thisLayer, 1).active 將返回 true



11. marker表達式


原理:


marker.key(index)中index 是數(shù)值;marker.key(name)中name 是一個字符串


舉例:


thisComp.marker.key(1).time表示返回第一個合成標記的時間;thisComp.marker.key(“我叫注釋名稱”).time表示返回具有名稱”我叫注釋名稱”的合成標記的時間



12. comp(合成屬性和方法)width與height表達式


原理:


width表示返回合成寬度;height表示返回合成高度


舉例:


[thisComp.width/2, thisComp.height/2]表示寬度和高度為合成的一半也就是居中的位置



13. param表達式


原理:


param(name)中name表示字符串;param(index)表示數(shù)值


舉例:


effect(“高斯模糊”).param(“模糊度”)效果控制點始終位于圖層空間中



14. 彈性表達式


原理:


復制粘貼表達式使用就可以,amp表示振幅,freq表示頻率,decay表示衰減(根據(jù)不同需求做不同的調(diào)整)


舉例:


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


amp = .03;


freq = 2.5;


decay = 4.0;


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


}else{value;}


上述內(nèi)容復制粘貼使用即可


注意:motion2腳本也帶此功能,方法不唯一




15. 反彈表達式


原理:


k表示反彈最終結(jié)果,a表示反彈阻力,b表示反彈變化時間


舉例:


k=500; a=8; b=30; x=k*(1-Math.exp(-a*time)*Math.cos(b*time));[x,x](根據(jù)不同情況調(diào)節(jié)kab的數(shù)值即可)



16. 數(shù)字遞增表達式


原理:


StartNumber表示開始時的數(shù)值,EndNumber表示結(jié)束時的數(shù)值,StartTime表示開始的時間,EndTime表示結(jié)束的時間,和前面的linear表達式相對應


舉例:


StartNumber=1;


EndNumber=20;


StartTime=0;


EndTime=3;


t=linear(time,StartTime,EndTime,StartNumber,EndNumber);Math.floor(t)



17. 擠壓與伸展


原理:


spd表示擠壓拉伸的速度,maxDev表示擠壓拉伸的大小,decay表示衰減


舉例:


spd =20;maxDev =10;


decay = 1;


t = time – inPoint;


offset = maxDev*Math.sin(t*spd)/Math.exp(t*decay);


scaleX = scale[0] + offset;scaleY = scale[1] – offset;


[scaleX,scaleY]




18. 運動拖尾


原理:


delay表示要延遲的幀數(shù)


舉例:


為位置屬性添加表達式delay = 0.5;


d = delay*thisComp.frameDuration*(index – 1);


thisComp.layer(1).position.valueAtTime(time – d);


如想要實現(xiàn)不透明度拖尾需為不透明度屬性添加表達式opacityFactor =.80;


Math.pow(opacityFactor,index – 1)*100(調(diào)整好一個圖層后復制多個)




內(nèi)容由作者原創(chuàng),轉(zhuǎn)載請注明來源,附以原文鏈接

http://www.beism.cn/news/7582.html

表情

添加圖片

發(fā)表評論

全部評論

南京沐維思光文化傳媒有限公司是一家具有豐富互聯(lián)網(wǎng)廣告經(jīng)驗的綜合服務機構(gòu)。我們遵循細心、精心 用心、品質(zhì)永保稱心的理念,為客戶提供包括:黨政媒介宣發(fā),短視頻制作,抖音等新媒體代運營,影視、音樂宣發(fā),MG動畫廣告、定格動畫廣告、三維動畫設計、創(chuàng)意視頻廣告、動畫衍生設計等相關(guān)服務。我們將竭誠為您一共最專業(yè)的互聯(lián)網(wǎng)宣發(fā)與制作服務。
推薦文章 更多+
拍片計算器-拍片估價

關(guān)注我們

牛片網(wǎng)微信公眾號
牛片網(wǎng)官方QQ群
分享給其他人

分享到微信朋友圈

澎湖县| 阜平县| 贵州省| 吉林省| 巫溪县| 延寿县| 承德市| 宜城市| 嘉祥县| 津市市| 沾益县| 漳州市| 连江县| 钟山县| 贵阳市| 西丰县| 亚东县| 乌兰察布市| 习水县| 铜鼓县| 石狮市| 双江| 温州市| 乐业县| 海晏县| 晴隆县| 乌审旗| 宝兴县| 项城市| 开远市| 西吉县| 密云县| 和林格尔县| 安塞县| 卢氏县| 大同市| 盖州市| 奉节县| 梓潼县| 六安市| 诸暨市|