All posts

【Resolve Fusion Vol.9】Z-depth入門|Depth Blurで2Dボケ、Fogで距離フォグ

【Resolve Fusion Vol.9】Z-depth入門|Depth Blurで2Dボケ、Fogで距離フォグ

ピントを変えるたびにMayaへ戻ると、調整が遅くなります。Arnold編 で AOVs の Z と、比較用の Beauty を出してあれば、Fusion では 2Dのボケ でピント位置を試せます。

本記事は 【Maya×Arnold】被写界深度(DOF)とZ-depth AOV出力ガイド|Arnoldでフォーカスを合わせて焼く の続編(Fusion側)です。Vol.9は 2段構成 です。

  1. Arnold編(前提) … 肩越しで3D DOFを焼く。DOFオフ+Zも同じカメラで出す
  2. 本記事(いまここ) … 同じ肩越しで2Dボケ。ArnoldのDOF焼きと比べる。応用で森カットの距離フォグ

前回(Vol.8) はライトの色と強さでした。Vol.9は深度です。

今回やることのイメージは次のとおりです。

  1. DOFオフの RGBA と Z を読む(3D DOF済みBeautyは比較専用)
  2. Channel Booleans で Z を絵に載せる
  3. Depth Blur で奥の顔/手前の肩にピントを切り替える
  4. Arnoldの3D DOF焼きと並べて見比べる
  5. 一番下流で ACES Transform
  6. (応用)森カットで、同じZを載せた Fog ノードで距離フォグ

※ 始める前に、Arnold編 どおり次を用意してください。

  • RGBA(Enable DOF オフ)+ Z(AOVs・float・closest)。Common の Depth channel は使わない
  • Beauty(奥ピント/手前ピントの 3D DOFオン)※比較用。2Dボケの入力には使わない

Vol.9を読む順番

【Maya×Arnold】被写界深度(DOF)とZ-depth AOV出力ガイド|Arnoldでフォーカスを合わせて焼く ← 前提(3D側)

【Resolve Fusion Vol.9】Z-depth入門|Depth Blurで2Dボケ、Fogで距離フォグ ← いま読んでいる記事(Fusion側)

連載の前後

【Resolve Fusion Vol.8】Light Select入門|Color Gainでライトの色と強さをコンポ調整(前回)

関連記事【Resolve Fusion Vol.8】Light Select入門|Color Gainでライトの色と強さをコンポ調整関連記事【Resolve Fusion Vol.1】ACEScg AOV加算マージの基礎関連記事【Resolve Fusion Vol.7】モーションベクトル入門|Vector Motion Blurで後付けモーションブラー

なぜ Beauty に Blur をかけるだけでは足りないのか

画面全体を Blur すると、ピントの「どこがシャープか」を選べません。

では、Vol.3 のように renderSetupでキャラクター(や背景)を別EXRに分けて、レイヤーごとに Blur すればよいかというと、ピント用途ではこれも足りません。renderSetup自体は色の差し替えや重ね順には向きます。ダメなのは「オブジェクト単位の分け」で距離を代用している点です。

ピントは 誰か ではなく カメラからの距離 です。肩越しなら、手前のキャラだけで見ても、肩と後頭部では距離が違います。その人を1枚のプレートとして同じ量で溶かすと、厚みのない切り絵のようになります。奥の顔はシャープ、手前の人は全部同じボケ、壁はキャラに含まれないので手つかず——という切り抜きの重ねになり、レンズのボケ(手前から奥へ連続して変わる)にはなりません。

重ねたあとの輪郭も厄介です。レイヤーを Blur するとアルファも広がるので、際にハローが出たり、本来は奥の顔に乗るはずの手前のボケが、切り抜きの形のまま乗ったりします。髪や重なりが多いほど目立ちます。

壁や床を同じ考え方で分けると、手前の壁・奥のコーナー……と枚数が増え、それでも1枚の中の奥行きは平坦なままです。ピント位置を「もう少し手前」にずらすたびに、どのEXRをどれくらいぼかすかを組み直すことになります。

Z(各ピクセルのカメラからの距離)があれば、ある距離だけシャープ(それ以外をぼかす)——2Dの被写界深度っぽい表現ができます。Vol.6の Cryptomatte が パーツ の狙い撃ち、Vol.8の Light Select が ライト の狙い撃ちなら、Vol.9のZは 距離 の狙い撃ちです。1本の Beauty と Z で、奥の顔/手前の肩を Focal Point で切り替えられます。キャラ枚数分の renderSetup は不要です。

やりたいこと向いている手段
パーツだけ色を変えるCryptomatte(Vol.6)
キーライトだけ落とすLight Select(Vol.8)
ピント位置を後から試すZ + Depth Blur(本記事)
奥だけ霞ませる(試し)Z + 距離フォグ(本記事の応用)
絵として空気感を決め切るArnold の Fog(Arnold編の補足)
絵としてボケを決め切るArnold の 3D DOF(Arnold編)

今回使うシーンと素材

Arnold編 と同じ 肩越し(Over The Shoulder/OTS) です。左手前に後頭部〜肩、右奥に向かい側の顔。シャツの色を分け(作例は緑/赤)、奥は部屋のコーナー(色の違うチェッカー壁)です。レンズは 50mm・Film Back 36×24。3D DOFの作例は Aperture Size 1.0 です。

50mmの3D DOFでは、顔のすぐ後ろの壁はあまりボケません。2Dは Focal Point からの距離の差 に比例してぼかすので、壁が顔より奥に離れていると、手前の肩より壁の方が強くボケます。Depth of Field は初期値 0 のままでボケます。 スライダーを大きく上げるとシャープ帯が広がり、手前まで合焦して ボケなくなります。 壁の強さは Blur Size で抑えます。寄せきれなければ 3D DOF です。

切り返しカメラも同じ手順です。本編は肩越し1本で十分です。

ボケなし
DOF なし
DOF_Far_2D
DOF 2D(Z)
DOF_Far_3D
DOF 3D(Arnold)

完成形のノード構成(先にこれだけ覚える)

graph TD
    Loader_Beauty --> ChannelBooleans
    Loader_Z --> ChannelBooleans

    ChannelBooleans --> DepthBlur
    DepthBlur --> ACESTransform
    ACESTransform --> MediaOut

    %% 比較用ノード(独立)
    Loader_DOF_Far
    Loader_DOF_Near

    %% 接続線の色設定(黄色=メイン/背景、緑色=前面/Zチャンネル合流)
    linkStyle 0 stroke:#e2cc62,stroke-width:2px;
    linkStyle 1 stroke:#8cc63f,stroke-width:2px;
    linkStyle 2 stroke:#e2cc62,stroke-width:2px;
    linkStyle 3 stroke:#e2cc62,stroke-width:2px;
    linkStyle 4 stroke:#e2cc62,stroke-width:2px;
  • 2Dボケの入力は、必ず DOFオフの Beauty
  • ACES Transform は一番下流(Vol.1と同じ)。見比べの判断もここ
  • Sample(ピント位置のスポイト)は ACES Transform の前で行う。 Channel Booleans でも Depth Blur でも拾える。ACES の上では Z が落ちることが多い
  • 3D DOF済みの絵に Depth Blur を重ねると、ボケが二重になります

ACES Transform の設定は Vol.1と同じです。

  • ACES Version: ACES 2.0
  • Input Transform: ACEScg - CSC
  • Output Transform: sRGB piecewise
  • Pre-Divide / Post-Multiply: オン(アルファが Beauty 側である前提。Z のアルファが乗っていると真っ黒になる)

ステップ1:マルチパートEXRを読む

本記事の入力は 1本のマルチパート OpenEXR です。Vol.1と同じで、RGBA と Z は同じファイルの別 Part です。Beauty 用フォルダと Z 用フォルダに分かれた別EXRは使いません。

  1. Fusion ページで Loader を追加
  2. Arnold編 の、Enable DOF オフ のマルチパート EXR を指定(同じファイルを2つ読む)
  3. Inspector の Format で Part を RGBA に(Loader_Beauty)
  4. Loader を複製し、Part を Z に変える(Loader_Z)
  5. Loader_Z の Format → Channels で、ソースの Z を Red に乗せる(ここが本丸)
    • Red → Z
    • Z → Z もつけておく
    • Green / Blue も Z でよい。Alpha は None

Part を Z にしただけでは、Depth Blur のスポイトで Z が 0 のまま、ということがよくあります。距離を Fusion の Red にも出してから、Channel Booleans の To Z Buffer(Z Buffer FG)で載せます。

6. 比較用に、奥ピント/手前ピントの 3D DOFオン Beauty も別 Loader で読む(Part は RGBA)

名前は Loader_Beauty / Loader_Z / Loader_DOF_Far / Loader_DOF_Near が分かりやすいです。

Loader_Beauty の Z は None のままでよいです。深度は Loader_Z の Part Z から載せます。

ビューアに Loader_Z だけ出すと、真っ白や真っ黒に見えることがあります。カメラ距離の float なので、見た目のグレーランプが綺麗でなくても正常です(Arnold編と同じ)。確認するときはビューアの正規化や、一時的に BrightnessContrast でレンジを圧縮します。その BrightnessContrast は本番の Depth Blur にはつなぎません。

※ Beauty と Z を 別ファイル・別フォルダ に出した場合、Z 側は1チャンネルEXRになり、Format の一覧に Y だけが出ることがあります。それは分割出力の見え方です。本記事はマルチパート前提なので、Y への割り当ては不要です。出し方は Arnold編(AOVs の Z・closest、Common の Depth channel は使わない)を読んでください。

ステップ2:Channel Booleans で Z を絵に載せる

Fusion の Depth Blur は、メイン入力の画像に Zチャネル が入っていることを前提にします。マルチパートEXRでは Beauty と Z が別 Part なので、一度まとめます。

やることは2つです。色とアルファは Beauty のまま。Z だけ緑入力から載せる。

  1. Shift+Space で Channel Booleans(Bol。Channel Boolean(3D用)ではない)
  2. 黄(Background) に Loader_Beauty
  3. 緑(Foreground) に Loader_Z

Color タブ(色とアルファ)

項目設定
OperationCopy
To Red / Green / BlueRed BG / Green BG / Blue BG
To AlphaAlpha BG

To Alpha を Alpha FG にすると、Loader_Z のアルファ(None=0)が乗ります。Fusion のビューアは RGB だけ見せることが多く絵は見えますが、ACES Transform の Pre-Divide / Post-Multiply がオンだと割り算のあと ×0 になり、真っ黒になります。色もアルファも黄入力です。

Aux タブ(Z)

  1. Enable Extra channels をオン
  2. To Z Buffer を Red FG にする(Loader_Z で Red → Z と Z → Z にしてある前提)
  3. To BG Red / Green / Blue / Alpha を含む、ほかはすべて Do Nothing

いちばん効いているのは Loader_Z の Red → Z です。Red が None だと、To Z Buffer を Z Buffer FG にしてもスポイトの Z は 0 のままになりやすいです。Red に Z が乗っていれば、作例の Z Buffer FG で Depth Blur 上でも値が変わります。

確認は Channel Booleans の出力 でも、Depth Blur の上でも構いません。顔と肩で Z が 0 以外の違う数字 になっていれば成功です。ACES Transform の上では Z が落ちることが多いので、Sample は ACES の前で行います。

Color タブの To Red は Red BG のままです。絵の RGB は Beauty、Z は Aux の Z Buffer FG で載せます。

ステップ3:Depth Blur でピントを切り替える

Channel Booleans のあとに Depth Blur(DBl)を入れ、そのあと ACES Transform → MediaOut です。

graph TD
    ChannelBooleans --> DepthBlur
    DepthBlur --> ACESTransform
    ACESTransform --> MediaOut

    %% 接続線の色設定(黄色=メイン画像)
    linkStyle 0 stroke:#e2cc62,stroke-width:2px;
    linkStyle 1 stroke:#e2cc62,stroke-width:2px;
    linkStyle 2 stroke:#e2cc62,stroke-width:2px;

Blur Channel は Z にします。緑の Blur Image 入力はつなぎません(Z は Channel Booleans で載せたため)。Filter は最初 Box、Lock X/Y はオンでよいです。

やりたいこと触るところ
どの距離をシャープにするかFocal Point(Sample で拾う。スライダーの 0〜1 は使わない)
シャープな厚みDepth of Field(作例は 0 のまま。大きく上げるとボケなくなる)
ボケの強さBlur Size(Z Scale は初期値 200 のままでよい)

Arnold の Z はカメラ距離(何十、何百)です。Fusion の Focal Point スライダーは 0〜1 向けなので、ツマミを動かしてもシーンに届かず、全面が同じ量でボケることがあります。数字入力か Sample を使います。

Focal Point / Depth of Field / Z Scale(公式の意味)

Fusion の Depth Blur リファレンスでは、次のとおりです。

Focal Point は、シミュレートした合焦点までの距離です。値を小さくするとカメラに近く、大きくすると遠くなります。Sample(Pick)をビューアへドラッグすると、そのピクセルの Z が入ります。有効な Z が無い画像だと、値は変わりません。

Depth of Field は、合焦している領域の深さです。Focal Point がその帯の真ん中に来ます。帯の中の Z を持つピクセルはボケません。マニュアルの例では、Focal Point が 300、Depth of Field が 200 のとき、Z が 200〜400 のピクセルはすべて合焦です。スライダーを上げると帯が広がり、手前も奥も合焦に入りやすくなります。大きくすると画面のほとんどがシャープで、ボケなく見えます。 0 だと幅がほぼゼロで、Sample した距離だけシャープ、ほかは Blur Size でボケます。DaVinci Resolve の Fusion 解説でも、最初は Depth of Field を触らず、Blur Size と Sample から始める、とあります。

Z Scale は、Z バッファの値を倍率します。上げると Z 上の距離が伸び、下げると縮みます。奥行きの差を強調したり、ボケの境をやわらげたりするのに使います。Z の値が小さい画像では 1 より下げる例がマニュアルにあります。一方、本作例のようにカメラ距離が数百ある float の Z では、初期値 200 のまま Blur Size だけで足りることが多いです。1 まで下げると顔までボケることがあります。公式の「float なら下げる」は、距離のレンジが小さい Z 向けです。Blur Size を動かしても差が出ないときだけ、Z Scale を疑います。

作例の奥の顔がおおよそ 289 なら、DoF を 200 にすると公式どおりだいたい 189〜389 が合焦です。肩がこの範囲に入れば手前はボケず、壁がまだ外なら壁だけボケます。

操作の順番

  1. 左ビューアに Channel Booleans または Depth Blur を出す(ACES Transform ではない)
  2. Depth Blur を選んだまま、Sample をビューアの右奥の顔までドラッグして離す(ボタンを押して離すだけではない。スポイト)
  3. Focal Point の 数字欄 を見る。顔の Z と近い値が入っていれば成功。ツマミは 0〜1 のままでも、数字はシーンの単位と距離で変わる(作例では奥の顔がおおよそ 289)
  4. Depth of Field は初期値 0 のまま。大きく上げると手前まで合焦し、ボケなくなる
  5. Z Scale は初期値 200 のまま(1 にすると顔までボケることがある)
  6. ビューアを ACES Transform に切り替え、見た目を判断する
  7. Blur Size で手前の肩のボケを合わせる。壁が強すぎるのも、ここで抑える(Arnold の Aperture 1.0 と同じ数字にはしない)

Sample が 0 のままなら、ステップ2の確認(Channel Booleans 上の Z)に戻ります。Maya で測った Focus Distance を Focal Point に直接入れても同じです。符号が逆(全部ボケる)なら、同じ数字の前に - を付けて試します。

奥ピント/手前ピント

狙いやること
奥の顔にピントSample を右奥の顔へ。手前の肩がボケる
手前の肩にピントSample を左手前の肩/後頭部へ。奥の顔がボケる

切り替えるのは Focal Point(Sample)だけです。Blur Size は両方でそろえると、Arnold編の「Focus Distance だけ変える」に近い比較になります。

壁がボケるとき/DoF を上げるとボケなくなる

上の公式どおり、Depth of Field は Focal Point を中心にした合焦の幅です。作例では 0 のままで、Sample した顔はシャープ、差のある手前と壁は Blur Size でボケます。

スライダーを大きくすると帯が広がり、差の小さい 手前キャラが先に合焦して肩がボケなくなります。壁は顔からより遠いので、まだボケ側に残ることがあります。さらに上げると全体がシャープです。壁を救うために DoF を上げないでください。 強さの調整は Blur Size です。

顔はシャープ、肩はボケ、壁は 3D ほど抑えたい、が同時に成立しないときは、それが 2D の限界です。レンズに寄せるなら Arnold の 3D DOF です。

ステップ4:Arnold の 3D DOF と見比べる

左右のビューアに並べます。

左右
Loader_DOF_Far(または Near)→ ACES TransformDepth Blur の出力 → ACES Transform

見てほしい差:

項目3D DOF(Arnold)2D(Z + Depth Blur)
ピントのやり直し再レンダースライダー
反射・半透明の中のボケレンズに近い近似。境が汚れやすい
髪・細い輪郭比較的自然距離の段でチラつきやすい
壁(50mm)顔のすぐ後ろはあまり溶けない壁の方が顔から遠いと肩より壁がボケやすい。DoF を大きくするとボケなくなる

使い分け: 試しや「もう少し手前に」は Fusion。絵として決め切る/反射まで自然に、なら Arnold に戻る。Vol.7のモーションベクターと同じ割り方です。

DOF_Far_2DDOF_Far_3DDOF Near 3DDOF Near 2D
DOF Near 2DDOF_Near_3DDOF Near 3DDOF Near 3D

切り返しのカメラは、もっとわかりやすいように調整しました(ボカしすぎた…)。

DOF Far 2d cam2DOF Far 3D cam2Far 3DFar 2D
DOF Near 2D cam2DOF Near 3D cam2Near 3DNear 2D

Vol.1パイプライン上の置き場所

2Dボケは、Vol.1でいう Beauty_Master 相当の あと、ACES Transform の 前 です。Vol.7の Vector Motion Blur を使うなら、ブラーの前でも後でも構いませんが、ピントを先に決めてから動きを足す方が分かりやすいです。

graph TD
    Loader_Beauty_NoDOF --> ChannelBooleans
    Loader_Z --> ChannelBooleans

    ChannelBooleans --> DepthBlur
    DepthBlur --> VectorMotionBlur
    Loader_MV -.-> VectorMotionBlur

    VectorMotionBlur --> ACESTransform
    ACESTransform --> MediaOut

    %% 接続線の色設定(黄色=メイン/背景、緑色=前面/追加要素)
    linkStyle 0 stroke:#e2cc62,stroke-width:2px;
    linkStyle 1 stroke:#8cc63f,stroke-width:2px;
    linkStyle 2 stroke:#e2cc62,stroke-width:2px;
    linkStyle 3 stroke:#e2cc62,stroke-width:2px;
    linkStyle 4 stroke:#8cc63f,stroke-width:2px;
    linkStyle 5 stroke:#e2cc62,stroke-width:2px;
    linkStyle 6 stroke:#e2cc62,stroke-width:2px;

Cryptomatte(Vol.6)で一部だけ触るなら、マスクは Depth Blur より前の Color Corrector などへ。まずは画面全体のピントで十分です。

よくあるトラブルと対処

Channel Booleans や Depth Blur の上で Z がずっと 0

原因: Loader_Z の Red が None(Z が Red に乗っていない)。または ACES Transform の上で見ている。

対処: Loader_Z で Red → Z(Z → Z も)。To Z Buffer は Z Buffer FG。Sample は ACES の前。

Sample を押しても Focal Point が動かない

原因: ボタンを押しただけで離している。または ACES Transform を見ながら拾っている。Loader_Z の Red が None で Z が 0。

対処: Sample を Channel Booleans または Depth Blur のビューアまでドラッグする(ACES ではない)。To Z Buffer は Z Buffer FG。Loader_Z は Red → Z。数字欄を見る。

Focal Point のスライダーを動かすと全面が同じように溶ける

原因: スライダーは 0〜1 向け。Arnold の距離(何十、何百)に届いていない。Z が全部 0 のときも同じ症状。

対処: スライダーで探さない。Sample か、Maya で測った Focus Distance を数字で入れる。Channel Booleans 上の Z が 0 でないかも確認。

Blur Size を変えても見た目が変わらない

原因: Sample 前に Blur Size を触っている。または ACES Transform の前で判断している。Z Scale を 1 まで下げて顔までボケている。

対処: 先に Sample で顔に合わせる。Z Scale は 200 のまま、Blur Size を動かす。見た目は ACES Transform のあと。Z Scale を下げて顔までボケるなら 200 に戻す。

ACES Transform が真っ黒(Depth Blur までは絵がある)

原因: To Alpha が Alpha FG(Z のアルファ=0)。Pre-Divide / Post-Multiply がオンだと ×0 になる。

対処: To Alpha を Alpha BG。Pre-Divide はオンのまま。チェックを外して絵が出ても、それは回避であり、アルファがまだ間違っている。

全体が溶ける/ピントがどこにも来ない

原因: Focal Point がシーンの距離とずれている。Z Scale を下げすぎている(1 など)。

対処: Sample し直す。Z Scale は 200 に戻す。必要なら Focal Point にマイナスを付ける(Arnold の Z が負のとき)。

輪郭がチラつく/髪の際が汚い

原因: 2Dは距離の境でボケ量を切り替えている。Zのフィルタが closest でない(にじんだZ)。

対処: Arnold側は closest のまま。2Dで無理に寄せきれなければ 3D DOF に戻る。

手前はボケず、壁だけボケる/DoF を上げたらボケなくなった

原因: Depth of Field を上げすぎ。シャープ帯が手前まで届く。大きくすると全体が合焦する。

対処: DoF を 0 に戻す。強さは Blur Size。

3D DOFより壁だけ極端に溶ける

原因: 2Dは |Z − Focal Point| に比例する。壁が顔から肩以上に離れている。

対処: DoF は上げない。Blur Size を下げる。寄せきれなければ 3D DOF。

色が極端/グレーに見える

原因: ACES Transform の前で判断している。

対処: Transform は最後。設定は Vol.1と同じ。

まとめ

ポイント内容
前提Arnold編 の DOFオフ RGBA+AOVsの Z。比較用に3D DOF焼き(別レンダー)
ノードChannel Booleans(色・アルファは BG、To Z Buffer は Z Buffer FG)→ Depth Blur → ACES Transform
ピントChannel Booleans 上で Sample。スライダーの 0〜1 は使わない
壁DoF は 0 のまま。大きく上げるとボケなくなる。壁の強さは Blur Size
見比べ試しは2D。決め切り・反射は3D
フォグ森カットは Fogオフ+Z を Fog ノードへ。試しは2D、決め切りは Arnold の Fog

再レンダーなしでピントを試せるようになると、「もう少し手前がいい」で Maya に戻る回数が減ります。足りないとき(レンズのボケ味、反射の中)だけ3D側、という分け方です。フォグも同じです。

応用:Zで距離フォグ

肩越し本編とは 別カット です。Zはボケ専用ではありません。各ピクセルの距離が分かっているので、奥だけ霞ませる(距離フォグ)にも使えます。

別シーンを用意しました。

フォグが見えるのは、木が手前・中・奥に並んでいるカットです。

同じZをマスクにして、霞ませず奥のコントラストを落とす/少し青くする、という使い方もあります。いわゆる空気遠近で、レオナルド・ダ・ヴィンチの『モナリザ』の遠景が青く見えるのもその系統です。本記事ではオマージュシーンも挿絵も作りません。作例は森の距離フォグ1本です。

3D側の付け方は Arnold編の補足(Fog) です。Maya標準の Environment Fog は使いません。Arnold の Atmosphere に Fog(aiFog)を載せます。Fusion では、肩越しと同じく Z を載せた絵に Fog ノードを足します。

3D Fog と 2D(Z)の使い分け

DOFと同じ割り方です。

項目3D Fog(Arnold)2D(Z + Fog ノード)
濃さ・色のやり直し再レンダースライダー
奥へ行くほど霞むBeautyに焼けるZの距離で色を重ねる(近似)
高さフォグ(足元の帯)Height で出せる出ない(Zはカメラ距離だけ)
ライトに照らされたフォグ/光の筋Atmosphere Volume(Fogではない。本記事では扱わない)できない
半透明・葉の隙間の奥レイが通った分だけ霞む手前のZだけ見ているので、隙間の奥が雑になりやすい
レンダーコストFogは比較的軽い。Atmosphere Volume は重いコンポ側だけ
二重がけFogオンの絵に2Dを重ねない入力は Fogオフ の Beauty + Z

使い分け: 試しや「もう少し薄く」は Fusion。絵として空気感を決め切る、葉の隙間まで自然に、なら Arnold の Fog に戻る。ピントの 3D/2D と同じです。

光の筋(逆光+ファンなど)は Fog でも Z でも出ません。それは Atmosphere Volume 側で、将来の3Dネタに回します。高さフォグの作り込みと、ノイズで揺らすことも本記事では扱いません。

用意するもの

Arnold編 の森カットです。肩越しのEXRは使いません。Enable DOF はオフ のままです。

用途出すもの
2Dフォグの入力Fogオフ のマルチパート EXR(RGBA + AOVs の Z。float・closest)
3D比較(任意)Fogオン の Beauty(別レンダー。Fog ノードにはつながない)

ノード構成

肩越しの Depth Blur と同じ載せ方です。Depth Blur の代わりに Fog を置きます。

graph TD
    Loader_Beauty --> ChannelBooleans
    Loader_Z --> ChannelBooleans

    ChannelBooleans --> Fog
    Fog --> ACESTransform1
    ACESTransform1 --> MediaOut

    %% 比較用フロー
    Loader_Fog3D --> ACESTransform2

    %% 接続線の色設定(黄色=メイン/背景、緑色=前面/Zチャンネル合流)
    linkStyle 0 stroke:#e2cc62,stroke-width:2px;
    linkStyle 1 stroke:#8cc63f,stroke-width:2px;
    linkStyle 2 stroke:#e2cc62,stroke-width:2px;
    linkStyle 3 stroke:#e2cc62,stroke-width:2px;
    linkStyle 4 stroke:#e2cc62,stroke-width:2px;
    linkStyle 5 stroke:#e2cc62,stroke-width:2px;
  1. 新しい Fusion コンプで、Fogオフのマルチパート EXR を2 Loader(Part RGBA と Part Z)
  2. Loader_Z は肩越しと同じく Red → Z(Z → Z も。Alpha は None)
  3. Channel Booleans:黄=Beauty、緑=Z。Color は全部 BG、Aux は Enable Extra channels、To Z Buffer=Z Buffer FG
  4. Channel Booleans のあとに Fog(Fog)
  5. 一番下流に ACES Transform(Vol.1と同じ。ACES 2.0 / ACEScg-CSC / sRGB piecewise / Pre-Divide オン)

緑の Blur Image 入力はつなぎません(ノイズでフォグを揺らす入力。本記事では使わない)。

Fog の操作

公式の Fog ノードは、Z がある絵に距離フォグを重ねます。値は Pick でビューアから拾います(Depth Blur の Sample と同じ)。スライダーの 0〜1 は使いません。Arnold の Z はカメラ距離の float です。

マニュアルの文言は Near Plane=フォグが消える/Far Plane=不透明 です。ただし Arnold の Z(手前が小さく、奥が大きい)でそのとおり手前→Near・奥→Far に Pick すると、手前が霞んで奥が透ける(逆)になります。作例では 入れ替えて Pick します。

やりたいこと触るところ
手前でフォグを消すFar Plane(Pick を手前の幹へ)
奥でフォグを濃くするNear Plane(Pick を奥の木/空へ)
色Fog Color(薄いシアン。Arnold作例は HSV H 180 / S 0.25 / V 1.0 → Fusion では Hue 0.5 / Sat 0.25 / Value 1.0)
全体の濃さFog Opacity

Pick は ACES Transform の前 で行います。ACES の上では Z が落ちることが多いです。色の見え方だけ ACES のあとで見ます。

  1. 左ビューアに Channel Booleans または Fog を出す(ACES Transform ではない)
  2. Fog を選んだまま、Far の Pick を 手前の幹 までドラッグして離す
  3. Near の Pick を 奥の木(または空) までドラッグして離す
  4. 手前が白く奥がクリアなら、Near と Far がまだ逆。入れ替える
  5. ビューアを ACES Transform に切り替え、Fog Color と Fog Opacity で合わせる
  6. 手前の幹は残り、奥の木が空の色に寄る、が目安。キャラも距離に応じて霞むのが正しい結果です。キャラだけ残したいときは Vol.6 Cryptomatte です。本記事ではやりません

Z Scale の初期値は 1 です(Depth Blur の 200 とは別)。Pick しても差が弱いときだけ上げます。作例では数〜10 前後まで触ることがあります。全面が同じ霞なら、先に Channel Booleans 上の Z を確認します。

Fog Color は ACES より前です。見た目は ACES のあとで合わせます。

Arnold 作例の HSV に数字を寄せるなら、Hue だけ単位が違います。 Maya は 0〜360、Fusion は 0〜1 です。

Maya / ArnoldFusion の Fog Color
Hue1800.5(180 ÷ 360)
Sat0.250.25 のまま
Value1.01.0 のまま

Hue 0.18 だと約 65°(黄緑)です。シアンは Hue 0.5。このとき RGB はだいたい 0.75, 1.0, 1.0 になります。ACES のあとでまだ違って見えたら、そこで微調整します。

Arnold の Fog と見比べる

左右のビューアに並べます。

左右
Loader_Fog3D → ACES TransformFog ノードの出力 → ACES Transform

見てほしい差:

  • 3Dは Height が残ると足元の帯が出る。2Dはカメラ距離だけなので、同じ距離なら頭も足も同じように霞む
  • 葉の隙間の奥は、3Dの方が自然。2Dは手前のZだけ見ている
  • 濃さ・色のやり直しは 2D が速い

寄せきれなければ Arnold編 の Fog に戻ります。

(※ここに 2Dフォグ Before/After と、3D vs 2D の比較スクショを挿入予定)

z-depth-2d-fogz_no_fogfog なし2D fog (Z-depth)
z-depth-2d-fog3D-fog-Arnld3D fog(Arnold)2D fog(Z-depth)

この先について

レンダリングとコンポジットを専門でやるのでなければ、Arnold編と Fusion編でここまで理解できていれば、大体のことはできるようになります。この先、押さえておくべきことが出てきたら、そのときに書きます。

関連記事DaVinci Resolve Fusionでノードベースのコンポジット関連記事『手を動かして学ぶ DaVinci Resolve 映像編集パーフェクト教本』 ブックレビュー

コメント

まだコメントはありません