Blender ウォッチング

最新「Blender」で搭載された際立たせたい部分に脚光を浴びせる「ライトリンキング」とは?

アニメなどのノンフォトリアル用途にも有用なライティング機能

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

 11月14日(GMT)、「Blender 4.0」が公式リリースされました。実は新機能はそんなに多くはないものの、今回は大型アップデートであり、色々な変更があります。

 今回は「Blender」のレンダラーの1つである「Cycles」用に追加された、「ライトリンキング」機能とその利用方法についてご紹介します。

ライトリンキングの使用例

ライトリンキングとは

 ライトリンキングは、特定のオブジェクトコレクションを指定し、照明の対象を限定する機能です。

 例えば、キャラクターのオブジェクトに「リムライト」や「フィルライト」と呼ばれるライトを、背景オブジェクトとは別に当てたい場合に便利です。

 従来のシェーダーノードでも同様のことはできますが、もし別々マテリアルを使用している多数のキャラクターに同じことを行おうとすると、それぞれのノードツリーを編集しなければならず、非効率です。そんな時にこの機能を使用すればまとめて光らせることができます。

 他にも、キャラクターの「顔」だけ明るくしたい、「眼」のみにハイライトを与えたい、といった時に便利です。特にアニメなどのノンフォトリアル用途では重宝されるのではないでしょうか。

使用方法

 例として、最初の図のようにどこかで見た「キャラクター」にのみ、「ライト」を当てる状況を想定します。

 キャラクターの周囲には背景の壁があり、メインのスポットライト(下図右)とは別に、平行光源の「赤いサンライト」(下図左のオレンジ表示)をフィルライトとして使用したいとします。

左側のサンライトを赤いフィルライトとして真ん中のキャラクターに使用したい

 まず最初にプロパティエディターの[レンダープロパティ]タブの一番上の[レンダーエンジン]を「Cycles」にします。残念ながら現時点では「EEVEE」レンダーには対応していません。

プロパティエディターの[レンダープロパティ]タブの一番上の[レンダーエンジン]を[Cycles]に設定

ライトリンキングの設定

 では準備ができたので、ライトリンキングを設定します。

  1. ライトオブジェクト(ここでは「サンライト」)を選択します。
  2. プロパティエディターの[オブジェクトプロパティ]タブをクリックします。
  3. [シェーディング]-[ライトリンキング]の順に開きます。
ライトオブジェクトを選択(①)後、プロパティエディターの[オブジェクトプロパティ]タブ(②)をクリック、[シェーディング](③)-[ライトリンキング](④)と開く
  1. [+ 新規]ボタンをクリックし、ライトリンキングデータを作成します。
  2. 上の[アウトライナー]ツリーから「キャラクター」のオブジェクトをここにドラッグ&ドロップします。
[+ 新規]ボタン(①)をクリック後、[アウトライナー]から「キャラクター」のオブジェクトをドラッグ&ドロップ(②)

 3Dビューポート右上のシャボン玉のようなアイコンをクリックし、プレビューしてみます。

3Dビューポート右上のシャボン玉状のアイコンをクリックし、プレビュー……

 ……赤くなっていませんね(一番上の画像のようになるのが正解)。

 これは「背景オブジェクト」に「サンライト」の光が遮られてしまうからです。

 なら移動すればいい? いえ、このサンライトは平行光源であるため、位置は関係ないのです(ここではわかりやすいよう壁の向こう側に配置しています)

 そこで「シャドウリンキング」も設定します。

シャドウリンキングの設定

 シャドウリンキングは、そのライトの対象オブジェクトに対する「影」の処理をコントロールします。

 上述のように光が遮られているということは、つまり「影ができる」ということですので、これを阻止すればいいのです。

  1. ライトリンキングと同様に[シャドウリンキング]を開き、[+ 新規]ボタンをクリックします。
  2. 今度は「背景オブジェクト」(ここでは「立方体」)をここにドラッグ&ドロップします。
  3. チェックマークをクリックしてOFFにします。
同様に[シャドウリンキング]を開き、[+ 新規]ボタン(①)をクリック、「背景オブジェクト」をドラッグ&ドロップ(②)後、右のチェック(③)をクリックで外す

 最後のチェックマークをOFFにするのがミソです。これは「影をつくらない=無視する」という意味になります。

ライトリンキングに使用するライトが他のオブジェクトに遮られることがない場合、ここは指定しなくてもかまいません。

 これでうまくいきました。

壁の向こう側から赤い光で照らされている。不思議!

 なお、 ライトリンキングで対象に当てた光の反射による照明(間接照明)は生じます 。少なくとも現時点ではこちらの物理法則は捻じ曲げられないようで、これを禁止するには別々に出力して後で合成するくらいしかありません。

わかりやすくしてみた例。左端のライトとモンキーのみライトリンキングしているが、立方体にも反射してしまっている

コレクション中の1つだけ解除したい場合

 冒頭にも少し触れましたが、この機能では「コレクション」も指定できます。例えば別オブジェクトの服や小道具とキャラクターを同じコレクションに入れておいて、この機能で指定すれば、いちいちオブジェクトごとに指定しなくてもいいわけです。

 コレクション内の一部のオブジェクトを解除したい場合は、下図のように「コレクション内の解除したいオブジェクトも一緒に指定し、OFFに設定」します。

「キャラクター」コレクション内の「T-Shirt」オブジェクトのみライトリンキング対象から外した例

 逆にコレクション内の一部にのみ照らしたい場合は、同様にコレクションと光らせたいオブジェクトを指定し、コレクションをOFF、オブジェクトをONにすればいいのですが、それなら単純に光らせるオブジェクトのみ指定してONにする方が早いのであまり意味はないのかもしれません。

終わりに

 今回は「Blender 4.0」で追加されたライトリンキング機能をご紹介しました。Cyclesレンダーのみの対応なのは残念ですが、個人的には待望の機能の一つだったので嬉しいです。

 ではまた。