On this page |
TabメニューからMPM Configureのサンプルがいくつか利用可能です。 これらは、学習目的でノードネットワークを配置するシェルフツールに似ています。 MPM Configure Sand Instances サンプルは、 Sand マテリアルタイプの使い方を示したものです。 砂場を歩くCragをシミュレーションする単純なノードネットワークを配置します。
重要なノード ¶
sand
これは、 Sand マテリアルプリセットを使用したMPM Sourceです。
crag
これはMPM Colliderで、 Animated (Rigid) コライダータイプを使用します。
これにより、ソルバによるコライダーの補間が非常に正確になります。
保持するVDBが1つだけで、トランスフォーム間を補間するため、非常に正確な衝突が得られます。
Crag: Test Geometryは複数のリジッドピースで構成され、 Name Attribute に基づいて、これらすべてのピースがリジッドであると認識し、ピース毎にコライダーを作成します(合計67個)。
変形しているように見えるものに対しても、非常に正確な衝突が可能になります。
mpmcontainer
MPM Containerは、 Particle Separation パラメータを使用してシミュレーションの解像度を定義します。
mpmsolver
これはシーンの解を求めるMPM Solverです。マテリアルがデフォルトで指定したサブステップ数よりも多くを必要する場合の不安定さを修復するために、 Material Condition を
0.7
に下げています。
orient_from_F_and_set_name
このAttribute Wrangleは、初期のランダムな向きをポイントに指定し、変形勾配から回転を抽出します。
フレーム毎に変形勾配の回転コンポーネントを抽出し、それをポイントのランダムな向きに加算します。
これにより、砂場のルックにバリエーションが加わり、より自然に見えるようになります。
rocks
各ポイントにインスタンス化する岩ジオメトリ。
instance_rocks
このCopy to Pointsノードは、それぞれの向きのポイントに岩をインスタンス化します。
このサンプルから学ぶこと ¶
このサンプルの目的は、変形勾配から向きの情報を抽出して、インスタンス化できることを示すことです。 また、変形コライダーを、複数の剛体的にトランスフォームするコライダーに分割できることも示します。
To... | Do this |
---|---|
岩のランダムな回転を削除する |
//rotate(rot, fit01(rand(@id%7745), -3.14, 3.14), normalize(fit01(vector(rand(@id%6651)),-1,1))); //rotate(rot, fit01(rand(@id%9531), -3.14, 3.14), normalize(fit01(vector(rand(@id%1232)),-1,1))); |
パーティクルのランダムな回転を確認する |
ディスプレイツールバーで
|
様々な形状の岩を確認する |
|