Blenderであそんでみた

3D-CGソフトBlenderの小技や豆知識など。

Blenderの流体シミュレーションで「コップに水を注ぐ/前編」

※記事製作時のバージョン:Blender3.2

 

簡単な見本を作りながら、流体シミュレーションの使い方を紹介していくシリーズ。
第9回は、「コップに水を注ぐ」やり方・前編です。

 

今回の記事は長いので、前・後編に分けています。

<前編>

<後編>

  • コップから水が漏れる現象の対処法
  • コップに水が食い込む現象の対処法
  • 流体に気泡を追加する方法

 

後編はこちらのリンクからどうぞ。

hainarashi.hatenablog.com

 

これまでの記事で触れた手順やパラメーターなどは、詳しい説明を省略します。

未読の方はこちらからどうぞ。

流体シミュレーション(液体) カテゴリーの記事一覧 - Blenderであそんでみた

 

今回作るのは、こちらのアニメーション(200フレーム)です。

vimeo.com

 

では、さっそく作ってみましょう。

 

1. コップを作る

まずはコップをモデリングします。

1. 「追加」>「メッシュ」>「円柱(Cylinder)」

  • 頂点:64

2. 編集モードに切り替え

3. 底の面を選択 >「S(スケール)」>「0.4」

4. 上の面を選択 >「S」>「0.6」

5. 上の面を選択したまま「E(押し出し)」>「S」>「0.95」

6. 「E」>「-1.9」

7. 「S」>「0.62」

これでコップの形状ができました。

オブジェクトモードに戻り、スムーズシェーディングを設定します。

8. 「オブジェクト」>「スムーズシェード」

9. 「オブジェクトデータプロパティ」>「ノーマル」>「自動スムーズ」>「ON」

最後に、角に丸みをつけます。

10. 「ベベル」モディファイアーを追加

  • 量:0.01
  • セグメント:2
  • 法線のハード化:ON

以上でコップのモデリングは完了です。

 

Point:「法線のハード化」について

ガラスのマテリアルを設定するオブジェクトに「ベベル」モディファイアーを使用すると、屈折の描画がおかしくなることがあります。
その場合は「法線のハード化」を「ON」にすると、屈折が正しく描画されるようになります。

なお「法線のハード化」を有効にするには、「自動スムーズ」も「ON」になっている必要があります。

 

2. 流体シミュレーションの設定

次は、流体シミュレーションを設定します。

1. 適当な場所にblendファイルを保存

フロー(液体の発生源)オブジェクトを用意します。

2. 「追加」>「メッシュ」>「UV球(UV Sphere)」

3. UV球のトランスフォームを変更

  • 位置 X:0.6m、Z:2m
  • スケール X、Y、Z:すべて 0.1

クイックエフェクトを元に、シミュレーションの基本設定をします。

4. UV球を選択した状態で
 「オブジェクト」>「クイックエフェクト」>「クイック液体」

5. ドメインの物理演算プロパティのパラメーターを次のように設定

  • 設定
    分割の解像度:96
  • キャッシュ
    シミュレーション終了フレーム:200
    タイプ:モジュール
    リジューム可:ON

6. 「アニメーション終了フレーム」>「200」

ドメインの範囲を、コップとフローに合わせます。

7. ドメインのトランスフォームを変更

  • 位置 X:0m、Z:0.6m
  • 寸法 X:1.8m、Y:1.8m、Z:3.3m

フローの設定を調整します。

8. フローの物理演算プロパティのパラメーターを次のように設定

  • 設定
    フローの挙動:流入
    「フローを使用」にキーフレームを打つ
     ⇒ 80フレーム:ON、81フレーム:OFF
  • フローソース
    初期速度:ON
    初期 X:-1.5m/s、Z:-0.2m/s

これでフローからコップに注がれるように液体が発生するようになります。
(液体の発生は81フレームで止まります。)
しかしまだコップの設定をしていないので、液体はコップを素通りします。

コップをコリジョン(流体の障害物)に設定します。

9. コップを選択 > 物理演算プロパティの「流体」をクリック

これでコップが液体を受け止めるようになります。

液体の動きができたので、流体のメッシュを生成します。

10. ドメイン >「物理演算プロパティ」>「液体」>「メッシュ」>「ON」>「メッシュをベイク」

メッシュ生成後。

 

以上でシミュレーションの基本設定は完了です。
しかし、このままでは問題点が3つあります。

問題点 1

コップから水が漏れます。
コリジョンに充分な厚さが無いと、このように液体がコリジョンを突き抜けてしまうことがあります。

vimeo.com

 

問題点 2

水がコップに食い込むような形になります。

これは不具合などではなく、流体シミュレーションの普通の動作です。
コリジョンが不透明な場合は食い込んだ部分が見えなくなるので問題になりませんが、今回はガラスのコップなので不自然な見た目になります。

vimeo.com

 

問題点 3

これは問題点というよりディテールの作り込みの話ですが、液体に気泡を追加することで、より水らしく見えるようになります。
気泡がないままだと、シロップのような粘度の高い液体に見えます。

vimeo.com

 

というわけで前編はここまで。
後編ではこの3点の対処法を解説します。

以上、「コップに水を注ぐ/前編」でした。

 

twitter

灰ならし (@hainarashi) | Twitter