Blender

【Blender】Eeveeでガラスのマテリアル表現 Part2

Eeveeでガラスのマテリアル表現、第2回です!

前回までの記事では
グラスのメッシュを作り、ガラスのマテリアルを設定して
透けているグラスを表現することができました!

今回の記事では、グラスの中に液体を入れて
綺麗に見えるように調整してみたいと思います。

結論

液体のメッシュは、グラスのメッシュを部分的に複製して作る。

液体のマテリアル

  • Roughness(粗さ): 0.0
  • IOR: 1.33
  • Transmission(伝播): 1.0

目次

  1. 結論
  2. 環境
  3. グラスに液体を入れる
    1. 液体のメッシュを作る
    2. マテリアルの設定
  4. まとめ

環境

OS: Windows10
メモリ: 32GB

Dependents
Blender: v2.92.0

グラスに液体を入れる

液体となるメッシュを作っていきます

液体はグラスの中に入っているので、グラスの幅より大きくなることはありませんね。
このように、何か親となるメッシュがあって、それと似たような形のメッシュを作成したい時は
親のメッシュから複製してあげるのが便利です。

液体のメッシュを作る

まずは、グラスの内側(凹んでいる部分)の頂点を選択します。
グラスの半分くらいを液体で満たすため、今回は真ん中までの頂点を選択しました。

頂点を選択したら、Shift+Dでメッシュを複製します。

複製したメッシュをCtrl+Pで、別オブジェクトとして分割します。

分割した液体のメッシュに、新しくマテリアルを割り当てて見た目を確認してみましょう!
液体のメッシュを選択し、マテリアルプロパティを確認してみます。

液体のメッシュは、グラスのメッシュの一部を複製したものなので
ガラスのマテリアルが設定されています。
右側の -ボタンから、ガラスマテリアルを解除して、+ボタンから新しいマテリアルを追加しましょう!

マテリアルのBaseColorを赤に設定して、Renderedビューポートで見た目を確認してみます。

液体の上の方が、グラスから少しはみ出してしまってますね。
また、液体の上側に穴が開いてしまっています。
液体のメッシュを調整していきます。

液体の上側の頂点をすべて選択し、Fキーで面を張ります

このままだと、サブディビジョンサーフェイスの影響で上部が丸くなってしまうので、
ループカットで面を平らにします。

さらに、グラスなどの容器に液体を入れた場合表面張力で液体のフチだけが盛り上がります
これを再現するために、上の面からIキーで内側に面を追加します。

ループカットで分割と、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でガラスを作るときのポイントをいくつか検証を交えつつ紹介したいと思います。

ピックアップ記事

  1. 【WPテーマ自作】ローカル環境でWP開発ができる「Local」の導入
  2. 【Rails】オブジェクトの中身をログに出力する
  3. 【Blender】Bumpを使用した質感表現の方法
  4. 【Rails】modelを作成する
  5. 【Blender】複数バージョンを簡単に管理できる、BlenderLaunche…

関連記事

 
  1. Blender

    【Blender】アニメーションでポーズを左右反転してコピペしたい時

    Blenderで、例えば歩いているアニメーションを作成したい場合、1つ…

  2. 慣れれば3分!Bumpノードを使用した質感表現の方法

    Blender

    【Blender】Bumpを使用した質感表現の方法

    マテリアルを設定したけど、リアルな見た目にならない。そんなお悩みの方へ…

  3. Blender

    【Blender】起動時に強制終了してしまう問題

    Blenderを起動すると、コンソールが立ち上がった後にBlender…

  4. Blender

    【Blender】zip版のBlenderをBlender Launcherに移行する

    Blenderのバージョン管理ができるツール、Blender Laun…

  5. Blender

    【Blender】MMDファイルをBlenderにImportするアドオン

    BlenderでMMDファイルをインポートするためのアドオン、mmd_…

  6. Blender

    【Blender】レンダリング結果を新規ウィンドウで開かないようにする

    カメラの微調整とか、FreeStyleで線画抽出作業をしている時に頻繁…

カレンダー

2021年12月
 12345
6789101112
13141516171819
20212223242526
2728293031  

最近の記事

  1. Blenderの複数バージョンを簡単に管理できるBlenderLauncherの使い方

    Blender

    【Blender】複数バージョンを簡単に管理できる、BlenderLaunche…
  2. Ruby on Rails

    【Rails】findメソッドで連想配列から指定した値を検索する
  3. 【Rails】オブジェクトの中身をログに出力する

    Ruby on Rails

    【Rails】オブジェクトの中身をログに出力する
  4. App

    【ツール開発】ポケモンの種族値と実数値を調べるツール – 1
  5. Blender

    【Blender】アニメーションでポーズを左右反転してコピペしたい時
PAGE TOP