Blender ウォッチング

「Blender 3.2」の新機能「ライトグループ」は再レンダリング不要で複数のライトを調整可能

 本連載では、無料の高機能3Dモデリングツール「Blender」の使い方や関連情報を幅広くお伝えします。

 6月8日(GMT)、「Blender 3.2」が公式リリースされました。今回はBlenderのレンダラーの1つである、「Cycles」用に追加された「ライトグループ」機能とその利用方法についてご紹介します。

 本稿でテストに使ったサンプルファイルをダウンロードできるようにしたので、ご自分で試したい場合は使ってみてください。

ライトグループ機能の使用例

「サンプルblendファイル」の入ったZipファイルをダウンロード(※)


※ダウンロード数が少ないため、Webブラウザーによってダウンロードがブロックされる場合があります。その場合はリンクの右クリックメニューからファイルの保存を行い、警告が表示されても[継続]などの項目を選択して保存してください。

 「Blender 3.2.0」以降で使用してください。

ライトグループ

 ライトグループは「ライト」や「発光するオブジェクト」を指定のグループに入れておくことで、レンダリング後にそれぞれの光源による「ディフューズ」(散乱成分)をパスとして取り出すことができる機能です。

使用方法

 例えば以下のような、赤と青の2つのライトがあるシーンで、この機能を使用するとします。(サンプルファイルの「LightGroupSample.blend」)

赤と青の2つのライトのあるシーン

Cyclesレンダーへの切り替え

 [レンダー]プロパティ(①)にて[レンダーエンジン]で「Cycles」(②)、[デバイス]で「GPU演算」(③)を選択します。これを最初にしておかないと、以降に操作する[ライトグループ]パネルは表示されないので注意してください。

[レンダー]プロパティ(①)にて[レンダーエンジン]で「Cycles」(②)、[デバイス]で「GPU演算」(③)を選択

ビューレイヤーへの設定

 [ビューレイヤー]プロパティ(①)から、[パス]-[ライトグループ]と開き(②)、[+]キーでリストに「ライトグループ」を必要な数だけ追加します(③)。このグループ名はダブルクリックでリネームできますが、グループ名はなるべくこの段階で決めておいた方がいいでしょう。(後述)

[ビューレイヤー]プロパティ(①)から[パス]-[ライトグループ]と開き(②)、[+]キーで「ライトグループ」を追加(③)

各ライトへの設定

 ライトを選択(①)し、今度は[オブジェクト]プロパティ(②)から[シェーディング]-[ライトグループ]と開き[ライトグループ]欄(③)をクリックすると表示されるプルダウンリストで先ほど追加したグループを指定します。

 他のライトも同様に対応するライトグループを指定します。

ライトを選択(①)し、[オブジェクト]プロパティ(②)から[シェーディング]-[ライトグループ]欄(③)をクリックして追加したグループを選択

コンポジターの使用

  1. [Compositing]タブ(①)をクリックし、画面上側の[コンポジター]のヘッダーの[ノードを使用](②)をONにします。
  2. [レンダーレイヤー]ノードの右下の「フィルム」型アイコン(③)をクリックし、画像をレンダリングします。
[Compositing]タブ(①)をクリックし、画面上部のコンポジターのヘッダーの[ノードを使用](②)し、左の[レンダーレイヤー]ノードの[フィルム]アイコン(③)をクリック

 レンダリング後、上図のように[レンダーレイヤー]ノードに画像が表示されていない場合は、ノードのタイトルバー右端のアイコンをクリックし、プレビュー部分を開閉してみてください。

 [追加](①)-[出力]-[ビューアー](②)メニューで「ビューアーノード」を2つ追加し、[レンダーレイヤー]ノードの「Combine_(ライトグループ名)」というソケット(③)にそれぞれつなげてみると(④)、[レンダーレイヤー]ノードに表示されている物と違う、それぞれライトに照らされた画像が出力され、背景に表示されます。

[追加]メニュー(①)-[出力]-[ビューアー](②)メニューで「ビューアーノード」を追加し、[レンダーレイヤー]ノードの「Combine_(ライトグループ名)」というソケット(③)にそれぞれつなげてみる(④)

 これをライトの数(もしくは調整する単位で分けた数)だけ作り、画像を合成することで、各ライト間の光量をレンダリングせずに調整することができるというわけです。

利用例

 例えば、以下のような「三点照明」(3つの光源を使用し、モチーフを立体的に見せるテクニック)にて、3つのライトを配置し、レンダーレイヤーに3つのライトグループを作り、各ライトに対応するグループを設定します。(サンプルファイルの「3PointLight.blend」)

三点照明のシーン

 その後[コンポジター]内で下図のようなノードツリーを作成すれば、一度のレンダリングでそれぞれのライトで光量や色を個別に調整できるようになります。

それぞれのライトを個別に調整できるようにした「コンポジションノードツリー」例

注意点

  • 執筆時点(v3.2)では「光沢」成分に対応していません。
  • 他の光源(ワールドの「環境」など)も当然含まれません.

 つまり、ライトグループソケットから出力した画像を全部合成しても、通常の[画像]ソケットから出力された画像とは同じになりません。

 [ビューレイヤー]プロパティ-[パス]-[ライト]から、[光沢]や[環境]などのソケットを追加し、合成する必要があります。ただし、本来の照明とは食い違いが発生する場合もありますので、注意してください。

[ビューレイヤー]プロパティの[パス]-[ライト]で必要なパスを出力するよう設定

 既存のライトグループの名前を変更した場合、そのグループに属していたオブジェクトのグループ名は自動的に追従してくれません。再度名前を指定しなおす必要があります。コンポジター内のソケットも外れてしまいますので、こちらも再リンクしないといけません。

終わりに

 今回はBlender 3.2で追加された、ライトグループをご紹介しました。光沢成分に対応していないのは残念ですが、レンダリングに時間のかかるシーンでは活躍してくれそうです。
 ではまた。