ダイナミクスを利用した多数のモデルの配置方法
https://www.youtube.com/watch?v=cypu349SXkQ
不規則な形状のメッシュを多数ランダムに配置するには、時間がかかる場合があります。例えばサンプルシーンのような場合、ティーポットが食い込むことがないように、手動で重ねて配置していくのは難しい作業です。このような場合には、ダイナミクスの機能を利用すると、簡単に配置できるようになります。同様の解説をチュートリアルテキスト「ダイナミクスを利用したアイテム配置」でも解説していますので、そちらもご参照ください。
サンプルとなるシーンには床となるメッシュレイヤーと、重ねて配置するメッシュとティーポットを用意しています。まずはこのティーポットを多数増やしましょう。複製で増やすのですが、形状自体に変わりはないので、今回はインスタンスで複製するようにします。さらに、初期状態で配置にばらつきを与えるため、インスタンススキャッタツールを使います。カウントの数を100に指定し、100個のインスタンスを複製します。
複製したら、アイテムリスト上で扱いやすくするため、大元のTeapotと複製したインスタンスとを選択し、Ctrl+GでGroup Locatorの中に収めます。Group Locatorの中に収めるのは、アイテムリストを整理して見やすくなるというだけでなく、Group Locatorをダブルクリックすると、その中にあるアイテムがすべて選択されますので、アイテムの選択を行いやすくするというメリットがあります。
作成したティーポットを床の上へと落下させることで、ダイナミクス演算を利用して、ティーポットを配置させるため、まずはティーポットをすべて選択し、床の上側に来るように配置します。次にダイナミクスの設定を行います。床は動かない衝突物ですので、ダイナミクスタブにあるスタティックリジッドボディを適用します。次にティーポットをすべて選択します。これらティーポットにダイナミクスの設定を行いますが、この設定自体はすべて同じ設定で構いません。その場合には、複合リジッドボディを適用します。この複合リジッドボディは1つのメッシュに対して行ったダイナミクス設定が、他にも同様のプロパティで適用されるようになります。
シミュレーションをキャッシュして様子を見てみましょう。ティーポットの山が崩れ落ちていくのがわかるかと思います。すべてが崩れ落ちるのではなく、少し山を残すようにしたいのであれば、跳ね返りや摩擦、粘性の値を調整してみてください。概ね満足がいく結果になったら、このダイナミクスの演算結果をトランスフォームに反映させます。ティーポットをすべて選択し、ダイナミクスメニュー > トランスフォームをベイクを選択し、さらにダイナミクス除去を実行し、ダイナミクス設定を外します。これでティーポットはダイナミクス演算を行うことなく、またそれぞれのティーポットのトランスフォームにダイナミクス演算時の値が入ることになります。
既にダイナミクスの設定は取り除かれており、単なる位置や回転の情報だけですので、あとは個別にメッシュレイヤーを選択し、配置を修正することも可能です。ダイナミクスの演算で大多数の配置をあらかた行った後で、細かな調整を行うフローにすれば、より少ない時間でゴールとする配置の状態まで持っていけるようになります。