■ ScreenShakeDir.aex

効果

アニメちっくな画面動を行います。ScreenShake.aexの新バージョンです。(2008/10/10)

◎ゆれの方向を正確に指定できます。
◎ランダムさを自前のテーブルを作成してアニメ撮影用に最適化してあります。
◎フレームを考慮したランダム関数を作成したので、フレームごとに決まった大きさに変化します。

v1.3から、プレビュー解像度に応じて画面動の大きさを補正するようにしました。

v1.6から縁の処理を変えました。今までの透明に加え、塗りつぶす・繰り返す(タイル)・繰り返す(鏡面)を選べるようにしました。

用途

AfterEffectsで画面動を行う場合、位置かアンカーポイントをアニメーションさせることで行います。
でも、強弱の変化やランダムさの指定は面倒なので、このプラグインを作成しました。

ゆれ方向を正確に指定できます。

オプション

大きさ(px) ゆれ幅の最大値
大きさのばらつき(%) 大きさのばらつきの指定。ScreenShake.aexとは逆になっているので注意!
方向(Rot) ゆれの方向
方向のばらつき(Rot) ゆれ方向がランダムに変わる数値の最大値
Random Seed ランダム値テーブルの初期値を指定。
縁の処理 透明・伸ばす・繰り返す1・繰り返す2の4種類選べます。

アルゴリズム

Step.1
ランダムテーブルの初期値をフレーム数にRandom Seedを足した値から決める。
Step.2
大きさと大きさのばらつきから実際に揺らす大きさを決める。
その際にプレビューの解像度にあわせて大きさを補正する。
大きさをLen、ばらつきをrとすると以下の計算式で求めます。
( (Len*(100-r)/100)+(Len*r/100)*random()/RND_MAX )*bufferSize/OriginalSize
Step.3
方向と方向のばらつきから実際に揺らす方向を決める。

方向をDir、ばらつきをrとすると以下の計算式で求めます。
Dir-r+(r*2*random()/RND_MAX)
Step.4
大きさと方向から実際に動かすXY座標を計算して、画像をシフト。

その他

SDKのバージョンは7。

更新・修正履歴

v1.6 縁の処理を変えた。AEのコールバック関数を使わないで自前で処理するようにした。
v1.5 SDKを7に
v1.4 16Bit対応
v1.3 プレビューの解像度にあわせて、大きさパラメータを補正するようにした。
v1.2 とりあえず作る

-index-