HDRI(High Dynamic Range Image)は明るさの情報を持っています。
HDRIなど、画像を利用してライティングするのをIBL(Image Based Lighting)と言います。
MMD風に簡単に言えば、光源情報が含まれたスカイボックスという感じです。
本当はHDRIに追加でライトオブジェクトなどを設定して複数から光を当てる方が良いのですが、今回はHDRIのみで進めて行きます。(Blenderに初期配置されているライトオブジェクトは削除しています)
※ライティングの基本として三点照明というものがあります。3DCGのみならず写真撮影などでも使われる手法です。興味のある方は検索してみて下さい。
"HDRI CC0"などで検索すればフリーなHDRIファイルが配布されています。
※ちなみに、blender-[ver]-windows64\[ver]\datafiles\studiolights\worldフォルダ内にデフォルトの.exrファイルがあります。(forest.exrがマテリアルプレビューのデフォルトです)
今回はマテリアルプレビューでデフォルトの
forest.exrを使ってみますが、その前にBlenderへバンドルされている
Node Wranglerアドオンを有効化します。
HDRIを用いたIBLの設定以外にも、ノードを利用する際に便利です。
Node Wranglerアドオンの有効化
トップバーの
編集→
プリファレンス...から
Blenderプリファレンスウインドウのアドオン→検索欄に”node”と入力し、
Node: Node Wranglerのチェックをオンにします。
これでNode Wrangler アドオンが有効化されました。
アドオンを有効化したら、トップバーから
Shadingタブを開き、画面中央の
オブジェクトを
ワールドにします。
背景ノードを選択した状態で[Ctrl]+[T]キーを押して
環境テクスチャノードの
開くから”
blender-[ver]-windows64\[ver]\datafiles\studiolights\world\forest.exr”を開きます。
上図のように背景に
forest.exrの画像が表示され、明るくなったはずです。(マウスカーソルを3Dビュー上に持っていって[Z]キーから
レンダーを選択していないと変わりません)
背景ノードの
強さから背景画像や明るさの全体的な強さを調整できます。
マッピングノードの
位置、
回転、
拡大縮小からそれぞれを操作できます。
HDRIの背景とライティングを別々に調整したい場合(例えば背景画像の明るさはそのままでライトの強度だけ強めたい/弱めたい)
画面中央下のシェーダーエディターから[Shift]+[A]→
シェーダー→
背景で背景ノードをもう一つ追加します。
[Shift]+[A]→
シェーダー→
シェーダーミックスでシェーダーミックスノードを追加し、背景ノードの背景出力とシェーダー入力をそれぞれ繋ぎます。
[Shift]+[A]→
入力→
ライトパスでライトパスノードを追加して
カメラレイか?出力をシェーダーミックスノードの係数に接続します。
シェーダーミックスノードのシェーダー出力を
ワールド出力ノードのサーフェスに繋ぎます。
上図の例では、上の背景ノードの
強さでライトの強度を、下の背景ノードの
強さで背景の明るさを調整できます。
光源情報は欲しいけど、背景に画像が写って欲しくない...という場合
上図のようにノードを組みます。
RGBミックスノードの
色2のカラーを調整すれば背景の色が変化します。
映像編集ソフトで合成するなど、背景を透過したい場合には、レンダープロパティの
フィルム→
透過にチェックを入れます。