Houdini、シェルフ勉強回。
“RBD Sphere Objects”なるシェルフがあることに先日気づきまして、「何っ!」となった勢いのままに書いてます。
Rigid Bodiesシェルフのカテゴリにあります。
何ができるのか
これを使うと各破片を球の集合に近似し、それを用いたRBDシミュレーションのネットワークを構築、さらにシミュレーション結果と元の破片を置換までしてくれます。
つまり、これがこうなって、
この球の集まりをシミュレーションして元の破片と置換
ここまでのネットワークを構築してくれるシェルフ。
ネットワーク
ネットワークはこんな感じ。
使い方
シェルフをおす。
利点
複雑な形状(凹型とか)でもパフォーマンスを(それほど)下げることなく、正確性を(ある程度)保ったままシミュレーションすることが可能。
たとえばこういう凹型形状は、RBDでシミュレーションすると、コリジョン形状が標準で凸型になるように設定されます。
これだと、へこんでる部分の衝突判定がうまくいかないので、へこんでても大丈夫な設定に変更するのですが、それだとシミュレーション負荷は高いのであまり使いたくないのです。
この”RBD Sphere Objects”シェルフのように、形状を球の集合体に近似すると、コリジョン形状も上図のように球体(凸型)の集合体となり、元の形状に近い形になります。形状によっては処理時間も早かったりします。
向いてないと思われる場合
次のような形状は、この方法は適していないと思います。
上図のような、薄い殻のような形状を球群で表すと、下図のように小さな球体が膨大な数必要になり、結果としてシミュレーション等のパフォーマンス低下につながります。
初めに示したテストジオメトリのような形状の場合、大きな球が体積の大部分を占め、隙間を小さな埋めることで、少ない球の数で形を近似できるので、結構軽くシミュレーションできます。
私は仕事で破壊を作るときは、高確率でこの方法を使う、「VDB to Sphere(SOP)」愛好家なのですが、まさかシェルフで簡単に作れたとは・・・おそろしい。
以上、また次回!
2018/11/20追記
Houdini 17.0.352では、”RBD Sphere Proxy”という名前で、新しいアイコンになってました。
コメント