AE エクスプレッション パスの上を画像が移動する

マスクパスの上を移動するのって
平面にマスク書いて そのマスクパスをコピーして
画像をコンポジションにおいてから
位置プロパティにマスクパスを貼り付ければ
マスクの上を移動しますが
この作業の中で位置をオフセットしたいと思いました。
そこでエクスプレッションを作りました。


使用方法は、画像をコンポジションにおいて
画像の位置プロパティに対してエクスプレッションをいれます。
エクスプレッションは下記になります。

スクリプトは下記で売っています。
https://autumnshop.booth.pm/items/6365901

// マスクパスを取得
var maskPath = thisComp.layer("ブラック 平面 1").mask("マスク 1").maskPath 

// 1ループに必要なフレーム数
var loopFrames = 30; // ここにループさせたいフレーム数を設定

// 進行度(0〜1)
// offsetXに基づいて進行度を調整
var offset = 0; // 進行度を調整するオフセット。範囲0〜1。
var progress = (time % (loopFrames * thisComp.frameDuration)) / (loopFrames * thisComp.frameDuration) + offset;

// パス上の位置を取得
var pos = maskPath.pointOnPath(progress % 1); // 進行度が1を超えるとループするようにする

[pos[0], pos[1]];

マスク箇所の部分は選択して ビックウィップでマスクパスまで引っ張ると取得できます

適切にレイヤー名マスク名をひっぱってこうなります。

この状態であれば問題なく動くと思います。
ループさせたいフレーム数を変えたり
0~1の間で オフセット数値を変更することで パス上で動く位置のオフセットが出来ます。

もしよければいいねを教えてください。励みになります。
引き続きよろしくお願いいたします。

いいなと思ったら応援しよう!

TOX
頂いたチップでカフェします☆