Thursday, February 18, 2021

ベテランジェネラリストのBlender基礎レッスン:第6回:Blenderのシーン構成(3)View LayerとScene | 連載 | CGWORLD.jp - CGWORLD.jp

terasibon.blogspot.com

社内にBlenderチームを結成し、デモ映像の制作を通じて日々検証を行なっているグリオグルーヴ。本連載では、3ds Max歴25年からBlenderを使い始めた同社のCGディレクター横田義生氏が、自身の経験からBlenderを始めたい人に向けたTIPSを紹介していく。

TEXT_横田義生 / Yoshio Yokota(Griot Groove)
EDIT_小村仁美 / Hitomi Komura(CGWORLD)

Infomation

『DEEP HUNTER』
グリオグルーヴBlenderチームによる、Blenderで制作を完結させることを目標としたCGアニメーション作品のパイロットムービー。本連載では、この映像の制作を通してBlenderの基礎を解説していく

はじめに

BlenderのView Layerは、Mayaのレンダーレイヤや3ds Maxのステートセットに似た機能です。実際のところそれらと比較するとそれほど多くの設定ができるわけではありませんが、Sceneと組み合わせることで柔軟にシーンを構成することが可能となっています。機能が限定されている分、設定が容易で使い勝手が良く、モデリングの段階でも気軽に使用することができます。

コンポジット用素材の出力設定もView Layerで行うため、最終的な画づくりにおいてもView Layerは非常に重要な機能となります。第4回、第5回とBlenderのシーン構成の基となる機能の説明をしてきましたが、今回はこれまでの機能を使用してView LayerとSceneの活用方法を説明します。

制作環境
Blender 2.83.2(Portable版)
OS:Windows 10
CPU:Intel Core i7-9700K
メモリ:32GB
GPU:NVIDIA GeForce RTX 2080 SUPER

<1>シーンの状態を記録し、切り替えるView Layer

View Layerの機能は簡単に言ってしまうと、Blenderのシーンの状態を記録し、用途に応じてそれらを切り替える機能です。記録できる設定は、大きく分けて以下の2つです。

・Outliner上でのCollectionのステータス切り替え
・PropertiesエディタのView Layerプロパティの設定切り替え

View Layerで記録することができる機能は上記の2つに限定されており、操作自体も非常にシンプルですので、他の3Dツールの同機能よりも手軽に様々な場面で活用することができます。

●View Layerの作成、切り替え、削除

View Layerの基本的な設定はトップバーの一番右側のセクションで行います【1-A】。デフォルトでは"View Layer"という名前のView Layerが1レイヤーのみ作業レイヤーとして設定されており、名前は任意で変更可能です。

▲【1-A】View Layer
ここではView Layerの作成、名前の変更、切り替え、削除を行うことができます

名前の項目の右横のアイコンをクリックするとメニューが表示され、そこからView Layerの作成方法を選択して実行すると、それに応じた新規のView Layerが作成されます【1-B】。作成方法は以下の3パターンが用意されていますので用途に応じて使い分けてください。

・New
Collectionが全てONになった状態でView Layerが新規作成されます。
・Copy Settings
実行した時点でのCollectionの状態を維持したView Layerが新規作成されます。
・Blank
Collectionが全てOFFの状態で新規作成されます。

▲【1-B】View Layerの作成
View Layerはオブジェクト、マテリアルと同じく1シーン内では重複する名前で存在することができないため、新規でView Layerを作成すると自動的に末尾に、".***"と数値が加算されていきます

名前の項目の左横のアイコンをクリックすると設定したView Layerがリスト表示されますので、それを選択することで切り替えが可能です【1-C】。View Layerの削除は、削除したいView Layerを選択している状態で右端の"☓"アイコンをクリックします。

▲【1-C】View Layerの切り替え
View Layerが複数ありリストに表示しきれない場合は、一番下の検索項目に名前を入力することでソートすることができます。View Layerに記録した設定がわかりやすい名前を付けるように心がけましょう

●Collectionのステータスの切り替え

前回のCollectionの説明の際に触れましたが、View Layerを使用することにより、Collectionのステータス切り替えが容易にできるようになります。View LayerはOutliner上で以下の7つのCollectionステータスの設定を記録します。

CollectionのON/OFF
選択の可/不可
一時的なビューポート上の表示/非表示
ビューポート上の表示/非表示
レンダリング時の可視/不可視
HoldoutのON/OFF
カメラに対する可視/不可視

注意していただきたい点として、View Layerに記録される設定はCollectionに対しての上記の設定の切り替えのみで、オブジェクトに対してはの設定の切り替えのみが唯一記録されます。それ以外は1つのView Layerでステータスを変更したとしてもその設定は記録されず、その他全てのView Layerに変更が反映されてしまいます。

オブジェクト単位の切り替えを記録したい場面も多々あると思いますが、そのときは前回説明しましたLink to Collectionを使用してLinkオブジェクトを作成し、それを格納しているCollectionのステータスを切り替えることで対応することになります。

それでは実際にCollectionのステータスの設定をView Layerに記録して、View Layerを切り替えてみましょう。レンダリングエンジンにはCyclesを使用しています。

下準備【1-D】のようにオブジェクトが配置してあるシーンを用意します。このシーンに対してコンポジット用に背景のView Layer、キャラクターのView Layer(マスク付き)、SuzanneのマスクのView Layerを設定していきます。

▲【1-D】Collectionのステータスの切り替え①
シーンを準備します。背景には空のオブジェクトとして面を反転したSphereオブジェクト、地面にはPlaneオブジェクトを配置しています。また、CubeとCylinder、Suzanneは床のPlaneに埋まっている状態です

STEP 01:新規シーンから作成した場合、"View Layer"と言う名前のレイヤーが1つだけ設定されていますので、その名前をわかりやすいように"work"に変更します。次にScene Collectionの直下に"Base"コレクションを作成し、その下にカテゴリごとにオブジェクトをCollectionに分類していきます【1-E:a】

"Base"コレクション
"Camera"コレクション:Camera
"Light"コレクション:Light
"CH"コレクション:Cone、Cube、Cylinder、Suzanne、Torus
"BG"コレクション:Plane、Sphere

STEP 02:次にレンダリング用にオブジェクトをCollectionに分類していきます。Scene Collectionの直下に"Rend"コレクションを作成し、その下にLink to Collection、Instance to Sceneを使用してそれぞれを【1-E:b】のように格納します。

"Rend"コレクション
"Rend_Light"コレクション:Light(Linkオブジェクト)
"Rend_CH_Suzanne"コレクション:Suzanne(Linkオブジェクト)
"Rend_CH_Others":Cone、Cube、Cylinder、Torus(Linkオブジェクト)
"Rend_BG":"BG"(Collectionオブジェクト)

▲【1-E】Collectionのステータス切り替え②
【a】ここでは単純にオブジェクトをカテゴリごとにCollection分けしていますので、それぞれがわかりやすいようにオブジェクトを分類しましょう。"work"レイヤーは作業するためのレイヤーとして使用します/【b】"CH"コレクションのオブジェクトは全てLink to Collectionで、"Rend_CH_Suzanne"、"Rend_CH_Others"コレクションに振り分け、"BG"コレクションからInstance to SceneでCollectionオブジェクトを作成し"Rend_BG"に格納しています

STEP 03: 新規にView Layerを作成し、名前を"rend_BG"に変更します。このView Layerでは背景のみがレンダリングされるように設定していきます。"Base"コレクションはここでは必要ないのでOFFにし、"Rend"コレクションのステータスを【1-F】のように変更します。

▲【1-F】Collectionのステータス切り替え③
このView Layerでは背景のみをレンダリングするため、レンダリング時にキャラクターの表示をOFFにする必要があります。Collection自体をOFFにするとキャラクターが落とす影や映り込みも消えてしまうため、ここではカメラに対する可視の設定のステータスをOFFにしています

STEP 04:次にキャラクターのみをレンダリングするためのView Layerを新規作成し、名前を"rend_CH"にします。ステータスの設定は【1-G】のようになります。

▲【1-G】Collectionのステータス切り替え④
キャラクター自体が地面に埋まっているため、背景のCollectionのステータスをHoldoutにしてマットの設定にする必要があります

STEP 05: 最後にSuzanneのマスクをレンダリングするためのView Layerを用意します。名前を"rend_CH_mask"として設定を【1-H】のようにしてください。

▲【1-H】Collectionのステータス切り替え⑤
手前にあるTubeがSuzanneにかぶっているため、"Rend_CH_Others"コレクションのステータスをHoldoutの設定にする必要があります。また、このView Layerはマスク用のレンダリングでライティングは必要ないため、"Rend_Light"コレクションはOFFにしてレンダリング時間を短縮しましょう。レンダリング結果は3D ViewportのViewport ShadingをRenderedに切り替えることでビューポート上でも確認可能です

STEP 06: 上記の設定で、3つのView Layerを切り替えることで、背景のみの画像【1-F】、キャラクターのみの画像【1-G】、Suzanneのマスク画像【1-H】をレンダリングすることができます。レンダリング時にマスク付きで画像を出力するには、PropertiesエディタのRenderプロパティのFilmの項目でTransparentにチェックを入れる必要があります【1-I】


  • ◀【1-I】Collectionのステータス切り替え⑥
    デフォルトではこのチェックはOFFになっていますが、レンダリング出力時はマスクが必要となる場合が多いので基本はONにしておくと良いでしょう

今回説明したステータス切り替え用のCollectionの分類は筆者がよく使用する方法ですが、あくまで一例であり、全てにおいて有効的な分類方法というわけではありません。今回の方法を参考にして、読者の方々にとって一番効率の良いやり方を模索してみてください。

●View Layerプロパティの設定切り替え

View LayerはCollectionのステータス切り替えの他にPropertiesエディタのView Layerプロパティの設定切り替えも記録します。

View Layerプロパティでは、レンダリング時に出力可能な要素やレンダリングに反映する設定のON/OFFを制御することが可能です。またOverrideを設定することで、シーン上のオブジェクトのマテリアルを上書きしてレンダリングすることも可能となっています。

View Layerを複数設定しレンダリングを実行すると、全てのView Layerが順番にレンダリングされてしまいます。View Layerプロパティの一番上のView Layerの項目に"Use for Rendering"と"Render Single Layer"の設定オプションがありますが、"Use for Rendering"のチェックを外すことでアクティブなView Layerをレンダリングから除外することができます【1-J】

また、"Render Single Layer"にチェックを入れると"Use for Rendering"のチェックのON/OFFに関わらずアクティブなView Layerのみをレンダリングします。

▲【1-J】View Layerプロパティ
"Render Single Layer"はView Layerに記録されずグローバルな設定として機能します。チェックを付けるとどのView layerに切り替えても常にチェックされている状態となり、アクティブなView Layerのみがレンダリングされるようになります

次ページ:
<2>よりグローバルな設定切り替えが可能なScene

Let's block ads! (Why?)


からの記事と詳細 ( ベテランジェネラリストのBlender基礎レッスン:第6回:Blenderのシーン構成(3)View LayerとScene | 連載 | CGWORLD.jp - CGWORLD.jp )
https://ift.tt/3pwp6pR
Share:

0 Comments:

Post a Comment