SoftIK 魔法の式 2


以前、SoftimageXSIの技術参考サイトでも公開されていた
SoftIKに利用する式

y = 1-exp(-(x-1))+1

ある数値(上記では1)以上から徐々に変化が小さくなり、2まで達した時点で変化がとまる
以降xの値がどんなに大きくなっても2から変化しない
オブジェクトの動作をある地点から徐々に動きを止めたい場合に使用
IKのピキピキと伸びてしまう現象をこの式を使って抑制する かなりメジャーな方法
ネイピア数と累乗を利用して緩やかなカーブを書く様にするっと

ちっとわかりずらいので簡単なグラフを
softik01

さらには以下のように

y = 1-exp(-(x-a))+a

aは計算開始数、a=10なら、最大は11 a=100なら、最大は101
というよにa+1が最大値になる

分解すると、y=1-exp(-(x)) が核心部

もちろんMaxスクリプト(もしくは位置式など)でも使用できます
何度もこの魔法の式に助けられました

応用箇所はなかなかあるのではないかと
最近は自動制御部で使ってみました
実数リアクションをスクリプトで行うようなものですね
組み込み方は色々方法があります

んで、なんかごちゃごちゃ因数分解してくとこうなります

((1-exp(-(x-a+b)/b)+(a-b)/b)*b)

aは最大値、bは倍率、これで式の開始値を変幻自在に変えられます
ただし1≤b and a≥b、最大値を超えたり1以下になるとぶっ飛び仰天です

ほかにも良い方法はあると思います。お試しを

うんちく
元々はCINEMA 4Dでの技術をXSIにも適応してみた的な記事を読んだ記憶があります


Leave a comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

2 thoughts on “SoftIK 魔法の式