※記事製作時のバージョン:Blender2.92
簡単な見本を作りながら、流体シミュレーションの使い方を紹介していくシリーズ。
第7回は、「初速にノーマルを使う」やり方です。
これまでの記事で触れた手順やパラメーターなどは、詳しい説明を省略します。
未読の方はこちらからどうぞ。
流体シミュレーション(液体) カテゴリーの記事一覧 - Blenderであそんでみた
実践「初速にノーマルを使う」
今回作るのは、こちらのアニメーション(180フレーム)です。
では、さっそく作ってみましょう。
まずはシミュレーションの前準備。
今回の前準備は、いつもよりやることが多いです。
1. 適当な場所にblendファイルを保存。
2. 追加 > メッシュ > 円柱
- 頂点 > 8
今までの見本ではフローにICO球を使ってきましたが、今回は円柱を使用します。
3. 編集モード > 上下の面を削除
4. 編集モード > 辺選択 > Ctrl + Alt を押しながら縦方向の辺をどれか一つクリック(リング選択になり、縦方向の辺がすべて選択される) > V キー(分割) > Esc キー
見た目は変わりませんが、これですべての面がお互いに切り離され、独立した状態になります。
5. モディファイアーを追加 > ディスプレイス
6. モディファイアーを追加 > シンプル変形
- テーパー
- 座標軸 > Z
7. ディスプレイスの強さ > 20
8. シンプル変形の係数 > 0
9. 円柱のスケールを、 X : 0.1 , Y : 0.1 , Z : 0.05 に変更
10. 円柱を選択した状態で
オブジェクト > クイックエフェクト > クイック液体
11. ドメイン > キャッシュ
- シミュレーション終了フレーム > 180
- タイプ > モジュール
- リジューム可能 > ON
12. アニメーション終了フレーム > 180
13. フロー > 設定 > フローの挙動 > 流入口
以上で前準備は終了。
ここからが今回の本題です。
14. ドメインの位置を、 X , Y , Z すべて 0.0 に変更
15. ドメインのスケールを、 X : 4.0 , Y : 4.0 , Z : 2.5 に変更
16. ドメイン > 設定 > 分割の解像度 > 96
17. フロー > フローソース > 平面 > ON
これでフローの各面から液体が発生するようになります。
18. フロー > 初期速度 > ON
19. フロー > 初期速度 > ノーマル > 15
これでフローの各面が向いている方向に、液体の初速がつきます。
20. フローのディスプレイスの強さに、下記のキーフレームを打つ
- 30フレーム > 20
- 48 , 64フレーム > -50
- 84フレーム > 20
これで30フレームから84フレームにかけて、フローの各面が一度内側方向に移動し、また元に戻る動きをするようになります。
21. フローのシンプル変形の係数に、下記のキーフレームを打つ
- 96フレーム > 0.0
- 120フレーム > -0.2
これで96フレームから120フレームにかけて、フローの各面が斜め上を向くようになります。
それに伴い、液体の初速方向も斜め上になります。
22. フローのZ軸回転に、下記のキーフレームを打つ
- 96フレーム > 0.0
- 120フレーム > 180
これで96フレームから120フレームにかけて、フローが反時計回りに半回転するようになります。
23. ドメイン > 液体 > メッシュ > ON
※ドメインのキャッシュのタイプがモジュールなので、メッシュもベイクが必要です。
以上でシミュレーションの設定は完了。
マテリアルや背景などの設定をしたら完成です。
今回使用した機能の解説
初期速度 > ノーマル
面の法線方向に、流体の初速をつけます。
オブジェクトが複数の面を持つ場合、異なる向きの面それぞれに対して初速がつきます。
X , Y , Z による初期速度とは、次のような違いがあります。
- 初期速度をノーマルで設定した場合
⇒ 面の向きを変えると、初速の方向も変わる。 - 初期速度を X , Y , Z で設定した場合
⇒ 初速の方向はドメインのローカル座標系に基づくため、フローオブジェクトの向きを変えても、初速の方向は変わらない。
ノーマルと X , Y , Z を同時に使うこともできますが、その場合、両方の合計値が最終的な初速になります。
制御がややこしくなるので、基本的にどちらか片方で設定するのが良いと思います。
ノーマルによる初速は、ドメインの「分割の解像度」の影響を受けます。
初速の値が同じでも、分割の解像度が大きいほど、実際に発生する流体の勢いは弱くなります。
通常、流体シミュレーションは試行錯誤段階でのベイク時間を短縮するため、
- 分割の解像度が低い状態で流体の動きを調整して、
- ある程度決まったら分割の解像度を高くして仕上げる。
という手順で作成します。
しかし、初速にノーマルを使う場合は、初速の勢いが分割の解像度の影響を受けてしまうので、この手順は使えません。
そのため、最初から分割の解像度を仕上げの値にしておく必要があり、試行錯誤段階でのベイクに時間がかかることになります。
フローソース > 平面
フローオブジェクトを「平面かつ閉じていないメッシュとして処理する」スイッチです。
フローが平面の場合、これをONにすることで、最も正確なシミュレーション結果が得られるようになる・・・という感じの事がマニュアルに書いてあります。
詳しい意味は私も分かりませんが、とりあえず「面をフローとして使う場合はONにする」と覚えておけば良いと思います。
モディファイアーの順番について
流体シミュレーションは、最終的にモディファイアーのひとつとして処理されます。
なので、処理の順番はモディファイアータブでの並び順に従います。
並び順を間違えると、意図した結果が得られないので注意してください。
以上、「初速にノーマルを使う」でした。
※添削・構成アドバイス:相方
参考サイト