Nodes/ComfyUI-Spektrafilm/Spektrafilm Halation
ComfyUI Node

Spektrafilm Halation

In-emulsion scatter, halation and highlight boost.

By jtydhr88·Created 5 days ago·Updated 5 days ago· 21
Spektrafilm Halation
  • params
  • SPEKTRAFILM_PARAMS
◄override_stock_presetfalse►
◄activetrue►
◄scatter_amount1.00►
◄scatter_spatial_scale1.0►
◄halation_amount1.00►
◄halation_spatial_scale1.0►
◄boost_ev0.0►
◄protect_ev4.0►
◄boost_range0.30►
◄scatter_core_um_r2.2►
◄scatter_core_um_g2.0►
◄scatter_core_um_b1.6►
◄scatter_tail_um_r9►
◄scatter_tail_um_g10►
◄scatter_tail_um_b9►
◄scatter_tail_weight_r0.78►
◄scatter_tail_weight_g0.65►
◄scatter_tail_weight_b0.67►
◄halation_strength_r0.015►
◄halation_strength_g0.005►
◄halation_strength_b0.000►
◄halation_first_sigma_um_r65►
◄halation_first_sigma_um_g65►
◄halation_first_sigma_um_b65►
◄halation_n_bounces3►
◄halation_bounce_decay0.50►
◄halation_renormalizetrue►
Categoryimage/spektrafilm/params

Inputs (28)

NameTypeDefaultDescription
override_stock_presetBOOLEANfalseUse the values below for halation_strength, halation_first_sigma_um instead of the ones spektrafilm picks for the chosen film stock.
activeBOOLEANtrueEnable halation and in-emulsion scatter.
scatter_amountFLOAT1.000–10000High-level scatter strength. 1.0 = full physical scatter, 0.0 = no scatter. Scales the fraction of light that undergoes in-emulsion scattering.
scatter_spatial_scaleFLOAT1.00–10000High-level scatter size multiplier (1.0 = physical defaults). Scales both core and tail sigmas.
halation_amountFLOAT1.000–10000High-level halation strength multiplier (1.0 = physical defaults). Scales the per-channel halation amplitudes.
halation_spatial_scaleFLOAT1.00–10000High-level halation size multiplier (1.0 = physical defaults). Scales the first-bounce sigma.
boost_evFLOAT0.00–10000Maximum highlight boost in stops.
protect_evFLOAT4.00–10000Protected range above midgray for the boost onset in stops.
boost_rangeFLOAT0.300–1Controls how quickly the highlight boost ramps in, from 0 to 1.
scatter_core_um_rFLOAT2.20–10000Sigma of the scatter core Gaussian per channel [R,G,B], in micrometers. Controls fine-scale sharpness loss in the emulsion.
scatter_core_um_gFLOAT2.00–10000Sigma of the scatter core Gaussian per channel [R,G,B], in micrometers. Controls fine-scale sharpness loss in the emulsion.
scatter_core_um_bFLOAT1.60–10000Sigma of the scatter core Gaussian per channel [R,G,B], in micrometers. Controls fine-scale sharpness loss in the emulsion.
scatter_tail_um_rFLOAT90–10000Decay constant of the scatter exponential tail per channel [R,G,B], in micrometers (internally approximated by a sum of Gaussians). Controls extended low-level spread within the emulsion.
scatter_tail_um_gFLOAT100–10000Decay constant of the scatter exponential tail per channel [R,G,B], in micrometers (internally approximated by a sum of Gaussians). Controls extended low-level spread within the emulsion.
scatter_tail_um_bFLOAT90–10000Decay constant of the scatter exponential tail per channel [R,G,B], in micrometers (internally approximated by a sum of Gaussians). Controls extended low-level spread within the emulsion.
scatter_tail_weight_rFLOAT0.780–1Weight of the scatter tail Gaussian per channel [R,G,B] (0-1). Tail weight + core weight = 1. Higher values put more scattered light into the long tail.
scatter_tail_weight_gFLOAT0.650–1Weight of the scatter tail Gaussian per channel [R,G,B] (0-1). Tail weight + core weight = 1. Higher values put more scattered light into the long tail.
scatter_tail_weight_bFLOAT0.670–1Weight of the scatter tail Gaussian per channel [R,G,B] (0-1). Tail weight + core weight = 1. Higher values put more scattered light into the long tail.
halation_strength_rFLOAT0.0150–10000Total back-reflection halation amplitude per channel [R,G,B] (0-1). Typical red channel: weak AH 0.02-0.08, no AH 0.08-0.25. The blue channel is usually near zero.
halation_strength_gFLOAT0.0050–10000Total back-reflection halation amplitude per channel [R,G,B] (0-1). Typical red channel: weak AH 0.02-0.08, no AH 0.08-0.25. The blue channel is usually near zero.
halation_strength_bFLOAT0.0000–10000Total back-reflection halation amplitude per channel [R,G,B] (0-1). Typical red channel: weak AH 0.02-0.08, no AH 0.08-0.25. The blue channel is usually near zero.
halation_first_sigma_um_rFLOAT650–10000Sigma of the first halation bounce per channel [R,G,B], in micrometers. Set by the base thickness (40-80 um for typical cine/still bases).
halation_first_sigma_um_gFLOAT650–10000Sigma of the first halation bounce per channel [R,G,B], in micrometers. Set by the base thickness (40-80 um for typical cine/still bases).
halation_first_sigma_um_bFLOAT650–10000Sigma of the first halation bounce per channel [R,G,B], in micrometers. Set by the base thickness (40-80 um for typical cine/still bases).
halation_n_bouncesINT31–5Number of multi-bounce Gaussians summed in the halation pass. Subsequent bounces use sqrt(k)-spaced widths. Typical: 2-3.
halation_bounce_decayFLOAT0.500–1Per-bounce amplitude decay ratio (rho). Physical range 0.3-0.7. Controls how fast the halation energy falls off between bounces.
halation_renormalizeBOOLEANtrueIf enabled, divide by (1 + sum of bounce amplitudes) so mid-grey is preserved. If disabled, halation is purely additive and subtly lifts shadows as well as highlights.
paramsoptSPEKTRAFILM_PARAMS—

Outputs (1)

NameTypeDescription
SPEKTRAFILM_PARAMSSPEKTRAFILM_PARAMS—