No More Retake

3DCG屋さん向けTips&Referenceサイト

メニュー

Houdini:Damping V&W

Houdini回!
Geometry Wrangle(DOP)で強制的に、アトリビュートvとwを減衰させる方法です。

「RBD PackedでPOP Drag Spin(DOP)使うとおかしなことになる」、というので、代わりになるものはないかと調べたらodforceに減衰についてのスレッドが立ってました。ありがたや。

何もしないのとの比較動画を作ってみました。上が通常、下がWrangleでのDamping有効。

DOPネットワークは標準的なRBDの組み方。

赤く色付けたノードGeometryWrangle(DOP)に以下のようなVEXコードを書いて、減衰させているそうな。

v@w *= 0.98;
v@v *= 0.98;

毎処理ごとに、v(速度)とw(回転)の値に0.98がかけられていきます。
24FPSの場合1秒後には、0.98の24乗=0.615…、とおよそ6割になります。
なかなか減りますね。減衰させすぎると不自然な動きになるので注意が必要です。

odforceのスレッドでは、最終的に次のようなコードが紹介されていました。

float d = 0.5;
v@w *= pow(d, @TimeInc);
v@v *= pow(d, @TimeInc);

頭いいなと思いました。
変数dの値で、1秒後にどのくらいvとwの値を減衰させられるか指定できるようになっています。ここでは0.5なので、1秒後にそれぞれvとwの値は半分になります。2秒後にはさらにその半分と、どんどん半分になっていきます。

以下、式についてもうすこし解説。

つまり変数dの値によって1秒後の減衰率をコントロールできると。あたまいいなと思いました。

これはサブステップ1のときなので、1以上サブステップを切った祭は、それを考慮した式にしないといけない・・・たぶんね。

でも、あたまいいなとおもいました。

以上、また次回!

サンプルファイル RbdDamping_Sample.hiplc


参考

https://www.sidefx.com/forum/topic/57357/#post-256852

関連記事

コメントをお待ちしております

このサイトについて

3DCG Tipsサイト。Houdiniの記事が多めです。

RSS

follow us in feedly

アンケート

どのようなタイプの教材を好みますか?(複数可)

View Results

Loading ... Loading ...

言語切り替え

  • English (United States)
  • 日本語

Archives

  • 2019 (3)
  • 2018 (33)
  • 2017 (29)
  • 2016 (36)
  • 2015 (64)
  • 2014 (54)
  • 2013 (60)
  • 2012 (55)

スポンサードリンク