filmr

0.7.0 - 2026-04-12

v0.7.0 Apr 12 2026 at 14:13 UTC

✨ Features

  • Spectral: Add CIE 1931 XYZ colour matching functions and D65 illuminant lookup tables (380–780nm, 5nm, 81 bins).
  • Spectral: Replace blackbody approximation for D65 with CIE standard data.
  • Spectral: Replace Gaussian camera sensitivities with CIE XYZ CMF × XYZ→sRGB matrix.
  • Film Layer: Add multi-layer film structure model (FilmLayerStack / FilmLayer) with refractive index, thickness, spectral absorption, and scattering coefficients.
  • Spectral Engine: Add full-spectrum propagation engine — per-wavelength per-layer light transport with Beer-Lambert absorption, Fresnel interface reflection, and forward+backward (halation) passes.
  • Core: Add SimulationMode::Fast / Accurate — Fast uses existing 3×3 matrix path, Accurate uses full-spectrum engine.
  • Film: Add layer_stack: Option<FilmLayerStack> to FilmStock for custom per-preset layer structures.
  • UI: Develop button triggers Accurate mode (full-spectrum); preview stays Fast (matrix).
  • Spectral: Add scattering spatial diffusion — Gaussian blur derived from physical layer scatter coefficients.
  • Spectral: Add interlayer interimage effect (DIR coupler developer inhibition matrix).
  • Presets: Calibrated layer stacks for Kodak Portra 400, Kodak Tri-X 400, Fujifilm Velvia 50.
window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date());gtag('config', 'G-ZCH0DFY43H');