Wiggleを制御する(ウィグラーを制御する)
ひさびさの投稿だったりしますが、たまにはtipsでも。 というか、自分の覚書として書いてみます。
After Effectsでは、オブジェクトをガタガタと震わせることが出来る 「ウィグラー」という機能がついています。 これは通常、キーフレームを打ち、それらを選択して、 数値を入力してから適用するというものです。 しかしこの方法はかなり力技に近く、場合によっては膨大なキーフレームが作成されてしまい、 思い通りの制御はなかなかできません。 かといって、ヌルを作成し、それに動かしたいオブジェクトを親子付けしてから 制御したりする方法もありますが、これもなかなか難しいものでした。 なによりキーフレームが多いことによって、試行錯誤がしにくいです。
それを解決するために登場するのがexpressionです。 expressionを適用したいプロパティ(位置や回転など)に適用して、
wiggle(5,10)
と記述するだけで、ウィグラーの効果を得られるのです。 括弧の中の数字は(周波数、重要性)の値です。 しかしこの方法だと、タイムラインの尺の分だけ延々とくり返してしまい、 スタートとストップなども出来ず、制御できているとは言えませんでした。
そこでちょこっとググってみるとCreative Cowという この手のメジャーサイトのフォーラムに解決方法が載っていました。 その方法を書いておこうと思います。 元記事→(http://forums.creativecow.net/readpost/2/872389) ちなみに我流な部分が多いので、適宜変更して使ってみてください。
1) まず、新規でヌルオブジェクト(以下null)を作成。
2) 動かしたいオブジェクト(以下obj)と同じくらいの位置にして親子付け。 (私の場合は、元のobjの位置をとどめておきたかったので親子付けしています。 特に必要ない場合は、objのプロパティに直接expressionを記述しても大丈夫です。)
3) nullに「エフェクト>エクスプレッション制御>スライダ制御」を二つ適用し、 エフェクト名をそれぞれ「Slider_amp」「Slider_freq」に変更。
4) objの任意のプロパティのストップウォッチをOption(WinならAlt)を押しながらクリックし、 expressionを追加する。
5) その欄に
wig_amp=effect("Slider_amp")("スライダ"); wig_freq=effect("Slider_freq")("スライダ");
wiggle(wig_freq,wig_amp)
と記述。
これで完成です。 スライダの値が0なら全く動かない状態に。 また、スライダにキーフレームが打てるので、徐々に数値を変えることも可能になります。 利用価値があるかどうかは分かりませんが、 モーショングラフィックスなどで使い道があるでしょうか。
それにしても久々の投稿が長文だと疲れますね(笑) 今後も覚書的に更新を続けられればと思います。