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

After Effects│アニメーションプリセットをスクリプト化する方法

After Effectsのアニメーションプリセット(.ffx)は、JSXのapplyPresetで選択中のレイヤーへ適用できます。

この記事では、自作した回転プリセットを選択した2枚へ1回の呼び出しで適用し、キーの時刻とUndoまで確認します。

パネルからの適用・自作・保存場所・出てこないときの対処はアニメーションプリセットの使い方にまとめました。

目次

自作プリセットを用意して2枚へ適用する手順

練習用プロジェクトを別名保存してください。

検証では、960×540・30fpsのコンポジションに200×100の平面を作り、「回転」に0秒=0度、1秒=90度の2つのキーを設定しました。

補間はリニアです。

  1. 回転のプロパティ名を選び、「アニメーション」→「アニメーションプリセットを保存」でpractice.ffxを保存します。位置など不要なプロパティを選ばないようにします。
  2. 別の960×540・30fps・4秒のコンポジションに、回転のキーがない200×100の平面を2枚用意します。左右に並べ、両方のレイヤーを選択します。
  3. 現在時刻を2秒に移します。この位置が今回の適用開始位置です。
  4. 下のコードをapply-preset.jsxとしてUTF-8で保存し、「ファイル」→「スクリプト」→「スクリプトファイルを実行」で開きます。表示されるダイアログでpractice.ffxを選びます。
  5. 2枚を選択したままUキーを押して回転のキーを表示し、2秒・3秒の値と、2秒15フレームの表示を確認します。

Adobeのアニメーションプリセットの公式説明では、選択したプロパティの保存方法と、現在時刻への適用が説明されています。

エフェクト&プリセットパネルに表示するにはPresetsフォルダーへの保存が必要ですが、この記事のファイル選択方式では練習フォルダーに保存したffxを直接指定できました。

スポンサーリンク

掲載コードを2枚へ適用した実機結果

2026年10月14日、Windows 11 Pro(10.0.26200)/After Effects 26.5(Build 89、日本語表示)で、下の掲載コードを変更せず実行しました。

自作practice.ffxの回転キーは、選択したTarget0・Target1の両方に追加されました。

操作・条件実機結果
適用前2枚とも回転キー0個、回転0度
2秒で1回適用両方に2秒=0度、3秒=90度の2キー
2秒15フレーム(2.5秒)両方45度。左右の平面が同じ角度で表示
適用後にCtrl+Zを1回両方の回転キーが0個、回転0度に復帰。2枚の選択も維持
元に戻した状態から実行し、ファイル選択をキャンセル両方とも回転キー0個のまま
選択した2枚の平面に2秒と3秒の回転キーが付き、2秒15フレームで両方45度になったAE画面
掲載JSXを1回実行した結果。Target0・Target1の回転は2秒=0度、3秒=90度で、2秒15フレームでは両方45度。 2026年10月14日、Windows 11 Pro・AE 26.5(Build 89)で撮影。

applyPresetは同じコンポジションの選択レイヤーを対象にします。

掲載コードはsaved[0]から1回だけ呼び出しますが、今回の実機でも2枚に適用されました。

選択を維持したまま各レイヤーへ繰り返し呼ぶと同じ選択範囲が対象になるため、このコードではループで適用しません。

APIの補足は、コミュニティで保守されているLayer.applyPreset参照でも確認できます。

確認したのは自作の回転プリセットによるキーの追加、2.5秒の画面表示、正常適用後のUndo、キャンセルです。

市販プリセットや第三者プラグイン、適用途中でエラーになった場合の復旧、映像全体の一致は未検証です。

アニメーションプリセットをスクリプトから呼ぶコード

(function () {
    var comp = app.project && app.project.activeItem;
    if (!(comp instanceof CompItem)) { alert("Open a composition."); return; }
    var layers = comp.selectedLayers, saved = [], i;
    if (!layers.length) { alert("Select at least one layer."); return; }
    for (i = 0; i < layers.length; i++) {
        if (layers[i].locked) { alert("Unlock the selected layers first."); return; }
        saved.push(layers[i]);
    }
    var preset = File.openDialog("Choose your practice .ffx preset");
    if (!preset) { return; }
    if (!preset.exists || !/\.ffx$/i.test(preset.name)) { alert("Choose an existing .ffx file."); return; }
    layers = comp.selectedLayers;
    if (app.project.activeItem !== comp || layers.length !== saved.length) { alert("Selection changed."); return; }
    for (i = 0; i < layers.length; i++) {
        if (layers[i] !== saved[i] || layers[i].locked) { alert("Selection changed."); return; }
    }
    app.beginUndoGroup("Apply one practice preset");
    try {
        // applyPreset acts on all selected layers in this comp. Call it once.
        saved[0].applyPreset(preset);
    } catch (error) {
        alert("Stopped: " + error.toString() + "\nUndo or reopen your practice copy.");
    } finally { app.endUndoGroup(); }
})();

このコードはファイル選択ダイアログを使うため、パスをコードへ書き込む必要はありません。

ffxのデータをJSXへ変換する処理ではなく、保存済みのffxを読み込んで適用する処理です。

適用できないときと元に戻すときの確認

コードは、コンポジションが開かれていない場合、レイヤーが未選択の場合、選択レイヤーにロックがある場合に処理を止めます。

ダイアログを閉じた後にはファイルの存在・拡張子と選択状態を再確認します。

これらはコード上の条件です。

今回、実機で試した中断操作はダイアログのキャンセルです。

動きが見えない場合は、適用した時刻とキーの位置を確認します。

今回のキーは2〜3秒に入るため、0〜1秒だけ再生しても回転しません。

Uキーでキーを表示し、対象の2枚が選択されているか、保存したffxに必要なプロパティが含まれているかを確認してください。

やり直す場合は、適用直後にCtrl+Zを押して元のキー数・値を確認してから再実行します。

今回の正常適用は1回のUndoで戻りました。

適用途中のエラーでは一部の変更が残る可能性を考慮し、元の練習用コピーと照合してください。

プリセット全体を1つのスイッチで無効化することはできません。

スポンサーリンク

参考:スケールと不透明度を含むプリセットの画面

以下は2026年10月13日に撮影した別のプリセット例です。

対象は1枚で、今回の2枚・回転の検証とは入力条件が異なります。

スケールと不透明度に0秒・1秒のキーがあり、13フレームではスケール66.4%、不透明度52%、1秒では両方100%と表示されています。

アニメーションプリセットをスクリプトで適用したAfter Effectsの設定画面
2026-10-13撮影。Adobe After Effects 26.5.0 (Build 89)、Windows 11 Pro (10.0.26200)。実機画面、原寸保存。
適用したアニメーションプリセットの終点を確認したAfter Effectsの画面
2026-10-13撮影。Adobe After Effects 26.5.0 (Build 89)、Windows 11 Pro (10.0.26200)。実機画面、原寸保存。

After Effectsに関するほかの操作手順は、まとめ記事から確認できます。

旧実装の参考コードは、GitHubのMOTOKI-LLC/cg-method-codeにもまとめています。

エクスプレッションの記述方法やスクリプト化に関連する記事もあわせて参照してください。

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

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

After Effectsのおすすめ書籍

必要なPCスペック

周辺機器の優先度

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

この記事を書いた人

須澤 元貴のアバター 須澤 元貴 代表社員

MOTOKI合同会社 代表社員。
アニメ・映像業界とゲーム業界で、2D・UI・3D・アニメーション制作、映像編集、ツール制作に携わってきました。
現在はWordPressを中心にWebサイトの制作とカスタマイズを手がけています。
著書に『Unity デザイナーズ・バイブル』『Unityゲーム プログラミング・バイブル 2nd Generation』(ボーンデジタル)。
岡山県出身、埼玉県在住。

目次