如何快速讓一個小圓點抽風
..........
新年好!快過年了,先給大家拜個早年哈。
前段時間的事情比較雜亂(我會告訴你我是懶嗎),寫一半的教程一直擱著,其實也就寫碼了個標題。
廢話越來越多了哈,這篇文章主要是想針對上一篇文章中,“抽風的小圓點”和同學們遇到的問題來一個統(tǒng)一回復,也會附上源文件,以便我們更好交流學習。
如果你之前沒接觸過AE,或沒接觸過AE的表達式,強烈推薦大家先去閱讀一下官方關(guān)于表達式的幫助文檔,其實也不必要從頭看到尾,挑著來看,哪里不會點哪里就行了,跟查字典是一樣一樣的。
才疏學淺,有說錯地方還請大家(裝)多(作)多(看)指(不)正(到)。
表達式基礎(chǔ)知識:http://helpx.adobe.com/cn/after-effects/using/expression-basics.html
表達式語言引用:http://helpx.adobe.com/cn/after-effects/using/expression-language-reference.html
OK,那么進入正題啦。
『如何快速讓一個小圓點抽風』
還記得上篇文章結(jié)尾處的“抽風小圓點”嗎?你做出來了嗎?

希望你們做不出來,哈哈,開玩笑。其實實現(xiàn)的辦法有好多種,我也試過幾種,經(jīng)過自己的不斷探索,我發(fā)現(xiàn)了我認為最“完美”的一種辦法。它不僅容易實現(xiàn),靈活性大,效果也是我認為最好的。
同樣,我們要先來認識一個效果器 CC Smear(效果>扭曲>CC Smear),下面來看圖說話。
我先畫個圓,然后把CC Smear效果加到圓上,如下圖:

快看,抽了。我們再來觀察一下CC Smear的默認參數(shù)面板,聰明的同學也許看到這里已經(jīng)猜出了我的辦法。

根據(jù)CC Smear存在于扭曲分類中加上這么簡單的參數(shù)面板,相信大家很容易就能理解這個CC Smear能夠?qū)崿F(xiàn)什么樣的效果。我們試著來改變一下參數(shù),Reach=45;Radius=45(說明:Reach和Radius數(shù)值盡量相近,以保證小圓點的圓度,而數(shù)值越大扭曲的程度也會越大,這里我只是大概設(shè)置了一下參數(shù),大家可以隨便調(diào)戲一下這些參數(shù)),如下圖:


沒錯,那么“From”和“To”就是影響扭曲方向的坐標點,“From”一般默認在圖形的原點位置,“To”就是這個扭曲的方向。到這里我們就已經(jīng)完成了70%了。
我們試著移動小圓點,發(fā)現(xiàn)“From”和“To”并沒有跟隨著小圓點一起移動,且出現(xiàn)了詭異的扭曲,如下圖:

所以我們接下來的工作就是要讓“From”和“To”跟隨著小圓點。那么怎么跟隨呢?沒錯,還是用表達式。前面的文章中我們已經(jīng)成功的利用表達式鏈接各種屬性,這里還是熟悉的操作,熟悉的味道。我們讓“From”和“To”關(guān)聯(lián)小圓點的位置屬性,具體操作如下:

同樣alt+右鍵點擊“From”和“To”前面的小砝碼激活表達式面板,并把它們連接到小圓點的位置屬性(溫馨提示:點擊面板中的鎖頭可以鎖定面板的視圖哦):

這時再移動小圓點我們可以發(fā)現(xiàn)“From”和“To”已經(jīng)完全鏈接到位置屬性了,但是小圓點并沒出現(xiàn)“抽風”的癥狀?
因為我們還差最關(guān)鍵的一步,前面我已經(jīng)了解了“To”的坐標位置是決定扭曲方向和程度的,當“To”和“From”坐標位置完全一致時,自然看不到效果,所以我們還需要對“To”做一個延遲表達式語句。還沒忘記怎么寫吧?
我們在“To”屬性的表達式窗口中,“transform.position”后頭加上“.valueAtTime(time-0.07)”(讓它返回延遲了0.07秒小圓點的位置坐標,注意不要漏掉小點“.”)
然后我們對小圓點的位置屬性隨便做幾個關(guān)鍵幀,效果如下(具體參數(shù)大家可以再細調(diào)以達到更佳的效果,這里我只是簡單方法演示):
大功告成,我們來總結(jié)一下:
1.畫個小圓點;
2.添加“CC Smear”效果器;
3.設(shè)置好“Reach”和“Radius”;
4.將“From”鏈接到位置屬性;
5.將“To”鏈接到位置屬性并延遲;
6.給小圓點位置屬性加上關(guān)鍵幀后,我們不用考慮小圓點的速度,運動軌跡,運動方向,把它們交給程序去完成吧;

是不是很簡單實用呢?你學會了嗎?
『關(guān)于屬性的維度問題』
在上一篇關(guān)于linear的文章中,很多人都遇到了位置的x軸屬性怎么鏈接縮放屬性的問題,其實就是一維屬性怎么鏈接二維或者三維,四維屬性的問題。
下表是各種維度的屬性參考(引用官方說明文檔):

一般情況下,你在表達式的結(jié)尾輸入“x”(x的定義根據(jù)你表達式的前文),該屬性的最終返回值就是“x”的值;輸入“[x,y]”,該屬性的返回值就是“[x,y]”的值。一維的屬性要求返回一個一維的值,二維屬性要求返回一個二維的值,以此類推。
當你直接把位置屬性的x軸關(guān)聯(lián)給縮放屬性,縮放屬性最終返回了一個一維的值,自然就會報錯。所以縮放屬性的表達式結(jié)尾處一般我會這樣寫“[x,x]”。即讓縮放屬性的寬、高都等于x,其實只要你最終返回一個二維的值給它表達式就能正常工作(至于x,y,z...怎么定義就看你了)。詳情也可以參考附件中的Ae源文件(請用CC或更高版本打開)。
那么本文就先到這了,如果你覺得本文對你有所幫助那就來個贊吧!我會毫不猶豫的收下的:)
祝大家新年快樂!謝謝觀看!






































