![]() |
||
■関数式でアニメーション■
エクスプレッションでアニメーション制御を行う方法です。
元Houdini使い的には慣れ親しんだ手法!ほぼ同様の公式が使えるのでHoudiniユーザーズガイド(白い本)が大活躍中です。
Houdiniユーザーさんにとってはお馴染みの簡単な関数を紹介します。
なんでもいいのでオブジェクトにエクスプレッションを記述してみましょう
右クリックでパラメーターのExpressionEditorを表示
最もよく利用される関数としてsin関数があります。一般的な使用としては
sin(周波数 ± 位相)*振幅+オフセット
sphereのポジションYに次の関数を記述して実行して見て下さい
sphereに上下するアニメーションがつきました。この関数式がどのようなアニメーションカーブになっているのか
View>Show Graph
で表示できます。(Houdiniの$F=XSIではFc)
1から-1へ、アニメーションしているのがわかります。
さて、応用です。振幅のスケーリング&波形のオフセット
sin(Fc*10)*5+5
abs(絶対値)を使ってバウンドした波動を作る
abs(sin(Fc*10)*5)
ノコギリ歯波形:公式→(Fc±位相)%周波数*振幅+オフセット
↓24fpsの場合はこの記述でも結果は同じ
ノコギリの応用
pathアニメで0→100を1秒間ごとに繰り返す場合などに利用できます。サークルをグルグル回るとか…
Fc % Fr*(100/Fr)
上記の結果のスタート位置を12kずらす場合は
(Fc+12) % Fr *(100/Fr)
カスタムパラメーターのカーブによってコントロールされたバウンドの振幅
(Houdiniでスペアチャネルを利用して数式に乗算するのと同じ事です。シャレでパラメーター名をSpareにしてみました…)
ExpressionEditor内のFunctionにイロイロと関数がすでに用意されています。
?ヘルプにも実例が紹介されているので参考にしてみて下さい