Eeveeでガラスのマテリアル表現、第2回です!
前回までの記事では
グラスのメッシュを作り、ガラスのマテリアルを設定して
透けているグラスを表現することができました!
今回の記事では、グラスの中に液体を入れて
綺麗に見えるように調整してみたいと思います。
結論
液体のメッシュは、グラスのメッシュを部分的に複製して作る。
液体のマテリアル
- Roughness(粗さ): 0.0
- IOR: 1.33
- Transmission(伝播): 1.0
目次
環境
OS: Windows10
メモリ: 32GB
Dependents
Blender: v2.92.0
グラスに液体を入れる
液体となるメッシュを作っていきます。
液体はグラスの中に入っているので、グラスの幅より大きくなることはありませんね。
このように、何か親となるメッシュがあって、それと似たような形のメッシュを作成したい時は
親のメッシュから複製してあげるのが便利です。
液体のメッシュを作る
まずは、グラスの内側(凹んでいる部分)の頂点を選択します。
グラスの半分くらいを液体で満たすため、今回は真ん中までの頂点を選択しました。
頂点を選択したら、Shift+Dでメッシュを複製します。
複製したメッシュをCtrl+Pで、別オブジェクトとして分割します。
分割した液体のメッシュに、新しくマテリアルを割り当てて見た目を確認してみましょう!
液体のメッシュを選択し、マテリアルプロパティを確認してみます。
液体のメッシュは、グラスのメッシュの一部を複製したものなので
ガラスのマテリアルが設定されています。
右側の -ボタンから、ガラスマテリアルを解除して、+ボタンから新しいマテリアルを追加しましょう!
マテリアルのBaseColorを赤に設定して、Renderedビューポートで見た目を確認してみます。
液体の上の方が、グラスから少しはみ出してしまってますね。
また、液体の上側に穴が開いてしまっています。
液体のメッシュを調整していきます。
液体の上側の頂点をすべて選択し、Fキーで面を張ります。
このままだと、サブディビジョンサーフェイスの影響で上部が丸くなってしまうので、
ループカットで面を平らにします。
さらに、グラスなどの容器に液体を入れた場合、表面張力で液体のフチだけが盛り上がります。
これを再現するために、上の面からIキーで内側に面を追加します。
よりリアルさを追求する場合は、もう少し細かく分割してもOKかと思います。
今回はシンプルに作るので、面は1つだけにしておきます。
1キーで視点を正面に移動し、液体のフチを、G+Zで上に移動させます。
また、このタイミングで液体のはみ出ている部分も、グラスの枠に沿うように修正してしまいましょう。
はみ出ている部分の修正については、ループカットで中間に分割を入れ少し拡大
さらに、底面を少し縮小させることで今回は修正しました。
適宜、見た目を確認しながら自由に調整してみましょう!
すべての調整が完了するとこんな感じになります。
それっぽくなってきましたね!
さて、今のままだとトマトジュースが入っているような気がするので
ちゃんと液体っぽいマテリアルの設定をしていきましょう。
マテリアルの設定
液体のマテリアルを設定していきます。
液体=水と仮定して進めていきます。シェーダーはプリンシプルBSDFを使います。
今回はこのように設定しました。
Roughness: 0.0
IOR: 1.33
Transmission: 1.0
水も、ガラスと同じように、周囲の光を反射している物質なので
Transmissionを1.0に設定します。
Roughnessはお好みで設定してください。水であれば0.0でよいと思います。
ジュースやワインのように、他の物が含まれていて濁っている場合には
0.2~0.5くらいを設定しておくとそれっぽくなります。
Renderedビューポートで、見た目を確認しながら調整しましょう。
最後にIORです。ガラスのマテリアル設定の際にも使いましたが、
IORは光の屈折率です。
ということで、今回もこちらのサイトを参考にさせていただきました。
材料の屈折率一覧表 《光学》Material IOR (Index of Refraction Values) List
Water (gas) 1.000261 水(ガス)
Water 100’C 1.31819 水(100度)
Water 20’C 1.33335 水(20度)
Water 35’C (Room temp) 1.33157 水(35度)
https://a4jp.com/material-ior-list/
水の屈折率を見てみると、気体・液体の時だけでなく、
温度によっても屈折率が変わる事が分かります。
とはいえ、液体であれば概ね1.31~1.33の範囲で大丈夫そうなので
今回は1.33に設定しました。
それでは、Renderedビューポートで設定した液体のマテリアルを確認してみましょう。
液体だけだと、ゼリーに見えますね・・・”(-“”-)”
グラスと合わせて見てみましょう。
綺麗に映っていますね!
プリンシプルBSDFだけで、お手軽に作るのであれば、
ここまでで紹介した内容でも十分それっぽく見えると思います。
液体のBaseColorやRoughnessを変える事で、
表現の幅も広がりますので試してみて下さい。
まとめ
今回は、グラスの中の液体の作り方を紹介しました。
これで、前回の記事と合わせて、
Eeveeでの簡単なガラスの表現ができたかと思います。
また、ここまでの内容では
簡単にそれっぽく見えるようにするための方法を紹介してきました。
簡単に、という所にこだわっているのは
1回目の記事の冒頭でも書いた通り、ガラスのマテリアルを作るのであれば
Cyclesを使った方が、圧倒的に早く、リアルだからです。
次回からは、Eeveeでガラスを作るときのポイントをいくつか検証を交えつつ紹介したいと思います。