プロジェクト全体のエフェクトを読み取り専用で一覧にする
2026年10月3日:外部スクリプトとは別に、内容を確認できる一覧用コードを追加しました。
別名保存した練習プロジェクトにコンポジションを2つ作り、それぞれのソリッドに「ぼかし(ガウス)」を1つ追加します。
一方のエフェクトのスイッチをOFFにし、下のコードをlist-effects.jsxとしてUTF-8で保存して「ファイル」→「スクリプト」→「スクリプトファイルを実行」から実行します。
QUERYが空文字なら、プロジェクト内のコンポジションを走査し、ON/OFFを含めてエフェクトを一覧表示します。
この練習でほかにエフェクトがなければ、Matches: 2と2行の結果が期待値です。
コンポ名が同じでもID、レイヤー番号、エフェクト番号で場所を区別できます。
特定の種類を探す場合は、最初の一覧に出た角かっこ内のmatchNameをQUERYへ入力して再実行します。
一致条件はエフェクトの表示名またはmatchNameとの完全一致で、表示名を変更していてもmatchNameで探せます。
(function () {
var QUERY = ""; // Empty: list all effects. Otherwise exact name or matchName.
var project = app.project, lines = [], found = 0, unreadable = 0;
var comps = 0, layers = 0, effects = 0, stopped = false;
if (!project) { alert("Open your practice project."); return; }
for (var i = 1; i <= project.numItems && !stopped; i++) {
var comp = project.item(i);
if (!(comp instanceof CompItem)) { continue; }
if (++comps > 500) { stopped = true; break; }
for (var j = 1; j <= comp.numLayers && !stopped; j++) {
if (++layers > 10000) { stopped = true; break; }
var layer = comp.layer(j);
try {
var group = layer.property("ADBE Effect Parade");
if (!group) { continue; }
for (var k = 1; k <= group.numProperties; k++) {
if (++effects > 20000) { stopped = true; break; }
var effect = group.property(k);
if (QUERY && effect.name !== QUERY && effect.matchName !== QUERY) { continue; }
found++;
if (lines.length < 200) {
lines.push("Comp #" + comp.id + " " + comp.name + " / Layer " + j +
" " + layer.name + " / Effect " + k + " " + effect.name +
" [" + effect.matchName + "] " + (effect.enabled ? "ON" : "OFF"));
}
}
} catch (error) { unreadable++; }
}
}
alert((stopped ? "PARTIAL: scan limit reached.\n" : "Scan finished.\n") +
"Matches: " + found + "; unreadable layers: " + unreadable +
"; showing first " + lines.length + " rows.\n" + lines.join("\n"));
}());
表示は先頭200行までですが、一致件数はその後も数えます。
500コンポ、10,000レイヤー、20,000エフェクトを超えた時点で走査を止め、PARTIALと表示するため、全件確認済みとは扱わないでください。
読めないレイヤーはunreadable layersの件数へ記録します。
プラグインが欠落して開けないプロジェクトや、内部エラーの原因をこの一覧だけで特定することはできません。
設定・選択・キュー・外部ファイルを書き換えず、実行後は結果ダイアログを閉じて戻れます。
コードの構文・数値計算・模擬APIを確認しましたが、AE本体での操作、描画、取り消しの実行確認は未完了です。
| 入力・条件 | 操作・結果 | 確認する点 |
|---|---|---|
| 空のQUERY | ON/OFFを含む一覧 | 練習2コンポで2行 |
| 名前またはmatchName | 完全一致だけを一覧 | 改名した効果はmatchNameで照合 |
| PARTIAL/読取不能 | 上限/失敗件数を表示 | 全件確認とは扱わない |
APIの参照名はコミュニティ管理のエフェクトmatchName一覧とProperty参照で照合しました。
プロジェクトで使われているエフェクトを把握したい
昔のデータを開く時など、エフェクトプラグインに不具合があると高確率でAEが落ちることがあります。
どのコンポのどのレイヤーに使われているのか?スクリプトで把握出来ないか?調べてみました。
目的によって、見る場所が変わります。
| 知りたいこと | 見る場所 |
|---|---|
| このレイヤーに何が付いているか | エフェクトコントロールパネル |
| 特定のエフェクトを使っている箇所 | タイムラインパネルの検索フィールド |
| プロジェクト全体の一覧 | スクリプト(この記事の本題) |
1つのコンポの中を確かめるだけなら、スクリプトは要りません。
プロジェクト全体を横断したいときにスクリプトが効きます。
標準機能で探す
タイムラインパネルの検索フィールドには、エフェクト名も入れられます。
入力すると、そのエフェクトを持つレイヤーとプロパティだけに絞り込まれます。
コンポジションをまたがないので、1つのコンポの中を確かめる用途です。
レイヤーごとに見る場合は、エフェクトコントロールパネルが確実です。
同じエフェクトをもう一度当てたいときは、最後に使ったエフェクトの適用が使えます。
| 操作 | Windows | macOS |
|---|---|---|
| 最後に使ったエフェクトを適用 | Ctrl + Alt + Shift + E | Command + Option + Shift + E |
| 最後に使ったアニメーションプリセットを適用 | Ctrl + Alt + Shift + F | Command + Option + Shift + F |
落ちる原因のプラグインを切り分ける
古いデータでAfter Effectsが落ちる場合、プラグイン側が原因のことがあります。
プラグインを一時的に無効にして起動できるかを確かめてください。
環境設定の「セーフモードで開始」で、サードパーティのプラグインと拡張機能を無効にして再起動できます。
セーフモードで開けるなら、原因はプラグインか環境設定です。
入っているプリセットの場所も確認しておくと切り分けやすくなります。
| 種類 | 場所 |
|---|---|
| 付属のプリセット(Windows) | Program Files\Adobe\Adobe After Effects\Support Files |
| 付属のプリセット(macOS) | Applications/Adobe After Effects |
なお、名前が括弧で始まり括弧で終わるフォルダーの中身は読み込まれません。
一時的に外したいプリセットは、フォルダー名を括弧で囲む方法もあります。
エフェクト&プリセットパネルが閉じていると、そもそもプリセットは初期化されません。
無料のスクリプトを使う場合
下記のスクリプトを実行して、.txtで保存すると一覧が出力されます。
ダウンロード:http://www.openspc2.org/projectX/AfterEffects/0019/index.html

有料のスクリプトを使う場合「pt_EffectSearch 3」
ダウンロード:https://aescripts.com/pt_effectsearch/#support
Searchボタンで一発で使用されているエフェクトがリスト化されます。

かつてLive2Dプラグインのリンク切れで、AEが落ちまくることがあって、いつかエフェクト名検索を自作しようと思ってたのですが、あまり必要ではなくなってきたので一応メモ書きとして残して置きます。
After Effectsのほかの操作は、まとめからご覧いただけます。

スクリプトランチャーの導入方法はこちらです。

※ 操作と仕様は、Adobe公式ヘルプ「エクスプレッションを編集」「After Effects のエフェクトおよびアニメーションプリセット」「After Effects での環境設定」で2026年9月19日に確認しました。
プロジェクト内の素材やフォルダを整理するスクリプトは、ほかにもあります。




