<4>今月の便利アドオン
今回のOutputプロパティのセクションで説明した、Render Regionの機能を拡張したアドオンです。Render Regionは、レンダリングを実行する範囲を指定してその他の不要な余白部分のレンダリング処理を省くため、テストレンダリングや高解像度のレンダリングを行う際に非常に有効です。
Animated Render Border(以下、ARB)ではその機能をさらに拡張し、指定したオブジェクトやCollectionに対して自動的にそれらの大きさを識別し、レンダリング範囲を決定してくれます。さらに、それらのオブジェクトやCollectionに移動・回転・スケール等のアニメーションが適用されている場合でも、レンダリング範囲が自動的にトラッキングして必要最低限の範囲でレンダリングを実行します。
キャラクターなどをレンダリングする際、余白のない空間部分の計算はそれほどレンダリング時間に影響を及ぼしませんが、アニメーションを付けて数十、数百のフレームをレンダリングということになると、時間のロスがかなり生じてしまいます。ARBを使用することで、アニメーション時の無駄な余白部分のレンダリング処理を省くことができ、CG制作のネックでもあるレンダリング時間を少しでも短縮することが可能になります。
ARBをインストールすると、Renderプロパティの下の方に[Animated Render Border]という項目が追加されるので、そこにチェックを入れましょう【4-A】 。
-
-
◀【4-A】ARB①Object/Collection
ARBはRender Regionの拡張機能であるため、使用する場合はOutputプロパティの[Render Region]にチェックを入れる必要があります
上部の設定の[Object]、[Collection]、[Keyframe]の3つの項目で、レンダリング範囲のトラッキングの方法を選択します。
●Object/Collection
[Object]と[Collection]は、トラッキングする対象が異なるだけで設定項目は同じです。トラッキングの対象が単体のオブジェクトの場合は[Object]で設定し、Collectionを対象とする場合は設定を[Collection]にします。また、複数のオブジェクトをトラッキングする場合は、
[Link to Collection]でそれらを1つのCollectionにまとめておくと良いでしょう。
1:Object to track/Collection to track/Margin
ここでトラッキングするオブジェクト、Collectionを選択します。[Margin]では、レンダリング範囲をトラッキング対象からどのくらい余白を取るかを設定します。
2:Use Bounding Box/Draw Bounding Box
ここにチェックを入れると、トラッキング対象のバウンディングボックスをベースにレンダリング範囲を決定します。チェックがない場合は、オブジェクト自体の大きさをベースに範囲を決定するため無駄が少なくなりますが、Armatureモディファイアーなどモディファイベースの変形アニメーションが適用されている場合は、[Use Bounding Box]にチェックを入れなければ正確にトラッキングができないようです。
Draw Bounding Boxにチェックを入れると対象となるオブジェクト/Collectionのバウンディングボックスが表示されます。
3:Render Animation
アニメーションレンダリングの実行ボタンです。
●Keyframe
ここでは手動でレンダリング範囲をアニメーションさせることができます【4-B】 。
[Ctrl+B]でレンダリング範囲を設定して[Insert Keyframe]でキーを打ち、フレームを動かします。そこで新規でレンダリング範囲を設定しキーを打つことで、間のフレームは自動的に補完されます。またBorder Valuesに数値を入力し、フレームごとにレンダリング範囲を設定することもできます。
<注意点>
ここまでの説明を聞く限りでは非常に便利なアドオンかと思いますが、このアドオン効果をレンダリングに反映するには、【4-A】の[Render Animation]ボタンからレンダリングを実行する必要があります。
通常の[Render Animation]からレンダリングを実行した場合、最初の1フレームは設定したレンダリング範囲でレンダリングが実行されますが、それ以降はレンダリング範囲はそこに固定されアニメーションに追従しません(そう言った意味で、静止画のレンダリングでのRender Imageでは機能していると言えます)。そのため、次回以降で説明する「複数のView Layerのレンダリング設定」や「Compositorエディタを使用したレンダリング」にそのまま使用することはできません(マニュアルにはPythonのコードが記載されているので、それらを駆使することで可能かもしれません)。
また、aviやmp4などのムービー形式のファイルフォーマットには対応していないため、アニメーションプレビューを作成するときなどにも直接ムービーファイルを書き出すことはできません。上記のような制限はありますが、レンダリング時には非常に高い有効性を発揮するアドオンですので、気になる方は試してみてください。
<5>今月のミニTips
●View Layerプロパティを使用する際の出力設定
前回説明したように、View Layerプロパティを使用することでレンダリングする際に多くのレンダリング要素を同時に出力することができます。基本的なレンダリング要素のほとんどは他の3Dツールと同じような結果を出力しますが、"Mist"、"Object Index" 、"Materal Index"、"Cryptmatte"、"Shader AOV"などの要素は出力する際に独自の設定が必要となります。
今後数回に分けてそれらの要素の出力設定を説明していこうと思います("Mist"以外は全てCyclesのみに対応しているレンダリング要素となります)。
1:Mist
Mistはカメラからの深度情報を要素として出力します(筆者の感覚ではMistではなくFogの方がしっくりするのですが)。Zの要素でも深度情報を出力することが可能ですが、Mistでは深度情報を任意に設定した距離で出力することが出来ます。
フォグや被写界深度をコンポジットツールで後処理で追加する際に、あらかじめ範囲が決まっている場合はMistで出力しておいた方が調整する際に手間を省くことができます。 Mistを適用させる距離の設定はView Layerプロパティでこの要素をONにするまで隠されています。
MistをONにするとWorldプロパティにMist Passという設定項目が現れるので、そこでMistの開始地点と終了地点のカメラからの距離の設定とMistが適用される度合いの計算方法を指定することができるようになります【5-A】 。
カメラのObject DataプロパティのClip機能を使用することで、Mistの開始地点と終了地点の距離のだいたいの数値を視覚的に確認することができます【5-B】 。
-
-
◀【5-B】Mistの設定②
Lensの項目のClip StartとEndに数値を入れることでカメラからの距離でオブジェクトがクリッピングされるので、ここで視覚的に大体の距離を測定して同じ設定数値をMistの設定にコピーすることでMistの効果が適用される範囲を決めることができます。 数値の測定が終わりましたら、Clip StartとEndを元の数値設定に戻すことをお忘れなく(クリッピングされた結果がレンダリングされてしまいます)。
Profile.
-
横田義生/Yoshio Yokota(Griot Groove)
3ds Max歴25年。Web3D、建築、ゲーム、CMを経て現在映像プロダクション・グリオグルーヴにディレクターとして所属。頑なに3ds Maxを使用してきましたが、そろそろ新しいツールを覚えたいと言うタイミングでBlenderに出会い仕事の傍ら猛勉強中です。もともとジェネラリストでしたが、ここしばらくは制作現場からは遠ざかっていたため、これを機に一クリエイターとして制作をしていこうと意気込んでいます