Amazonで商品を見るセール会場へ

After Effects│ウィグルをループさせるエクスプレッション

After Effectsのwiggleに6秒の周期を持たせ、同じ揺れを繰り返す方法です。2Dシェイプの回転に式を入れ、数値の周期と書き出しの境界を確認します。

エクスプレッションでランダムな動きを付けつつ、周期的にループさせたい場面で役立ちます。

ウィグルでランダムに揺らしながらきれいにループ再生させている作例。
目次

6秒の周期と出力フレームを確認する練習

練習コピーに30fps・6秒のコンポジションと2Dシェイプを用意し、回転のキーなし・元の回転0度から始めます。

回転のストップウォッチをAlt/Optionを押しながらクリックし、下のloop-wiggleの式を貼り付けます。

レイヤーの開始を周期の0秒とし、6秒ずれた時刻で同じ段階を繰り返す式です。

これは揺れを逆順に戻すピンポンではなく、2つの評価時刻の揺れを補間して周期をつなぐ例です。

loopSecは0より大きい秒数にし、0・1・2秒と6・7・8秒の比較には確認用に尺を12秒へ延ばします。

境界の直前と直後も再生し、跳びや停止が気にならないか確認します。

元の回転のキーやほかの式を加えると、この静止した基礎値の確認条件から変わります。

6秒の出力に戻すと30fpsで180フレームとなり、フレーム番号は0〜179で、6秒ちょうどのフレームは含みません。

このため最終フレームと先頭フレームの数値が同一かだけで、ループの良し悪しを判断しません。

短く書き出して再読み込みし、2回続けて再生した境界を確認します。

終了後は回転の式をOFFにして0度へ戻し、元コピーを開いて練習ZIPの記録欄へ周期と結果を残します。

2026年10月14日、Windows 11 Pro(OSビルド26200)・After Effects 26.5(26.5×89、Build 89)のJavaScriptエンジンで、以下の式と6秒の連番出力を検証しました。Adobe公式のwiggle・easeの仕様では、wiggleの最後の引数が評価時刻、easeが端で緩やかに変化する補間として説明されています。

確認すること期待する結果違ったとき
6秒の周期同じ段階を前向きに反復ピンポンと区別
出力の端0〜179の180フレーム2回再生して境界を見る
元へ戻す回転0度式OFFと元コピーを確認
スポンサーリンク

Windowsで確かめた6秒周期

960×540、30fpsのコンポジションに、上端をアンカーポイントとする単色の三角形を作りました。回転0度・キーなし・親なし・2Dです。freq=0.3、amp=90、loopSec=6の本文の式をそのまま使い、数値比較時だけ尺を12秒にしました。グラデーションと放射状ブラーは今回の検証には含めていません。

0秒と6秒はどちらも−67.7753度、1秒と7秒は−32.2642度、2秒と8秒は23.2231度でした。同じレイヤーで6秒後の回転が一致し、式エラーはありませんでした。乱数を使うため、別のレイヤーでこの角度になることは保証しません。

wiggleのループ式と1秒時点の三角形の回転を表示したAE画面
1秒時点の回転は約−32.3度。単色の三角形で6秒周期の式を検証しました。 2026年10月14日、Windows 11 Pro・AE 26.5(Build 89)で撮影。

レイヤーのイン点を2秒へ変更すると、2秒・3秒・4秒の値が、変更前の0秒・1秒・2秒と一致しました。8秒・9秒・10秒も同じでした。周期の基準はコンポジションの0秒ではなくinPointです。式を無効にすると、0秒・1秒とも元の回転0度へ戻りました。

尺を6秒へ戻してTIFF連番をレンダーすると、loop_00000.tifからloop_00179.tifまで180枚でした。30fpsで再読み込みしたフッテージの長さも6秒です。下の画面は同じ連番を0〜6秒と6〜12秒に並べ、2回目の先頭に移動した状態です。

180枚のTIFF連番を2回並べ6秒の境界を表示したAE画面
30fps・6秒の連番を2回配置。6秒ちょうどでは2回目の先頭を表示しています。 2026年10月14日、Windows 11 Pro・AE 26.5(Build 89)で撮影。

境界直前の179フレーム(5.9667秒)は−67.8702度、6秒ちょうどは−67.7753度、181フレーム(6.0333秒)は−67.5981度でした。最終フレームと先頭の差は約0.0949度で、同一フレームではありません。6秒ちょうどを末尾に追加すると先頭が重複するため、180枚の範囲で出力します。

つなぎ目で大きく跳ぶ場合は、まず回転のキーを外した練習コピーで周期を比較し、loopSec、イン点、出力範囲、再読み込み時のfpsを確認してください。回転にキーがある条件、別のエクスプレッションエンジンやAEバージョン、グラデーション・ブラーを重ねた作例は未検証です。練習ZIP全体の動作も今回の検証対象外です。

シェイプの作成

動作確認用にサンプルとなるシェイプを作成します。

  1. ペンツールなどで三角形のパスを作成し、アンカーポイントを上端に配置します
  2. 塗りをグラデーション(円形)に設定し、下方向へ広がるように調整します
  3. メニューの「エフェクト」>「ブラー&シャープ」>「ブラー(放射状)」を適用します

アニメーションの作成

  1. シェイプレイヤーの「回転」プロパティにあるストップウォッチをAlt/Optionを押しながらクリックします
  2. 表示された入力欄に下記のエクスプレッションを入力します
var freq = 0.3;
var amp = 90;
var loopSec = 6;
var t = ((time - inPoint) % loopSec + loopSec) % loopSec;
var a = wiggle(freq, amp, 1, 0.5, t);
var b = wiggle(freq, amp, 1, 0.5, t - loopSec);
ease(t, 0, loopSec, a, b);

2つの評価時刻の揺れを補間し、時間を周期内に戻して同じ向きに反復します。

After Effectsの基本的な操作や関連テクニックは、まとめ記事からご覧いただけます。

MOTOKI-LLC/cg-method-codeは以前の実装の参照先です。

ランダムな動きを作るエクスプレッションは、ほかにもあります。

次に学ぶ・作業環境を選ぶ

学習を続けたい方や、作業環境を整えたい方は、目的に合うガイドをご覧ください。

After Effectsのおすすめ書籍

必要なPCスペック

周辺機器の優先度

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次