AfterEffectsのテンプレに素材画像とjsonデータを流し込んで、バッチ処理で画像を生成する試みをしている。この投稿のヘッダ画像もその仕組みで作られた。時期が遅れたがハロウィン画像を作ってみた。
ツールがPhotoShopでない理由
動画ではなく画像のジェネレートであるが、PhotoShopではなくAfterEffectsを使った。自動化、バッチ処理、エクスプレッションなど、手が込んだものはPhotoShopでは書きずらいから。できなくはないが、AfterEffectsのほうがずっと楽。また手軽にかっこよさげな画像を作るのもプラグインがそろっているAfterEffectsのほうがやりやすい。まあここは人によるかもしれない。
またこの手法を掘り下げて、動画作成にも効果的に使うための練習という意味もある。動画もいずれやる。というかすぐやる。
テンプレプロジェクトとファイルの構成
AfterEffectsの編集中の画面。

タイトル文字、カテゴリ文字、テーマカラー2色は外部jsonファイルから流し込んでいる。背景画像もリンクしているので、外部で置き換えが可能。あとはエッセンシャルプロパティというのを使ってみている。プリコンプレイヤーのプロパティとして公開パラメータがある感じ。

読み込んでいるjsonファイルは以下。
{
"title": "Happy\nhelloween",
"category": "Trick or Treat",
"theme_color1":[177,228,228],
"theme_color2":[55,32,9]
}
タイトル指定のexpression。
footage("title_info.json").sourceData.title;
カラー指定のエクスプレッション。ややこしい事になっている理由は前の投稿に。ダミーのレイヤーのエクスプレッションエフェクトに設定したこの値を、ピッグウィップで文字の色味と全体グラデーションの色味につないでいる。
var c1 = effect("カラー制御")("カラー");
var c2 = footage("title_info.json").sourceData.theme_color1;
[
c1[0]*c2[0]/255,
c1[1]*c2[1]/255,
c1[2]*c2[2]/255,
c1[3]
];
素材画像の上にはjson指定の色味でグラデーションがオーバーレイで乗っている。


バッチ実行処理の詳細
このままAfterEffectsからレンダリングしてももちろん良いのだが、今回はさらに素材画像とjsonを用意したら、コマンドプロンプトからバッチ実行して、画像を書き出すという事をやって切る。長くなるので、ここは別記事にまとめる。
プロジェクトファイルの配布
zipファイルでプロジェクトファイル一式を上げておく。
なお、通常素材画像は、Unsplash でを調達するが、今回は pixabay というサイトの画像を使ってみた。理由は再配布の条件が緩いから。(プロジェクトとともに配布したい。)以下からお借りしている。






