On this page |
概要 ¶
RBD Bullet Solver SOPには、シミュレーション中に動的に追加されるRBDオブジェクトを放出し続ける機能があります。 これは、 Bullet Object タブにある Emit RBDs チェックボックスを有効にすることで可能です。 この機能は、シミュレーションジオメトリを取り込み、さらに拘束ジオメトリも取り込んでそれをシミュレーションに追加します。
例: 単純な球エミッターのセットアップ ¶
-
Create シェルフのツールを使ってSphereを原点に作成します。
-
そのジオメトリレベルに入って、 Uniform Scale を
0.2
に下げ、 Primitive Type を Polygon に、 Frequency を8
に変更します。 -
Center パラメータのY値を
0.2
に上げて球が地面に乗るようにします。 -
Sphere SOPにRBD Configure SOPを追加して接続します。これは、球を割れのないリジッドボディオブジェクトとしてセットアップします。
-
Sphere SOPとRBD Configure SOPの間にAttribute Randomizeを挿入し、 Attribute Name を
v
に変更して放出の速度ベクトルをランダムにします。 -
Min Value を
0, 1, 0.5
、 Max Value を0, 15, 5
に設定します。これによって、放出される方向が上向きから斜め上向きの範囲に制限されます。 -
RBD Configure SOPの後にRBD Bullet Solver SOPを追加し、3本の出力を最初の3本の入力に接続します。
-
Collision タブの Ground Collision セクションの Ground Type ドロップダウンを None から Ground Plane に変更します。
-
Setup タブの Simulation セクションの Emit RBDs チェックボックスを有効にします。
プレイバーのを押すと、RBD Bullet Solver SOPが毎フレームで球を放出するようになったのが分かります。 リジッドボディの放出に割り当てられるキャッシュメモリを増やすことができます。 ソルバの Advanced タブの Emission Solver セクションを開いて、 Emission Cache Memory に新しい値を入力してください。
-
Switch SOPとNull SOPを追加して、そのNull SOPの出力をそのSwitch SOPの入力に接続します。
-
そのSwitch SOPの Select Input フィールドに
$FF%8==1
というエクスプレッションを設定します。これは、8フレームおきにスイッチを切り替えます。 -
このSwitch SOPを2回コピーアンドペーストし、それぞれの入力をRBD Configure SOPのConstraint Geometry出力(2番目の出力)、Proxy Geometry出力(3番目の出力)に接続してから、それぞれの出力をRBD Bullet Solverに接続します。
Note
ネットワークに変更を加えた後に再度シミュレーションを再生する場合には、その前にRBD Bullet Solver SOPの Reset Simulation ボタンをクリックする必要があります。
-
球を割りたいのであれば、RBD Configure SOPをRBD Material Fracture SOPに置き換えて、それぞれSwitch SOPに接続し直してください。
Reset Simulation ボタンをクリックしてプレイバーのを押しても、球が割れないことに気づくかと思います。 これは、内部拘束の強度が非常に強すぎることが原因です。
-
RBD Material Fracture SOPの Constraints タブにある Primary Strength パラメータを
45
に下げます。 -
プレイバーのを押してシミュレーションを再生します。