Houdini 20.0 破壊

ガイドシミュレーション

ガイドシミュレーションは、既存シミュレーションの破片の動きを利用して、高解像度シミュレーションの破片の動きを駆動させます。 RBD Bullet Solver SOPGuided Simulation タブの Use Guides を有効にし、5番目の入力に既存シミュレーションの出力を接続することで、ガイドシミュレーションを作成することができます。 これは、ソルバが近くにある破片を検索し、その破片が何かと衝突して崩壊するまでは、それと同じVelocityと全体の動きを維持します。

低解像度の粉砕

高解像度の粉砕

Note

RBD Bullet Solver SOPの Visualize タブには、 Show Guided (Blue) オプションが用意されています。 これは、まだガイドシミュレーションで制御されている破片を調べるのに非常に役に立ちます。

低解像度のシミュレーション

高解像度のシミュレーション

ガイドシミュレーション

RBD Bullet Solver SOPGuide タブには、 Guide Method などの利用したいセットアップオプションがいくつか用意されています。 他にも Release Threshold系のパラメータ も用意されています。 それらのパラメータは、破片のガイドを停止するタイミングを決めることができます。通常では、これは線形速度と角速度に基づいて決まります。

この5番目の入力は、必ずしもシミュレーションである必要はありません。 他にも通常のアニメーションのモーションを接続して、破片をそのモーションに追従させることができます。 以下の例では、Bend SOPを使って、破片を左右の方向へ分割させています。

ガイドシミュレーションをフルコントロールしたいのであれば、上流にRBD Guide Setupノードを追加すると良いでしょう。 そのノードには、関連するパラメータがすべて揃っていて、例えば、使用したいフレーム範囲とか隣接ピースを含める方法を決めることができます。 独自の方法でガイドの強度を制御できるように、 Use VEXpression ダイアログも用意されています。

Note

この例では、RBD Guide Setupノードを使用せず、ソルバ内ですべての設定を行なっています。 ソルバの Advanced タブに進んで、 Guide セクションの Use Pre-Configured Setup を無効にしてください。

アニメーションジオメトリ

ガイドシミュレーション

サンプル: 単純なガイドシミュレーションのセットアップ

  1. Create シェルフのツールを使ってBoxを原点に配置します。

  2. ジオメトリレベルに入って、 Size パラメータのY値を4に設定します。

  3. Center パラメータのY値を2に設定して、ボックスが地面上に乗るようにします。

  4. RBD Material Fracture SOPを追加して、1番目の入力をそのボックスの出力に接続します。

  5. Fracture Level パラメータの+をクリックして粉砕を追加します。これで値が3になっているはずです。

  6. Chipping タブの Enable Chipping を有効にします。 これによって、粉砕した破片のコーナー上にリアルな小さい削屑の破片が生成されます。

  7. Details タブの Edge Detail を有効にすると、切断面にノイズが足されるので、エッジがよりギザギザな感じになります。

  8. さらに Interior Detail も有効にすると、粉砕後に露出された内側サーフェスにノイズとディスプレイスメントが足されます。

    Note

    RBD Material Fracture SOPの2番目の入力と出力は拘束です。 これらの拘束は、粉砕した破片をそのまま維持する強度を制御する接着拘束です。 Constraints タブの Primary Strength パラメータは、粉砕したメインの破片をそのまま維持する強度を制御し、 Chipping Glue Strength パラメータは、その粉砕したメインの破片に削屑の破片を接着させる強度を制御します。

  9. それらの破片をもっと簡単に崩れやすくするために、 Constraints タブの Primary Strength パラメータを100Chipping Glue Strength パラメータを50に変更します。

  10. RBD Bullet Solver SOPを追加し、最初の3つの入力をRBD Material Fracture SOPの3つの出力にそれぞれ接続します。

  11. Collision タブの Ground Collision セクションの Ground Type ドロップダウンを None から Ground Plane に変更します。

  12. Bend SOPを追加し、その1番目の入力をRBD Material Fracture SOPの1番目の出力に接続し、そのBend SOPの出力をRBD Bullet Solver SOPの5番目の入力に接続します。

  13. そのBend SOPの Capture Direction パラメータを0,1,0に変更して、そのキャプチャ方向をY方向にします。

  14. ボックスのY方向の長さが4ユニット分あるので、 Capture Length パラメータを4に変更します。

  15. Bend セクションの Enable チェックボックスを無効にしてベンドを無効にし、 Twist セクションの Enable チェックボックスを有効にしてツイストを有効にします。

  16. Twist パラメータに$FF*3エクスプレッションを使用します。これは、現行フレーム番号($FF)に3の値を乗算します。

    プレイバーのを押すと、捻りの動きによって支柱が変形しているのがわかると思います。

  17. RBD Bullet Solver SOPGuide タブの Enable Guides チェックボックスを有効にします。

    再びを押すと、一部で異常な破壊の挙動が見受けられます。 もっと良い感じの崩壊の結果を得るためには、もう少し値を微調整する必要があります。

  18. Guide タブの Blend パラメータを0.7に下げます。 このパラメータは、ガイドジオメトリが破片の挙動に影響を与える強さをブレンドします。 1の値はガイドジオメトリがフルコントロールになることを意味します。

  19. Release Thresholds セクションで、 Linear Threshold パラメータと Angular Threshold パラメータを無効にします。 これによって、Bullet Solverで作成された内部拘束を無効にします。この内部拘束は、シミュレーションジオメトリをガイドジオメトリにピン留めします。

  20. Accumulated セクションで、 Distance Threshold パラメータを有効にして、値を0.15に設定します。 これによって、破片が元の位置から累積して0.15の距離だけ移動すると拘束が切断されます。

  21. Advanced タブの Guided Neighbors チェックボックスを有効にします。

  22. その Guided Neighbors セクションの Ensure Neighbor チェックボックスを有効にします。 これは、隣接する破片が既にガイドシミュレーションから切断されているかどうかを破片毎にチェックします。 既に切断されていれば、その破片も切断されます。

  23. プレイバーのを押してシミュレーションを再生します。

破壊

材質別のRBD粉砕

次のステップ

材質ベースの破壊の紹介

  • はじめよう

    ソースシーンを読み込んで、それについて見ていきましょう。

  • チュートリアル

    ステップバイステップで学ぶ材質ベースの破壊入門。