【After Effects】エクスプレッションが途中で止まるのを防ぐ方法

今回ご紹介する方法を使えば、タービュレントディスプレイスやフラクタルノイズをループさせることができ、コンポジションを長くしたときに途中で動きが止まるという事故を防ぐことができます。

タービュレントディスプレイス動きが止まるという問題

私は、手書き風のアニメーションが好きでよく制作しています!

After Effectsで制作しているのですが、その際には下記の2つのエフェクトを使って作っています。

  • タービュレントディスプレイス 
  • ポスタリゼーション時間

タービュレントディスプレイス の「展開」に、「time」のエクスプレッションを使用することで、このようなピクピク動く手描きのような表現ができます。

しかし、タービュレントディスプレイスやフラクタルノイズの展開パラメータは、だいだい91とか92くらいで反応しなくなるという現象が起こります。

そのため、タービュレントディスプレイス の「展開」に「time* 1000」とエクスプレッションを設定した場合、だいたい32秒くらいでピクピク動くアニメーションが停止してしまいます!

つまり、この方法では「32秒以上の長さの手描きっぽい表現のアニメーションは作れない」ということなのです!

ちなみに

「time*」の後ろの数字を小さくすれば、動きが停止する時間を遅くすることができます。

 しかし、 コンポジションを長くしていけばどこかで止まるということには変わりありません。

タービュレントディスプレイスの「サイクル展開」を使えば途中で止まらずループするようになるのかと考えましたが、どうも上手くいきません。どうしても展開パラメータが91-92くらいのところでアニメーションが停止してしまいます・・・

そこで「time」のエクスプレッションからはいったん離れ、別のエクスプレッションをいろいろ試してみると、上手くいく方法を見つけることができました!

それが「loopOut」のエクスプレッションです!

タービュレントディスプレイスを止めないための設定方法

LoopOutはAfterEffectsエクスプレッションの一つで、複数のキーフレームをまとめて繰り返すことができます。

「展開」にキーフレームを打つ

キーフレームの位置や展開の数値はお好みで調整してください。

まず0秒のところにキーフレームを打ち
今回は4秒のところで、「展開」を15に設定します。

※「time* 1000」と同等の動きにするなら、4秒のところで展開の数値は11くらいになります。

「展開」にエクスプレッションを追加する

Property > loopOut(type = “cycle”,numKeyframes = 0)

これで完成です!

下記の動画のように、途中で止まらない手書き風のアニメーションが制作できます!

タービュレントディスプレイスやフラクタルノイズをループさせる方法のまとめ

今回は、タービュレントディスプレイスが途中で止まるのを防ぐ方法として、「loopOut」のエクスプレッションを使う方法をご紹介しました。

タービュレントディスプレイスだけでなく、フラクタルノイズの展開パラメータにも使える方法です。

参考になれば幸いです!