| On this page | |
| Since | 20.5 |
概要 ¶
MPM Colliderは、MPMシミュレーションのコンテキスト内で
MPM Solverで使用されるコライダーを定義することができます。
VDBコライダーのみがサポートされています。
このノードは、メッシュからVDB表現を生成したり、直接VDBを接続することができます。
作成されるコライダーに適切な解像度を設定するには、
MPM Containerの参照または直接接続が必要です。
Tip
非常に薄いコライダーの場合、グローバル解像度を上書きし、MPM Solverの Advanced タブにある Enable Particle-Level Collisions オプションを有効にすることを推奨します。
入力 ¶
Geometry to use as a Collider
コライダーとして使用するポリゴンメッシュまたはVDB。
MPM Container
シミュレーションのグローバル解像度を定義したMPM Container。
Note
ネットワークがごちゃごちゃしないようにしたいのであれば、この接続をスキップして、代わりに MPM Container パラメータでノード参照することができます。
パラメータ ¶
MPM Container
シミュレーションのグローバル解像度を定義したMPM Containerのノード参照。
Note
ワイヤー接続をしたいのであれば、このパラメータをスキップして、代わりにこのノードの2番目の入力にMPM Containerを直接接続することができます。
Collider Type
サポートされている色々なタイプのVDBコライダー。
Static
このコライダーは、シミュレーション中にメモリ内で単一surfaceVDBで表現されます。
これを一度指定すると、決して変更されません。
これが最も効率が良いコライダータイプです。
Animated (Rigid)
このコライダーは、単一surfaceVDBとトランスフォーム行列によって表現されます。
surfaceVDBは決して変更されず、フレーム毎にリジッドトランスフォームのみが更新されます。
これは、アニメーションするコライダーに対して最も効率が良く、サブステップ毎にフレーム間でトランスフォームが補間されるので非常に精度が良いです。
Animated (Deforming)
このコライダーは、surfaceVDBとvelVDBのペアで表現され、フレーム毎にそれらのフィールドを更新する必要があります。
このコライダータイプは Animated (Rigid) よりも処理が重いので、実際に変形が行なわれている場合にのみ、これを使用してください。
また、これらのフィールドは、より良い結果が得られるようにフレーム間で補間されます。それには、フレーム毎にOpenCL上でそれらのVDBを更新する必要があります。
Use Input Animation
生成されたVDBコライダーに入力アニメーションを適用します。
Move Pivot to Centroid
トランスフォームピボットをコライダーの中心に移動させます。 これによって、元の位置から遠く離れたコライダーの精度が向上します。
Tip
Collider Type が Animated (Rigid) の時、オフセットされたピボットから回転を補間する必要がある場合は、このオプションを無効にしておくほうが良い場合があります。
例えば、原点を中心に円を描くように回転するコライダーがある場合です。 ピボットをコライダーの中心に移動させると、コライダーが自身の周りを回転することになるため、軌道は回転駆動ではなく平行移動駆動になります。 この場合、補間された軌道はもはや円形ではなくなります。
Segmentation
各ピースが各自のVDBコライダーとして扱われるように入力ジオメトリを分割します。
None
ジオメトリが全体として扱われ、単一VDBコライダーが生成されます。
Name Attribute
name アトリビュートを使用してジオメトリを分割し、複数のVDBコライダーを生成します。
3D Connectivity
3D接続性を使用して、ジオメトリを分割し、複数のVDBコライダーを生成します。
Collision Response
コライダーがダイナミクスオブジェクトと接触した時の挙動を定義します。
Bounce
マテリアルタイプに応じてダイナミクスオブジェクトを跳ね返したり、停止させます。
Delete
ダイナミクスオブジェクトのポイントを削除します。
Tip
これを使用することで、シミュレーションが抵抗なしで実行された時にダイナミクスオブジェクトを動的にカットすることができます。
Reference Frame
Static タイプと Transformed タイプのコンテキスト内での、静止時のコライダーを表現するフレームを定義します。
Activation
コライダーを考慮するのか、無視するのかを定義します。
Geometry ¶
Create VDB from Polygons
このノード内にVDBを作成することができます。
Voxel Size
VDBのボクセル幅。
Exterior Band Voxels
狭帯域の外側部分(距離 >= 0)の幅。
Expand to Cover Velocity
surfaceグリッドとvelグリッドの両方のアクティブ範囲を拡張し、2フレーム間の移動距離をカバーします。
これによって、サブステップ中にグリッドの正確な補間を行なうのに十分なボクセルがアクティブになることが保証されます。
Fill Interior
より精度の高いコリジョン検出ができるようにsurfaceVDBの内側を充填します。
Invert SDF
surfaceVDBの符号を反転して、コライダーの内側に閉じ込められているダイナミクスオブジェクトをシミュレーションします。
Velocity ¶
Compute Velocity
アニメーションメッシュの内部Velocity計算を許可します。
Frame Sample
変形からポイントVelocityを計算するために使用するフレームオフセット。
Note
Velocity Approximation を Central Difference に設定した場合、 Frame Sample だけ前後にオフセットさせたジオメトリが使用されます。
Velocity Voxel Scale
Voxel Size にこの値を乗算して、velグリッドの解像度を定義します。
値が2の場合、ボクセルの数が8分の1のグリッドが生成されます。
Material ¶
Friction
コライダーがダイナミクスオブジェクトと接触した時に適用される摩擦量。
Create VDB from Attribute
ジオメトリ上で見つかった摩擦Pointアトリビュートに基づいて、摩擦グリッドを作成します。 これによって、ボクセル毎に摩擦を可変させることができます。
Sticky
ダイナミクスオブジェクトがコライダーサーフェスから離れた時であっても、そのダイナミクスオブジェクトのVelocityが投影できるようにします。 これによって、ダイナミクスオブジェクトがコライダーから離れないようになり、摩擦が十分に大きければ、そのダイナミクスオブジェクトは粘着っぽくなります。 コライダーの法線ベクトルとダイナミクスオブジェクトの相対Velocityの内積がこの値より小さい場合、そのダイナミクスオブジェクトの相対Velocityがそのコライダーサーフェスに投影されます。
Create VDB from Attribute
ジオメトリ上で見つかった粘着性Pointアトリビュートに基づいて、粘着性グリッドを作成します。 これによって、ボクセル毎に粘着性を可変させることができます。
Visualize ¶
VDB
生成された色々なグリッドを表示して、それぞれの値を検査することができます。
Trail Velocity
Collider Type が Animated(Deforming) の時にコライダーのVelocityフィールドを視覚化します。
Trail Count
Velocityフィールドの軌道を描くポイントの数。
Friction Min / Max
[min, max]範囲の摩擦をカラーランプの範囲に合うようにリマップします。
Sticky Min / Max
[min, max]範囲の粘着性をカラーランプの範囲に合うようにリマップします。
| See also |