Blenderでの簡単な流体シミュレーション覚書き

Blender Fluid water

写真のような流体シミュレーション(Fluid Simulations)をBlenderの物理エンジンを使って作成していきます。Blenderのバージョンは2.71、まずはウィンドウ上部のレンダーをCycles Renderに切り替えます。このレンダーは2.61から実装されてます。モデリングしながら簡易に仕上がりが確認できるのでとても便利です。

Blender_Fluid_Cycles Render

このたび作成するのは既にたまった水に上からドボドボと水を足していくアニメーションです。もちろん静止画像としても書き出せますが、作成手順はどちらも同じです。 ちなみにこのシミュレーションに必要なオブジェクトと物理設定は以下の3つ。すべてPhysics内、Fluid内の設定です。

  • Cube/ドメイン(Domain)・・・シミュレーションの範囲
  • Sphere/流入or発生源(Inflow)・・・上からドボドボ足される水
  • Cube/流体(Fluid)・・・下にたまった水

Blender_Fluid_objects

では3Dビューからオブジェクトを追加していきます。 はじめにキューブ(Cube)を1つ作成、選択した状態(オブジェクトモード)で「Physics」をクリック。

Blender_Fluid_physics

以下のように設定します。

Blender Fluid water

  • Domain/シミュレーション範囲
  • Resolution/画質(解像度的なかんじとおもう)
  • Surface/それぞれ滑らかさ
  • Generate/水しぶきのような効果

※実験した感覚ですので詳しくは本家wikiサイトでご確認ください。

シミュレーションはこのドメイン内で作用するので、他のオブジェクトはすべてこのDomain内に配置していきます。続いてドボドボ注ぐための水(Inflow)となる球体(Sphere)を1つ追加。選択した状態で「Physics」をクリック。Fluid Typeを「Inflow」に設定。Inflow  VelocityのX座標にちょっぴり値を与えると、X軸方向に水勢が発生しますが、垂直に落下するのであれば値は0でもかまいません。

Blender Fluid water

最後に水槽にたまった水としてキューブを1つ。同様にFluid TypeをFluidにして設定完了です。 お気づきでしょうが、Fluid Type以外の設定はすべてDomainで行います。ResolutionやSurfaceなどの値を上げればきれいになりますが、続いて行うBake(計算)の時間が非常にかかりますのでご自身の環境にあわせて調整を行ってください。

Blender_Fluid

Bakeで計算を開始します。ボタン内にあるメモリの数値が計算に必要な容量です。クリックしてしばらく待ちます。計算が済んだフレームから再生できますので確認してください。

後は通常のレンダリングと同じ作業になります。流体のマテリアルはCycles RenderのGlass BSDFで簡単に表現できると思います。

アニメーションで書き出すと以下の動画のようになります。

コメント

  1. This is great blog, I will certainly be back.

コメントをどうぞ

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です