On this page | |
Since | 18.0 |
このSOPは、入力ジオメトリとプロキシジオメトリを(アンパックされていれば)パックし、そのシミュレーションジオメトリ(プロキシジオメトリが利用不可であれば入力ジオメトリ)上にアトリビュートを作成して、そのアトリビュートが表現したBullet Packed Objectsを駆動します。
RBD Configure SOP ¶
RBD Configure SOPは、RBDオブジェクトセット別にそれぞれプロパティをセットアップすることができます。 Group パラメータでは、破片のグループ(例えば、木材の破片)を選択して、それらの破片を Active 、 Animated 、 Deforming 、 Sleeping にするかどうかをセットアップすることができます。 さらに、破片に使用するコリジョン形状のタイプ、コリジョンの余裕代、速度制限などもセットアップすることができます。
Physical Attributes コントロールは、材質タイプ別に事前に定義された密度、摩擦、跳ね返り係数などが用意されているので非常に役に立ちます。 例えば、材質の Type を Wood に設定すると、 Balsa Wood 、 Beech 、 Birch 、 Cedar 、 Mahogany 、 Maple 、 Oak 、 Pine 、 Plywood の中からプリセットを選択することができます。 このプリセットは、技術書に書かれているような値を使って自動的に適切な Density 、 Friction 、 Bounce の係数を設定します。 そのため、物理的に現実的な値から始めて、粉砕の設定を進めることができます。
他にも、あなたがセットアップしたいプロパティに対して Visualization オプションもたくさん用意されています。 例えば、Activeにする破片をセットアップしたら、Visualizeドロップダウンメニューから Active を選択することができます。 Bounding Type を Bounding Box に変更し、Bullet DataのActiveの横にある Use Bounds チェックボックスを有効にすることで、ビューポート内で境界ボックスを用意しなくても手動でActiveにする破片を制御することができます。
さらに、ビューポートの上部には、もっと詳細な視覚化ができるように外側に展開するためのビルトインの Exploded Scale パラメータもあります。
Note
別の方法として、このノードの4番目の入力に独自の境界ジオメトリを接続することで、その境界ジオメトリを使用することができます。
Note
ジオメトリが一度パックされると、まず最初にアンパックしない限り、そのジオメトリとプロキシジオメトリの編集ができなくなるので、このSOPはノードチェーンの一番下で使用することを推奨します。
Note
グループはパックジオメトリにプロモートされますが、inside
グループとoutside
グループは通常ではピースのジオメトリ全体を網羅していないためにプロモート時に正しくない結果が生じるため、それらのグループは省かれます。
グループとアトリビュートは保持され、ジオメトリをアンパックした時に利用可能です。
パラメータ ¶
Visualization ¶
Visualize
None
視覚化なし。
Active
active
アトリビュートが設定されていると、そのactive
アトリビュートが1
のパックフラグメントが緑、0
が黒で表示されます。
Animated
animated
アトリビュートが設定されていると、そのanimated
アトリビュートが1
のパックフラグメントが赤、0
が青で表示されます。
Deforming
deforming
アトリビュートが設定されていると、そのdeforming
アトリビュートが1
のパックフラグメントが赤、0
が青で表示されます。
Sleeping
bullet_sleeping
アトリビュートが設定されていると、そのbullet_sleeping
アトリビュートが1
のパックフラグメントが赤、0
が青で表示されます。
Bounce
bounce
アトリビュート値の範囲とジオメトリ上のそれに該当するカラーを示したヒストグラムが表示されます。
Density
density
アトリビュート値の範囲とジオメトリ上のそれに該当するカラーを示したヒストグラムが表示されます。
Friction
friction
アトリビュート値の範囲とジオメトリ上のそれに該当するカラーを示したヒストグラムが表示されます。
Rotational Stiffness
inertialtensorstiffness
アトリビュート値の範囲とジオメトリ上のそれに該当するカラーを示したヒストグラムが表示されます。
Pinned
__pin
アトリビュートが設定されていると、その__pin
アトリビュートが1
のパックフラグメントが赤、0
が青で表示されます。
Exploded Scale
視覚化されたピースを展開する量。各ピースは、中心までの距離に比例して移動します。1
の値は、そのオブジェクトのサイズの約2倍の距離だけ移動します。
Units ¶
Unit Mass (kg)
密度を適用するための意図した質量スケール。
Unit Length (m)
密度を適用するための意図した長さスケール。
Bounds ¶
Bounding Type
境界ボリュームの形状。
Size
境界ボリュームのサイズ。
Center
境界ボリュームの中心。
Rotation
境界ボリュームの回転。
Attributes ¶
Transfer Attributes
パックジオメトリに転送するアトリビュートのリストを指定します。
Attributes
Group パラメータを使って入力ジオメトリのサブセットに対してアトリビュートを設定することができます。 これによって、単一ノードでジオメトリの別々のサブセットに色々なアトリビュート値を設定することができます。
Create Path Attribute
“op:”の後にRBD Configure SOPのフルパスを付けた値をpath
アトリビュート値として、新しく生成されたパックプリミティブに割り当てます。
Create Packed Fragments
無効にすると、パックフラグメントの代わりにパックジオメトリを生成します。 RBDを放出する際は、パックフラグメントよりもパックジオメトリの方がパフォーマンスが良くなります。
Group
アトリビュートを編集するシミュレーションジオメトリ内のプリミティブ。
Bullet Data ¶
Add Active
active
アトリビュートを作成して設定します。
Active
指定した値をactive
アトリビュートに設定します。デフォルトは1です。
Use Bounds
指定した境界内のプリミティブに対して、指定した値をアトリビュート値に設定します。 その境界外のプリミティブには、その逆の値が設定されます。
Add Animated
animated
アトリビュートを作成して設定します。
Animated
指定した値をanimated
アトリビュートに設定します。
Add Deforming
deforming
アトリビュートを作成して設定します。
Deforming
指定した値をdeforming
アトリビュートに設定します。
Add Sleeping
bullet_sleeping
アトリビュートを作成して設定します。
Sleeping
指定した値をbullet_sleeping
アトリビュートに設定します。
Add Enable Sleeping
bullet_want_deactivate
アトリビュートを作成して設定します。
Enable Sleeping
指定した値をbullet_want_deactivate
アトリビュートに設定します。
Add Sleep Linear Threshold
bullet_linear_sleep_threshold
アトリビュートを作成して設定します。
Sleep Linear Threshold
指定した値をbullet_linear_sleep_threshold
アトリビュートに設定します。
Add Sleep Angular Threshold
bullet_angular_sleep_threshold
アトリビュートを作成して設定します。
Sleep Angular Threshold
指定した値をbullet_angular_sleep_threshold
アトリビュートに設定します。
Add Geometry Representation
bullet_georep
アトリビュートを作成して設定します。デフォルトはconvex hull
です。
Geometry Representation
指定した値をbullet_georep
アトリビュートに設定します。
Note
コリジョンジオメトリを構成する時は、これを使用することで、各Colliderに最適な色々なジオメトリ表現を振り分けることができます。
Add Collision Padding
bullet_collision_margin
アトリビュートを作成して設定します。
Collision Padding
指定した値をbullet_collision_margin
アトリビュートに設定します。
Add Shrink Amount
bullet_adjust_geometry
アトリビュートを作成して、その値を1に設定し、bullet_shrink_amount
アトリビュートを作成します。
Shrink Amount
指定した値をbullet_shrink_amount
アトリビュートに設定します。
Add Collision Group
collisiongroup
アトリビュートを作成して設定します。
Collision Group
指定した値をcollisiongroup
アトリビュートに設定します。
Add Collision Ignore
collisionignore
アトリビュートを作成して設定します。
Collision Ignore
指定した値をcollisionignore
アトリビュートに設定します。
Min Activation Impulse
オブジェクトを非アクティブからアクティブに切り替えさせる衝突の最小Impulse。
衝突が起きた瞬間にアクティブ化が起きます。
activationignore
アトリビュートを使用することで、オブジェクトが特定のオブジェクトからの衝突によってアクティブにならないようにすることができます。
Activation Ignore
Min Activation Impulse を有効にすると、このパターンにマッチしたオブジェクトのコリジョンは、そのオブジェクトを非アクティブにします。
このパターンには、collisionignore
アトリビュートと同じ構文を使用します。
Add Allow Initial Overlap
有効にすると、 Allow Initial Overlap 設定がグループ内のオブジェクトに適用されます。
Allow Initial Overlap
ソルバが初回でオブジェクトを見た時に、そのオブジェクトが初期段階でシミュレーション内の他のオブジェクトと重なっていないかどうかをチェックし、 そのようなオブジェクト同士が強制的に離されてしまわないようにします。 これが無効になっている場合、初期段階で重なっているオブジェクトは、干渉が解決されるように引き離されます。
Tip
初期段階で重なっているオブジェクト間の干渉をVelocityを加えずに解決するには、Bullet solverの Split Impulse を有効にして、 Penetration Threshold を0に設定してください。
Min Sticky Collision Impulse
このオブジェクトが別のオブジェクトに引っ付くようになるコリジョンからの最小Impulse(力積)。 オブジェクトを引っ付けるには、この値を0以上にしてください。
Max Sticky Collision Objects
このオブジェクトが引っ付くことができる他のオブジェクトの最大の数。 この値を0以下にすると、このオブジェクトは無制限で他のオブジェクトに引っ付くことができます。
Max Sticky Collision Points
このオブジェクトを他のオブジェクトに引っ付けるのに使用可能なアンカーポイント(拘束)の最大の数。
Sticky Collision Ignore
このパターンにマッチしたオブジェクトに衝突しても、Sticky Collisions(粘着性のある衝突)は発生しません。
このパターンには、collisionignore
アトリビュートと同じ構文を使用します。
Add Speed Min
speedmin
アトリビュートを作成して設定します。デフォルトは-1
(効果なし)です。
Speed Min
指定した値をspeedmin
アトリビュートに設定します。
Add Speed Max
speedmax
アトリビュートを作成して設定します。デフォルトは-1
(効果なし)です。
Speed Max
指定した値をspeedmax
アトリビュートに設定します。
Add Spin Min
spinmin
アトリビュートを作成して設定します。デフォルトは-1
(効果なし)です。
Spin Min
指定した値をspinmin
アトリビュートに設定します。
Add Spin Max
spinmax
アトリビュートを作成して設定します。デフォルトは-1
(効果なし)です。
Spin Max
指定した値をspinmax
アトリビュートに設定します。
Add Acceleration Max
accelmax
アトリビュートを作成して設定します。デフォルトは-1
(効果なし)です。
Acceleration Max
指定した値をaccelmax
アトリビュートに設定します。
Add Angular Acceleration Max
angaccelmax
アトリビュートを作成して設定します。デフォルトは-1
(効果なし)です。
Angular Acceleration Max
指定した値をangaccelmax
アトリビュートに設定します。
Physical Attributes ¶
Type
マテリアルベースの密度、跳ね返り係数、摩擦係数のプリセットを事前定義されたマテリアルタイプから選択します。
Add Density
density
アトリビュートを作成して設定します。
Density (kg/m3)
kg/m3単位で表示されたプリセットベースの密度。
User Density
kg/m3単位で指定されたプリセットベースの密度を上書きします。
Var
ユーザーベースの入力からパーセンテージの増/減を指定します。
例えば、値が1000
の閾値にVariance(ばらつき)を0.1
に設定すると、その結果の範囲は900
から1100
になります。
Varianceを1
に設定すると、その範囲は0
から2000
になります。
Add Bounce
bounce
アトリビュートを作成して設定します。
Bounce
プリセットベースの跳ね返り係数。
Note
このプリセット値は近似値であり、物理的に正確ではありません。
User Bounce
プリセットベースの跳ね返り係数を上書きします。
Add Friction
friction
アトリビュートを作成して設定します。
Friction
プリセットベースの摩擦係数。
Note
このプリセット値は、2つの材料間の摩擦係数として指定されています。
User Friction
プリセットベースの摩擦係数を上書きします。
Add Rotational Stiffness
inertialtensorstiffness
アトリビュートを作成して設定します。
Rotational Stiffness
指定した値をinertialtensorstiffness
アトリビュートに設定します。
Constraints ¶
Add Pin
Type に設定されたタイプの拘束を使用するように構成された長さ0
の拘束ジオメトリを作成します。
__pin
アトリビュートを作成して、指定した値をそのアトリビュートに設定して、SOP Solverを駆動させ、強制的にピースをその場に留まらせます。
Pin
0
に設定すると、オブジェクトはピン留めされず、拘束は作成されません。
1
に設定すると、オブジェクトはその場でピン留めされて、Pin
拘束が作成されます。
Type
Hard (Deprecated)
Hard Constraintsを作成します。
この拘束名はPin
に設定されています。
Glue
Glue Constraintsを作成します。
Glue拘束のターゲットオブジェクトの名前には、__gluepin/
の後にピン留めされたピースの名前が付きます。
これらのターゲットピースは、ジオメトリ表現を持たないRBD Bullet Solver SOPで動的に生成されます。
Soft
Bullet Soft Constraintsを作成します。
Emission ¶
Add RBD Bullet Emit
Emit オプションが有効な時、RBD Bullet Solver SOPを使ってどのピースを放出し、どのピースを通常のRBDsとして扱うのかを制御するためのrbdbullet_emit
Pointアトリビュートを作成します。
これによって、アニメーション/変形させる通常のRBDsと放出されるRBDsを混在させることができます。
RBD Bullet Emit
0
に設定すると、オブジェクトは、放出されるRBDsではなく通常のRBDsとして扱われます。
1
に設定すると、オブジェクトは、放出されるRBDsとして扱われ、それらがRBD Bullet Solverに接続されているフレーム毎に放出されます。
See also |