AfterEffects プロジェクトフォルダ生成スクリプト

プロジェクトフォルダを生成するスクリプトを以前から自作して使ってきていました。

絶対に必要なわけじゃないんですが
いかんせんルーズなためにフォルダやファイルの
秩序を守り通せないことがあるためにそれなりに重宝してきました。
しかし、カットに不要なディレクトリが発生してしまうことも多く
データを引き継ぐことがある場合には、空フォルダ満載で納品先にご迷惑をおかけしたこともあると思います。

ということもあり
AEの便利機能でもある”ファイル収集”を使ったりしていましたが
Element3D用のファイルやPlexus用までは収集してくれなかったりします。
それに外付けHDDなどにダイレクトに収集できる場合は良いですが
サーバー納品の場合は一度ローカルに収集するので多重にコピー時間がかかり無駄な気がしてなりません。

そこで、ファイル構成を維持しつつ
プロジェクトのルートから再帰的にチェックしていき
空フォルダだけを削除するスクリプトを納品前に使うようにしていました。
サブディレクトリまでチェックして空フォルダを削除するような
フリーのアプリはWindowsには結構ありそうですし、探せばMacにもあるかもしれませんが
何かとAE上からコントロールできるようにしたいためにAEスクリプトとして作成していました。
これもユーティリティー系のスクリプトとして組み込むといざという時に便利です。

話を元に戻しますが
作ったフォルダを最後に捨てる、
という発想はやはりスマートではありませんし
事故の原因にもなりかねないなー
と思いつつ大手術するのも少し踏ん切りが必要なのでそのまま使っていました。

ところでなぜ大量に不要なフォルダを生成してしまうかに関してですが

  • ベースは創作初期の頃に作成したスクリプトなので内部に個々のディレクトリを作成処理するように書かれていた。
  • 作品毎に必要とされるディレクトリが違っているので、追加を繰り返し全部入りのような状態になっていた。

この2点が相互作用になっているので、1000行を超える開いただけでうんざりするようなコードになっていました。
じゃー、多くのところで運用しているような、基本のフォルダセットをコピーしリネームして使えばいいじゃん
という感じなのですが、自動でのカットNoの付与などの機能を持たせたために少しもったいない気がし
今日まで手をつけずにきました。

しかし、このままでは使う機会が減っていくか、ヒンシュクを買い続けるかもなーと思い手をつけてみました。
少し苦労した点はリストを作成する際の記述に関してです。
外部に初期設定ファイルとしてリストを持たせることによって
各プロジェクト毎の多様性のあるセットを作成することができるようにしてみました。

これにより、スクリプトも大幅にシェイプアップできました。

GUIは今までにも改変を繰り返し、それなりの完成度のため変更していません。

実行前

blog170516-0
最終出力サイズのコンポを適当に用意し
アクティブにしてあります。

実行後

blog170516-1
自動で生成されたルートディレクトリが開く
アクティブコンポがリネームされる
レンダーキューに登録される(出力先も指定)
AEの内部フォルダも一部生成される
Aepが保存される

初期設定ファイル

blog170516-pref

生成されたディレクトリ・ファイル群

blog170516-DirectoryTree

ファイルに関しても上書き保存用のベースファイルとして生成できるようにしました。
初期設定に書き込めばどんな拡張子にも対応できるので案外役に立つと思います。
もちろん、拡張子がついてるだけの空ファイルですから、不用意に提出してしまうと混乱を招くことになりかねませんけれども。

同じような趣向でC4D版も作成しようと思っています。



コメントを書く