キーフレームでアニメーションを作り、それを繰り返し動かすときに便利なエクスプレッションです。よく使うエクスプレッションの一つなのでどういう風になっているのか分解していきましょう。
基本構文
loopOut()は必ずOutのOは大文字です。そしてtypeは4種類あります。
- cycle
- pingpong
- continue
- offset
まずはおなじみの”cycle”です
loopOut(type=”cycle”, numKeyframes=0)
- cycle = 最後のキーフレームまでいくと最初に戻って繰り返し
キーフレームをAとBのみ打った場合ですが、Bまで進むとAに戻るの代表的なcycleのloopOutです。指定した範囲を直線的に繰り返す時に重宝します。loopOutのデフォルトはこのcycleです。loopOut()と打ち込むとこの動きになると覚えておいてください。
loopOut(type=”pingpong”, numKeyframes=0)
- pingpong = キーフレームが跳ね返る繰り返し
これはキーフレームA-B間を行ったり来たりするタイプです。跳ね返るような動きにもなるので(慣性はないですが。。)用途によって使い分けていいと思います。
loopOut(type=”continue”, numKeyframes=0)
- continue = 直前のキーフレームの速度を保ち続ける
スライドインしてきてそのまま等速で継続していきます。速度カーブをいじればゆっくり動くという感じのこともできますね。
loopOut(type=”offset”, numKeyframes=0)
offsetは最初のAの地点に戻らずにBの終わりにA-B間のアニメーションを加算していくエクスプレッションです。
- offset = 基本の動きがエスカレートしていく
モーショングラフィックスとかで使えそうな予感です。笑
numKeyframes
今までずっとスルーしていたnumKeyframesですが、これはどこからどこまでのキーフレームをループさせるかを決めることができます。
- numKeyframes = ループする基準になるキーフレームを指定する
例えば、loopOutの場合、ループ基準は最後のキーフレームから数えます。
numKeyframes=0 = 最初から最後までのキーフレームをループさせる(指定なし) numKeyframes=1 = 最後のキーフレームと最後から2番目のキーフレームをループさせる
動きまとめ
構文が長くて嫌になった方へ
loopOutはこんな感じで省略することができます。
loopOut(type="cycle", numKeyframes=0) = loopOut() loopOut(type="pingpong", numKeyframes=0) = loopOut("pingpong") loopOut(type="continue", numKeyframes=0) = loopOut("continue") loopOut(type="offset", numKeyframes=0) = loopOut("offset")
これでちょっとスッキリしますね!是非loopOut使ってみてください。エクスプレッションを使って快適なAE生活を^^