AE如何模擬畫面震動增加動畫張力

有沒有看過那種影片,一顆炸彈爆炸、字卡一登場、角色畫面忽然震動整個畫面就開始搖搖晃晃,呈現畫面震撼讓觀眾帶入影情境中。
來了解這段實用的 After Effects 表達式,怎麼讓畫面「指定時間點震一震,再慢慢停下來」。

🎯 這句表達式怎麼使用?

簡單來說:

  • 你指定一堆時間點,像是:「2秒時開始震一下」、「7秒再震一次」

  • 每次震動會持續幾秒(這邊是 3 秒),然後會慢慢停止(靠 decay 衰減)

  • amp 控制抖的幅度,freq 控制抖的速度,調太大會像老舊電視壞掉

  • 最後透過 x、y 做出上下左右的隨機偏移,加到原本的位置上

💡 小提醒

  • 想要更戲劇化?增加 amp 和 freq!

  • 想要多次震?在 startTimes 裡面多加幾個時間點就行

  • 想要左右震、上下不動?只用 x 或 y 偏移即可

🔧 震動表達式程式碼:

amp = 30;         // 震幅(震多大)
freq = 10;        // 頻率(多快震)
duration = 3;     // 持續幾秒
decay = 1;        // 衰減速度
startTimes = [2, 7]; // 震動起始時間點(可以一直加)
totalOffset = [0, 0]; // 預設不動

for (i = 0; i < startTimes.length; i++){
  t = time - startTimes[i];
  if (t >= 0 && t <= duration){
    decayFactor = Math.exp(-decay * t);
    x = Math.sin(t * freq * 2 * Math.PI) * amp * decayFactor;
    y = Math.cos(t * freq * 2 * Math.PI) * amp * decayFactor;
    totalOffset += [x, y];
  }
}

value + totalOffset;

這段表達式就像 After Effects 的打地鼠遊戲,每個指定時間點都藏著一顆震動炸彈,只要踩到時間,就「碰!」一下,帶你震出畫面靈魂。

你可以複製上面的程式,貼到任意圖層的 Position(位置)欄位,然後自己試著玩玩看震幾秒、震多大,玩出屬於你自己的震撼場面。

Previous
Previous

運用表達式製作隨機閃爍的星星動畫

Next
Next

什麼是AE Proximity 接近反應動畫效果?