MRが楽しい

MRやVRについて学習したことを書き残す

Blender2.8でCell Fractureアドオンを使って物体をバラバラの形状にする

本日は Blender2.8 のビルドインアドオンの調査枠です。
Blender2.8でCell Fractureアドオンを使って物体をバラバラの形状にする手順を記事にします。

Cell Fracture アドオン

オブジェクトをランダムな形状でバラバラにするための機能が実装されたアドオンです。
blender-addons.org

アドオンの有効化

Auto Mirror アドオンは Blender に含まれているため、アドオンを有効化するだけで利用可能です。
Blender を起動し、メニューから 編集 -> プリファレンス を開きます。
f:id:bluebirdofoz:20200703224943j:plain

Blenderプリファレンスダイアログが開くので[アドオン]タブを開きます。
[Cell Fracture]を検索します。
f:id:bluebirdofoz:20200703224953j:plain

一覧にアドオンが表示されるので、チェックを入れて有効化します。
これでアドオンのインストールは完了です。
f:id:bluebirdofoz:20200703225003j:plain

アドオンを有効化すると[3Dビュー]の[オブジェクト]->[クイックエフェクト]に[Cell Fracture]が追加されます。
f:id:bluebirdofoz:20200703225013j:plain

オブジェクトをバラバラの形状にする

Cell Fracture アドオンを使ってオブジェクトをバラバラの形状にしてみます。
最初に、バラバラにするオブジェクトの細分化を行います。
オブジェクトを選択して[編集モード]に移行します。
f:id:bluebirdofoz:20200703225025j:plain

オブジェクトを選択した状態で、右クリックから[細分化]を実行します。
f:id:bluebirdofoz:20200703225034j:plain

表示される調整パネルで細分化の分割量を調整します。
今回は 5 を設定しました。
f:id:bluebirdofoz:20200703225046j:plain

これでオブジェクトが細分化されました。
[オブジェクトモード]に戻ります。
f:id:bluebirdofoz:20200703225057j:plain

[オブジェクト] -> [クイックエフェクト] -> [Cell Fracture] を実行します。
f:id:bluebirdofoz:20200703225108j:plain

詳細設定のダイアログが表示されます。
設定の内容については以下のページが詳しいです。
3d-memo.blog.jp
以下、上記ページの引用です。
・【Point Source】分割数の設定。複数選択可。

Own Verts : 選択したオブジェクトの頂点数が分割数になる。
Child Verts : 子オブジェクトの頂点数が分割数に。
Own Particles : 「パーティクル」で設定した数
子パーティクル(Child Particles)  : 子の「パーティクル」で設定した数
グリースペンシル(Grease Pencil) : グリースペンシルで描いた頂点数。
Source Limit :分割数の最大数。 0で無制限。
ノイズ(Noise) : ランダム性。数値が高いほど不規則になる。

・【Recursive Shatter】分割されたオブジェクト(破片)の再分割の設定

Recursion : 破片をさらに分割する。Recursionの数値×Point Source数値が、分割される数になる。
Source Limit : 分割の最大数。0で無制限。
Clamp Recursion : オブジェクトの最大数。この値を超えたオブジェクトを作らないように、再分割を制限できる。0で無効。

以下は再分割する破片の対象を選ぶ。
ランダム(Random) : ランダム
Small : 小さいオブジェクト
Big : 大きいオブジェクト
Cursor Close : カーソルに近いオブジェクト
Cursor Far : カーソルから遠いオブジェクト

・【Mesh Data】破片の断面に関する設定

Smooth Faces : スムーズ
シャープな辺(Sharp Edges) : 無効の場合はエッジを鋭く設定。(??"Set sharp edges when disabled"が原文)
Apply Split Edge : 鋭いエッジを分割 (無効だと断面の角が取れて丸くなる。)
Match Data : オリジナルメッシュと同じマテリアルとレイヤーを使用
マテリアル(Material) : 内側(断面)部分のマテリアルをインデックス番号で指定
Interior VGroup : 内側(断面)部分の頂点グループを作成
余白(Margin) : 破片同士の隙間をあける(物理演算がより安定する)
Split Islands : 分離したメッシュを分割

今回はノイズを 1.0 に設定して反映してみます。
f:id:bluebirdofoz:20200703225128j:plain

[OK]をクリックして実行すると、以下の通り、オブジェクトがバラバラの形状に分割されました。
f:id:bluebirdofoz:20200703225137j:plain

作成元となったオブジェクトは自動では削除されません。
元のオブジェクトとバラバラのオブジェクトが重なった状態になっています。
元のオブジェクトは[目玉]アイコンをクリックして非表示にするか、右クリックで[削除]しておきます。
f:id:bluebirdofoz:20200704224357j:plain

アニメーションでの活用

Blenderの物理演算の機能と組み合わせて利用すれば、以下のような物体がバラバラになるアニメーションをシミュレーションできます。
bluebirdofoz.hatenablog.com