前の記事の『ビューレイヤとコレクション』からの続きです。 引き続き、昼と夜のレンダリングをビューレイヤで分ける例を紹介します。
これでレンダリングできる状態になりました。 しかし、その前にレンダリングエンジンをCyclesに変えておきます。 レンダリングエンジンをCyclesに変えるのは、レンダリングの様子をじっくり観察できるようにするためです。
標準レンダリングエンジンのEeveeではレンダリングが速すぎて何が起こっているのか理解しづらいため、Cyclesに変えます。 ただそれだけの理由です。
上図のようにPropertiesの(1)のRender Propertiesタブにある(2)のRender EngineをCyclesに変更します。
では、キーボードのF12キーを押してレンダリングを開始してください。 レンダリングウィンドウが開きますので、何が起こるかを見ていてください。
上図のようにレンダリングが開始され、立方体のメッシュが黄色で描かれ始めます。 そして、立方体のメッシュが黄色で描かれた後、今度はメッシュが赤色で描かれます。 つまり、2回レンダリングが行われます。
2回レンダリングが行われたのはビューレイヤが2つあるからです。 何も設定していない場合は、全てのビューレイヤのレンダリングが行われます。
上図のように2回のレンダリングが終わると、最初のビューレイヤのレンダリング結果が表示されます。
なお、レンダリングウィンドウは2つのビューレイヤのレンダリング結果を持っています。 レンダリングウィンドウの右上にあるレイヤ選択リストから、対象のビューレイヤを選択することができます。
上図のようにレンダリングウィンドウの右上にあるレイヤ選択リストから "Night" を選択してみましょう。
上図のようにビューレイヤ "Night" のレンダリング結果が表示されます。
ではここで、選択中のビューレイヤのみをレンダリングする設定について説明しておきます。
上図のようにPropertiesの(1)のView Layer PropertiesタブにあるView Layerパネルの(2)のRender Single Layerをオンにします。
これで選択中のビューレイヤのみがレンダリングされます。 キーボードのF12キーを押して確認してみましょう。
上図のようにビューレイヤ "Night" のみがレンダリングされます。
ではここで、レンダリングウィンドウの右上にあるレイヤ選択リストから"Day" を選択してみましょう。
上図のようにレンダリングウィンドウの右上にあるレイヤ選択リストから "Day" を選択してみます。
上図のようにビューレイヤ "Day" のレンダリング結果が表示されてしまいました。 なぜでしょうか。 実は前回のレンダリング結果が残っているだけですので心配ありません。
では最後に、コンポジットノードネットワークを操作して2つのビューレイヤの結果を合成してみましょう。 昼間のレンダリング結果と夜間のレンダリング結果を合成します。
まずは、Compositorを表示させるためにワークスペースをCompositingに切り替えましょう。
上図のようにトップバーにあるワークスペース切り替えタブの "Compositing" をマウスの左ボタン()でクリックします。
上図のようにワークスペースがCompositingに切り替わり、Compositorが表示されます。
続いて、コンポジットノードネットワークを有効にします。
上図のようにCompositorのヘッダにあるUse Nodesチェックボックスをオンにします。
上図のようにCompositor上にコンポジットノードネットワークが表示されます。 左右に2つ並んでいるボックスがノード(コンポジットノード)であり、それをつないでいる線が接続線です。
ノードネットワークの表示倍率が小さくて見づらいので、大きくしましょう。 キーボードのHomeキーを押します。
ではここで、Render Layersノードに注目してください。
上図のようにRender Layersノードの下部には、シーンとビューレイヤを選択するための項目があります。 Render Layersノードは、指定されたシーンを指定されたビューレイヤの設定に従ってレンダリングします。 そのため、シーンとビューレイヤを選択する必要があるのです。
今回は昼間のレンダリング結果と夜間のレンダリング結果を合成します。 つまり、2つのビューレイヤでのレンダリング結果を合成します。 それには、2つのRender Layersノードが必要になります。
既存のRender Layersノードを複製することにしましょう。 Render Layersノードのみを選択してください。
上図のようにRender Layersノードのみを選択します。
複製は3D Viewportと同じくSHIFT+Dで行います。 SHIFT+Dを押してください。
上図のようにRender Layersノードが複製されます。
ではここで、ノードを整理しましょう。 ノードのタイトルバーをドラッグすることで、ノードを移動することができます。 なお、CTRLキーを押しながら移動することで、グリッドにスナップ(吸い寄せ)されます。
上図のようにノードを整理します。
続いて、2つのRender Layersノードの出力を混合するためのMixノードを追加します。 キーボードのSHIFT+Aを押します。
上図のように"Add"というタイトルのメニューが表示されますので、"Color" -> "Mix" を実行します。
上図のようにMixノードが追加されます。 これで、必要なノードが全て揃いました。
では、2つ目のRender LayersノードとMixノードをノードネットワークに接続しましょう。
上図のように2つ目のRender LayersノードとMixノードをノードネットワークに接続します。
次に、MixノードのFactorを 0.5 に変更します。 昼間のレンダリング結果と夜間のレンダリング結果を半々で混合するための設定です。
上図のようにMixノードのFactorを 0.5 に変更します。
最後に、2つ目のRender LayersノードのLayerを "Night" にします。 今のままだと昼間のレンダリング結果と昼間のレンダリング結果の合成になってしまい、意味がありません。
上図のように2つ目のRender LayersのLayerを "Night" に変更します。 これで、ビューレイヤ "Night" の設定でレンダリングされるようになります。
では、レンダリングしましょう。 キーボードのF12キーを押します。
上図のようにレンダリング結果が表示されます。 昼間のレンダリング結果と夜間のレンダリング結果が合成されているのがわかります。
最後に、ノードネットワークの全体図を掲載します。 クリックすることで拡大表示することができます。