終了

wiggleの制御について

参加者 ,
Apr 05, 2024 Apr 05, 2024

レイヤーのPositionにwiggleを適用して、値を Slider Controlで制御しようと思い、

 

freq=effect("Slider Control")("Slider")

wiggle(freq, amp=30)

 

このようなエクスプレッションを適用しました。

Slider Controlにキーフレームを3つ打って、
順番に、0.5 / 0.8 / 3 としています。

2個目と3個目のキーフレームの間だけ、Wiggleの挙動が、異常に激しく動きます。

3以上の動きをします。

0.8から3への変化のように、値が大きく変わると、こういう挙動になるものなでしょうか?
スムーズに変化させる方法はありますか?

 

ご存知の方いらっしゃいましたら、ご教授お願いいたします。

 

macOS 14.2.1
Aftereffects 24.2.1
です。
よろしくお願いいたします。

キーワード
エクスプレッション
1.1K
翻訳
レポート
コミュニティガイドライン
他のユーザーへの思いやりを持ち、敬意を払いましょう。コンテンツの出典を明記し、投稿する前に内容が重複していないか検索してください。 さらに詳しく
community guidelines
Community Expert ,
Apr 06, 2024 Apr 06, 2024

v24.3で試してみましたが、異常はありませんでした。


環境設定フォルダーの再作成で初期化してみてはどうでしょう。
After Effects再起動時に以前の環境を「移行しない」を選択して下さい。
おかしいなと思ったら(Mac OS 版 After Effects CC) 

翻訳
レポート
コミュニティガイドライン
他のユーザーへの思いやりを持ち、敬意を払いましょう。コンテンツの出典を明記し、投稿する前に内容が重複していないか検索してください。 さらに詳しく
community guidelines
Community Expert ,
Apr 06, 2024 Apr 06, 2024

<追記>
0.5と0.8の間と勘違いしていました。
freqは、周波数になるため、
円運動で例えるなら、初速は1秒間に1回転で最後は1秒間に4回転の速度になっています。
3 ÷ 0.8 = 3.75

翻訳
レポート
コミュニティガイドライン
他のユーザーへの思いやりを持ち、敬意を払いましょう。コンテンツの出典を明記し、投稿する前に内容が重複していないか検索してください。 さらに詳しく
community guidelines
Community Expert ,
Apr 06, 2024 Apr 06, 2024

<追記 2>
freq値を0.8と3で、波形を表示すると下図のようになります。

ae101.jpg


役に立つかどうか分かりませんが、
wiggleには、引数が5個あります。

wiggle(freq, amp, octaves=1, amp_mult=.5, t=time)


3と4番目を追加すると元の波形に小さく振幅する波形が追加されます。
wiggleの詳細は、下記リンクの中央辺りにある「プロパティの属性とメソッド(エクスプレッションのリファレンス)」を参照してください。
After Effects でのエクスプレッション言語 

 

例えば、
wiggle(0.8, 30 , 3 , 0.5) と wiggle(3, 30 , 3 , 0.5) の結果は、下図になります。

ae102.jpg


1番目を固定して3番目の引数を変化させる方法も試してみてはどうでしょう。


また、モーションスケッチという機能もあるので、希望の動きができない時に、自分でレイヤーを動かしてモーションパスを描くことができます。
スムーザーを使用して、動きをスムーズにすることができます。

ae103.jpg

翻訳
レポート
コミュニティガイドライン
他のユーザーへの思いやりを持ち、敬意を払いましょう。コンテンツの出典を明記し、投稿する前に内容が重複していないか検索してください。 さらに詳しく
community guidelines
参加者 ,
Apr 07, 2024 Apr 07, 2024

返信ありがとうございます!

グラフにすると、数値による違いが分かりやすいですね。
他の引数の設定など、調整してみようと思います。
取り急ぎ、ありがとうございます。

翻訳
レポート
コミュニティガイドライン
他のユーザーへの思いやりを持ち、敬意を払いましょう。コンテンツの出典を明記し、投稿する前に内容が重複していないか検索してください。 さらに詳しく
community guidelines
Community Beginner ,
Apr 07, 2024 Apr 07, 2024

私も悩んでおり根本の解決には至っていませんが、私なりの解釈を記載します。

freqは振幅数なので、「1秒間に何回揺れるか」と習ったかと思いますが、どうやら内部処理的には「1秒間に次の目的地を何回変えるか」となっているのではと思います。
これが途中で変わると1秒間に次の目的地を0.5回変える場合と、0.6回変える場合でゴールが変わってしまうので、震えて見えると踏んでいます。
ampの方を変える場合は「最大何ピクセルズラすか」なのでスムーズに値を変化させられ、イメージ通りの挙動をしますので、多くの解説サイトではamp用のスライダー制御にキーフレームを打つ方法のみ紹介しているのではないでしょうか。

揺れをfreqで遅く、早くアニメーションさせるのではなく、ampで小さく、大きく変化させるか、もしくはfreqをゆっくりと変化させずに早い揺れが必要なタイミングで一気に切り替えることで結果的に許容できないか検討されてはいかがでしょうか。

翻訳
レポート
コミュニティガイドライン
他のユーザーへの思いやりを持ち、敬意を払いましょう。コンテンツの出典を明記し、投稿する前に内容が重複していないか検索してください。 さらに詳しく
community guidelines
参加者 ,
Apr 07, 2024 Apr 07, 2024

返信ありがとうございます!
Mukaidaさんにも教えていただい方法と合わせて、ampの調整もしてみようと思います。
「1秒間に次の目的地を0.5回変える場合と、0.6回変える場合でゴールが変わってしまう」この辺り、勉強不足でまだ、よく理解できておりません。。また実験してみて結果をあげさせてもらいます。

ありがとうございます。

翻訳
レポート
コミュニティガイドライン
他のユーザーへの思いやりを持ち、敬意を払いましょう。コンテンツの出典を明記し、投稿する前に内容が重複していないか検索してください。 さらに詳しく
community guidelines
参加者 ,
Apr 20, 2024 Apr 20, 2024

Mukaidaさんと、sha_d_ecoさんに教えていただいた方法で、いくつか試してみて、次のような理解に至りました。

 

周波数が細かく(=急に)変化するときに、フレームレートが、周波数の変化に追いついていない。

 

前のフレームと、次のフレームでその変化を捉えられていないことが原因ような気がしています。
数学的には、周波数とそのサンプリングレートによっては、グラフの変化が一定ではないことが起こるようです。(詳しくは理解できていませんが。。)
私の能力では、検証と解説をわかりやすく提供することはできませんが、フレームレートを変えて幾つか試してみると、その予想外の挙動が、変化していました。
何かバグとかそう言うものではないので、対策としては、
sha_d_ecoさんのおっしゃる通り、
「多くの解説サイトではamp用のスライダー制御にキーフレームを打つ方法のみ紹介しているのではないでしょうか。」
これが、ベストプラクティスな気がします。
あとは、
「周波数については急激な変化を避ける」でしょうか。

 

どなたかもっと詳しく、解説いただける方がいらっしゃいましたら、お願いしたいです。
ありがとうございました。

翻訳
レポート
コミュニティガイドライン
他のユーザーへの思いやりを持ち、敬意を払いましょう。コンテンツの出典を明記し、投稿する前に内容が重複していないか検索してください。 さらに詳しく
community guidelines
Community Expert ,
Apr 20, 2024 Apr 20, 2024

こんにちは、
下記サイトの「Controlling Wiggle Speed」に対処法が掲載されているので参考にしてみてはどうでしょう。

MotionScriptは、昔から有名なサイトの一つです。

Controlling Wiggle Speed

 

スライダー制御に0.5,0.8,3 のキーフレームを設定した場合のグラフは下図になります。

ae101.jpg

翻訳
レポート
コミュニティガイドライン
他のユーザーへの思いやりを持ち、敬意を払いましょう。コンテンツの出典を明記し、投稿する前に内容が重複していないか検索してください。 さらに詳しく
community guidelines
Community Beginner ,
Apr 21, 2024 Apr 21, 2024

え!該当の挙動について言及していますね!
私も長年放置していた答えが…ありがとうございます!

翻訳
レポート
コミュニティガイドライン
他のユーザーへの思いやりを持ち、敬意を払いましょう。コンテンツの出典を明記し、投稿する前に内容が重複していないか検索してください。 さらに詳しく
community guidelines
参加者 ,
Apr 21, 2024 Apr 21, 2024
最新

ありがとうございます!

翻訳
レポート
コミュニティガイドライン
他のユーザーへの思いやりを持ち、敬意を払いましょう。コンテンツの出典を明記し、投稿する前に内容が重複していないか検索してください。 さらに詳しく
community guidelines