DOF

AIと読む
全ドキュメントを1ファイルで(llms-full.txt)
DOF

深度テクスチャから錯乱円(CoC)を計算し、ボケた絵とシャープな絵を混ぜる被写界深度ノードです。CoCは saturate(|線形深度 - Focus Distance| / Focus Range) なので、合焦面から離れるほどボケます。処理はCoC付きの1/2解像度ダウンサンプル → セパラブルブラー往復1回 → 合成の3パスです。

  • Focus Distance — 合焦距離。初期値30。最小0.01でガード(Focus Distance 入力 / focusInput
  • Focus Range — この距離だけ離れるとCoCが最大になります。初期値10。最小0.001でガード(Focus Range 入力 / rangeInput
  • Blur Strength — ぼかしのサンプル間隔倍率。初期値2。負値は0として扱われます(Blur Strength 入力 / blurInput
  • Camera — near/farを線形深度の復元に使います

Depth Textureが未接続だと素通しになります。 Renderノードの深度出力を繋いでください。

Camera入力が未接続(または無効)のときは既定カメラ値にフォールバックします(near=0.1 / far=1000)。実際のカメラのnear/farがこれと違うと、Focus Distanceの数値と実際の合焦位置がずれます。

合成時は自分のCoCとぼかし側のCoCの大きいほうを採用するので、手前のボケが背景側へ滲み出します。

出力のアルファは常に1に固定されます。In入力を外すと出力は黒でクリアされます。

出力はHDR対応で、解像度は入力と同じです。

入力ポート

Port ID
Render TextureRenderTexture
Depth TextureRenderTexture
CameraCameraDataInput
Focus Distancefloat
Focus Rangefloat
Blur Strengthfloat

出力ポート

Port ID
Render TextureRenderTexture

スクリプトから設定可能なメンバー

パス
focusInputfloat
rangeInputfloat
blurInputfloat

Synapse Apps(スクリプティング)

await synapse.modules.create({ type: "DOF" })

同じページを参照しているページ