おはようございます。前澤です。
本日は、とっても便利なアフターエフェクトのエクスプレッションを見つけたのでご紹介します!
先日、ある案件で、写真を横一列に並べてスクロールするというCGを組みました。
基本的な横移動だけで空間パスに沿ったりする必要もなく、簡単な映像だと思ったのですが…
その写真の数が100枚以上に及び、数値を打って、一つずつ並べるのはとても限界がある内容でした。
何とかエクスプレッションを使って、一発で並べて、かつ1枚を動かすだけで、
後ろの写真すべてが動くようにできないか、と探し回っていたところ、
こんなエクスプレッションを見つけました。
手順は2つです。
1.ヌルオブジェクトを作成、名前を「cntrol」に変更。
エフェクト→スライダーを適用し、スライダー名を「gap」に変更。
並べたい写真を並べたい順番で上から並べる。
2.並べたい写真の「位置」に以下のエクスプレッションを記述。
preP=thisComp.layer(thisLayer,-1).position[0];
preW=thisComp.layer(thisLayer,-1).width;
myW=thisLayer.width;
Px=preP+(preW/2)+(myW/2);
Pyz=thisLayer.position;
gap=thisComp.layer(“control”).effect(“gap”)(“スライダー”);
[Px+gap,Pyz[1],Pyz[2]];
これを並べたいすべての写真に適応すると、
写真がきれいにパッと並んでくれます。
※こちらはXの値だけを調整するので、yの値はエクスプレッション適用前に直してください。
簡潔に式の内容を言うと、
「自分の一つ上のレイヤーから、任意の間隔を保って場所を決定する。
任意の間隔はgapに沿う。」
となります。
まず、1つ目に設定したら、あとは、
編集→エクスプレッションのみをコピー で一気にほかのレイヤーに適用することができます。
写真1枚1枚にエクスプレッションを変える必要は全くありません。
なので、例えば写真を並べた後に、
「写真のサイズを変更したい」
「37番目の写真だけ削除したい」
「28番目と29番目の間にもう1枚追加で写真を挿入したい」
といったありがちな修正が来ても、即対応が可能です。
DTPの現場では、写真を並べたりするのは感覚的にできることですので、
こういった基本的なアニメーションだと軽視しがちですが、
枚数が多くなっても修正に即対応が可能で、めんどうのない方法はぜひとも覚えておきたいものですね!
ではでは。