2008年05月31日
クロスシミュレーションで遊ぼ~(Blender2.46編)
● まえがき
前回、「ワンちゃんの足作り」で、Armatureアニメ機能のスカルプへの応用を紹介しましたが、
ぜひ、ソフトボディのクロスシミュレーションも紹介してください、とメールを頂きました。
昔、書いたブログ記事なんですが、
「Blenderのクロスシミュレーションを試してみる」
http://pastel.slmame.com/e127146.html
確かに今読み返すと、不親切な記事だなぁ~、と感じたので、Blender2.46の勉強も兼ねて
手順を整理してみました。
(最近使ってないので、完全にやり方を忘れてた。 >< )
● Blender2.46のソフトボディ変形(クロスシミュレーション)で作った、布状スカルプテッドプリムいろいろ。


● ソフトボディのクロスシミュレーション
Blenderで実行中の画面をキャプチャして、GIFアニメにしてみました。 (重くてごめんなさい。。)
【頂点固定 (Vertex Weight) の見本】

【障害物回避 (Cloth Interaction) の見本】

● 「超」基本的な手順 (機能が多すぎて。。。><; )
(1) まずは、プレーン(Plane)を配置して、
Subdivideで、プレーンを分割、
全頂点を選択して、Set Smoothで、滑らかにしておく、

(2) Vertex Group (頂点グループ)の指定
動かしたくない頂点を選択します。
選択した頂点に、「TableTop」という頂点グループ名をつける。
ウエイト値に1(動かない)を指定。
Assignボタンでグループ確定。

(3) ウエイトペイントモードで確認
赤い部分が、ウエイト値1(動かない)ところです。
Armatureボーンのブログで解説したワンちゃんの足と同じですね。

(4) フレーム数の指定
アニメーションのフレーム数を指定します。
とりあえず、1サイクル、100フレームくらいで。

(5) ソフトボディの設定
Ver2.46のソフトボディパネルです。Ver2.45と比べていろいろ変わってます。
プレーンを選択して、ソフトボディの設定をします。
Grav:4.9 (重力)
Goal:0 (頂点ウェイトのデフォルト値、次のUse Goalを指定すると隠れてしまいます。)
Use Goal:TableTop (頂点グループTableTopを利用、GoalとUse Goalの値を足して、1になるようにします。)
G Damp:5 (Goalの制動、暴れる度合いみたいな感じ)
Use Edges (メッシュのエッジをスプリングとして利用、伸び縮みの度合い)
Stiff Quads (メッシュの対角線をスプリングとして利用、形崩れの度合い)
Pull:0.5,Push:0.5,Damp:0.5 (スプリングの弾性度みたいな感じ)
(無理やり日本語で説明するより、実際やってみたほうがよくわかったりする。。。^^;)

(6) ソフトボディの実行
[ALT]+[A] で、ソフトボディアニメーションを実行します。(上のGIFアニメを参考)
(最初の1サイクルは時間がかかります。)
[ESC] で、アニメーション停止。
[→]、[←] で、1フレームずつコマ送りできます。
[↑]、[↓] で、10フレームずつコマ送りできます。
[SHIFT]+[←] で、1フレームに巻き戻し。
アニメーション実行中に、カメラを動かして視点を変えることもできます。

(7) ソフトボディの実行中を良く見ると、、、
自分自身を検知していないので、交差してます。
まあ、スカルプを作る目的なら、中間の形状は気にしなくてもいいですが。

(8) 自己衝突(Self Collision)を有効にすることもできます。
Ball Sizeで、間隔の距離を設定できます。(だけど、1サイクル目の計算に時間がかかる様になります。)

(9) プレーンを障害物にぶつける場合です。
プレーンの全頂点は、ウエイト値0(全部青色)にします。
障害物を選択して、Fields/CollisionパネルのCollisionを有効にします。
Outerの値で、障害物との間隔を指定できます。

(10) 頂点固定と、障害物回避の組み合わせです。
コタツ布団とか、すぐにできますね。^^
コマ送りして、気に入った形状が見つかったら、Modifier:Softbodyパネルで、Apply(確定)
します。
これで普通のメッシュになりますので、あとはいつもどおり、RGBテクスチャの設定、UV展開、
Bakeで、スカルプテッドプリムの画像ファイルのできあがりです。

● あとがき
あまり変形しすぎると、スカルプにした時に頂点不足でカクカクが目立ってしまいますが、
上から自然にかぶせる様な布形状なら、大抵だいじょうぶです。
インワールドでは布形状のプリムはそんなに多くないみたいなので、インテリアの家具にかぶせたり
してやると、ちょっとしたアクセントになって、イイ感じです。
プレーンでコツがつかめたら、シリンダやスフィアなどの立体で、ソフトボディ変形を試してみてください。
でわでわ。^^/
blender v2.46 Blender Foundation