AE使用表達式製作延遲動畫
// 設置延遲時間(幀數) var delay = 5; // 根據該層的索引相對於父層的索引來計算延遲時間 var multiplyDelay = delay * (index - parent.index); // 根據延遲時間偏移層的位置 parent.fromComp(toComp(anchorPoint, time - framesToTime(multiplyDelay)));
表達式可根據層的索引相對於其父層的索引來計算延遲時間,並應用到層的位置屬性上。這可以用來創建連續的延遲效果,使每個層根據其索引值產生不同的延遲,形成鏈條效應。
設置延遲時間:
var delay = 5;
設置基本的延遲時間為5幀。你可以根據需要調整這個值以改變延遲的長度。
計算乘法延遲:
var multiplyDelay = delay * (index - parent.index);
計算每個層的具體延遲時間。這個公式根據每個層的索引和父層的索引來調整延遲時間,使每個子層相對於其父層產生不同的延遲。index
是當前層的索引。parent.index
是父層的索引。
應用延遲位置:
parent.fromComp(toComp(anchorPoint, time - framesToTime(multiplyDelay)));
使用計算出的延遲時間來偏移層的位置。toComp(anchorPoint, time - framesToTime(multiplyDelay))
將錨點位置轉換到合成空間,在當前時間減去延遲時間後的位置。parent.fromComp(...)
將這個位置轉換回父層的合成空間,實現延遲效果。
選擇要應用表達式的層:
在 After Effects 中選擇你希望添加延遲效果的子層(這些層必須有一個父層)。
打開位置屬性:
按
P
鍵顯示位置(Position)屬性。
打開表達式編輯器:
按住
Alt
鍵(Windows)或Option
鍵(Mac),然後點擊位置屬性旁邊的碼錶圖標,打開表達式編輯器。
粘貼表達式:
將上述增加索引延遲的表達式粘貼到表達式編輯器中。
調整參數並預覽動畫:
根據需要調整
delay
的值,然後播放時間軸以檢查延遲效果。
可應用在用途 舉例:
鏈條效果:可以將多個子層設置不同的延遲時間,使它們依次跟隨父層移動,形成一個鏈條效果。
拖尾效果:可以使一個物體在移動時產生拖尾,增加動畫的動態感。
按序運動:可以創建一組物體按順序依次運動的效果,常用於展現物體的連續動作。
這個表達式能幫助你在 After Effects 中創建更加豐富和生動的動畫效果,特別適合需要按順序延遲的場景。希望這些說明對你有所幫助!