voronoi delete glues


Voroni で破砕したオブジェクトの破砕をコントロールするには、Glue (糊) コンストレインを使うのが一般的。ここでは形状を使って Glue コンストレインを削除する方法を紹介する。

使用したビルド: 15.5.628

1. 元シーンの作成

  1. Voronoi Fracture ページからアクセス可能な voronoifracture.zip をダウンロード。
  2. voronoifracture.hip を開く。

      ビューポートには分割されたトーラスが表示され、ネットワークエディタでは /obj/box_object1 内が表示されているはず。
  3. 表示フラグ (ノードの右側の水色の帯) を explodedview1 ノードから voronoifracture1 ノードに移す。
      explodedview1 はもう使わないので削除しても良い。
  4. switch2 ノードの Select Input を 0 にする。

      ピザボックスがモザイクのようになった形状が表示されるはず。
    この形状を元に話を進める。

2. RBD シミュレーション

  1. ネットワークエディタ内で U キーを押すなりして一つ上の階層 (/obj) に上がる。
      あるのは box_object1 ノードのみ。
  2. box_object1 の TY の値を 3 など、原点より上に設定。
  3. box_object1 を選択したまま、Rigid Bodies シェルフから RBD Fractures ツールを実行。
      表示されるダイアログでは "RBD Packed Object" を選択。
  4. Create シェルフから Box を実行。作成された Box (box_object2) の Translate 値を <-2.5, 3.0, 0> とする。
  5. もう一度 Create シェルフから Box を実行するかコピペをして Box をもう一つ作成 (box_object3)。この Translate 値を <2.5;, 3.0, 0> とする。
      ここまでで、下のように3つのオブジェクトが出来ている。

      両端のオブジェクトがアンカーの役割を果たすので、これら3つのオブジェクトの Y 値が揃っていることが望ましい。
  6. 両端の立方体、box_object2 と box_object3 の両方を選択、Rigid Bodies シェルフから Static Object ツールを実行。
      こうすることで両端の立方体は動かず、挟まれた破砕オブジェクトだけが動くようになる。
  7. Rigid Bodies シェルフから Ground Plane ツールを実行。
      3つの box オブジェクトの下に地面オブジェクトが出来る。再生すれば、破砕オブジェクトだけが落下し、地面に当たって砕けるはず。
  8. Rigid Bodies シェルフの右の方から Glue Adjacent ツールを実行、ビューポートで box_objec1, box_object2, box_object3 の3つを選択、Enter キーを押して確定する。
      Glue コンストレインが正しく作成されている場合、ビューポート内で W キーを押してワイヤフレーム表示にすれば、各立方体の中心間に赤い線が引かれているのがわかる。これら一つ一つが Glue Constraints。

      Glue コンストレインが有効なので、再生してもすべての立方体が静止状態。

3. 形状を使った Glue コンストレインの削除

Glue コンストレインを作成したことにより、/obj 以下に glue_box_object1_to_box_object3 というノードが出来ているはず。

  1. glue_box_object1_to_box_object3 ノード内に入る。
  2. ここで TAB-> sphere と球 (sphere1) を作成。Center の値を <0, 3, 0> とする。
  3. 現在のフレームが1フレーム目であることを確認。Uniform Scale の値を 0 にして、Alt キーを押しながら LMB で Uniform Scale ラベルをクリックしてキーフレームを設定。
  4. 現在のフレームを48フレーム目程度に移動、Uniform Scale の値を 2 にして、Alt+LMB で Uniform Scale をクリックしてキーフレームを設定。
      タイムラインをスクラブすれば球の大きさが変わる。
  5. 同じく TAB-> group とグループノード (group1) を作成。 constraint_attribs と OUT の間に挿入し、group1 の右側の入力に sphere1 をつなぐ。
  6. group1 のパラメータビューで
    • Entry を Points
    • Number タブで
      • Enable を オフ
    • Bounding タブで
      • Enable を オン
      • Bounding Type を Enable を "Bounding Object (points only)" に
    表示フラグを group1 に移し、再生してみると以下の通り。

    グループに含まれるポイントが球の大きさでコントロールされている。
  7. Delete ノードを作成。出来た delete1 ノードを group1 と OUT の間に挿入。
    • Group フィールドに group1 を追加
    • Entry を Points
  8. 一つ上の階層 (/obj) に戻り、box_object2 と box_object3 の表示をオフにし、再生すると一番上の通り。

まとめ

0 件のコメント:

コメントを投稿