スクリーンショット_2019-05-05_18

[2.8]グラスで乾杯

グラスで乾杯とかいうと、往年の「ルネッサーンス」が思い出されますが、グラスの中の液体って水面を水平方向に維持しますよね。それをBlenderの中でも作ってみましょうということで。

今回は、ワイングラスではなくブランデーグラスで。縦長にすると画面で小さく写ってしまうので背の低いグラスとして選択しました。

グラスを作る

頑張ってグラスを作ります。厚みのあるグラスっぽい形であれば良いです。例として表示しているのは8角柱(cylinder,vertices=8)から作ったものをSubsurfモディファイアーで滑らかな形にしています。グラスの底がオブジェクト原点となるようにします。オブジェクト名は glass とします。

画像1

画像2

次に容器の内側の、液体が入る空間を作ります。グラスオブジェクトの内側のメッシュをコピーして別オブジェクトにして、上面に蓋をしてしまえばいいですね、簡単ですね。これを space オブジェクトとします。

画像3

そして、このオブジェクト space の原点を水面の高さにします。[N]キーを押してプロパティシェルフを表示、Viewタブの3D CursorでX=0,Y=0,Z=1.1とします。

space オブジェクトを選択、3Dビューのメニューから Object > Set Origin> Origin to 3D Cursor をクリックします。

画像4

画像5

space 、 glass オブジェクトの順に複数選択して、[Ctrl]+[P]で親子関係をつけます。

画像6

液体を作ります。とはいっても追加するのはCubeオブジェクト。[Shift]+[A]> Mesh >Cube で追加したら[Tab]キーでエディットモードに入って、全体を選択した状態で[G][Z][-][1]とします。Cubeオブジェクトの原点を上面に一致させるためです。

画像7

画像8

編集が終わったらオブジェクト名を fluid にします。

Booleanモディファイアの追加

fluidオブジェクトに Booleanモディファイアーを追加します。spaceオブジェクトを対象オブジェクトとし、Oeprationに Intersect を指定します。

画像9

space オブジェクトを選択、[H]で非表示にします。

画像10

コンストレイントの追加

fluid オブジェクトを選択して…、と思ったけどもこの角度から選択できない…。glassオブジェクトが邪魔をしているために選択できないようですね。

大丈夫、fluidオブジェクトにマウスポインタを重ねて [Alt]+左クリックしてみてください。選択できるオブジェクトのリストが出てくるのでここから選んでください。

画像11

プロパティエディタ> Object Constraints タブ で Copy Location を追加します。Targetはspaceオブジェクト。

画像12

これで仕込みは終わりました。glassオブジェクトを選択して動かしてみましょう。

画像13

画像14

画像15

そう、傾けすぎると「コボレナーイ」っていうのが出来ます。こういう時に[R]の回転と[R][R]のトラックボール回転を使うと色々試せて良いですね。

位置と回転をリセット([Alt]+[G]、[Alt]+[R])してファイルを保存します。


手順は以上です。

ちょっと応用

これと組み合わせると

こうなります。glassオブジェクトは Automatic Weightではなくボーンに直接関連付けること。


See Also:




お読みいただきありがとうございます。サポートいただいた分はおやつのグレードアップに使おうかと思います。スキ、SNSにシェアもよろしくお願いします!