Description
> A digital recreation of early daguerreotype photography.
This shader recreates the visual characteristics of 19th-century daguerreotype plates rather than pursuing modern realism. The rendering pipeline converts the scene into a monochromatic silver-halide luminance representation before applying a physically inspired sepia toning pass and a series of post-processing effects that emulate historical photographic materials, optics, and presentation. The result is a soft, warm image with limited dynamic range, visible film grain, halation around bright areas, and subtle imperfections typical of aged photographic plates.

✨ Highlights
Silver Halide Luminance.
The original scene is converted into a custom luminance space that slightly favors blue wavelengths, reflecting the spectral sensitivity of early silver-halide photographic processes. This luminance becomes the basis for the entire image rather than applying a simple color filter.
Chemical Sepia Toning.
Instead of multiplying the image by a sepia tint, the shader remaps luminance through a three-stage gradient representing dark brown shadows, warm midtones, and cream-colored highlights. This produces a more natural photographic appearance than conventional sepia overlays.
Lens Softness.
A lightweight five-tap blur simulates the imperfect optics of period camera lenses. The effect gently softens fine detail without heavily reducing overall scene clarity.
Halation Around Bright Areas.
Bright regions generate a warm glow using a small multi-sample neighborhood pass. The bloom is threshold-based, causing windows, sunlight, and other intense highlights to bleed softly into surrounding areas in a way reminiscent of historical photographic emulsions.
Compressed Tonal Range.
The shader intentionally limits dynamic range by lifting deep shadows, clipping bright highlights, and applying a custom contrast curve. This reproduces the narrow tonal response characteristic of early photographic plates.
Procedural Silver Grain.
Film grain is generated procedurally using layered noise frequencies instead of static textures. Fine and coarse noise patterns are blended together to imitate clustered silver particles while remaining stable across the image.
Daguerreotype Presentation Layer.
A second post-processing pass recreates the appearance of a mounted photographic plate through several subtle finishing effects:
- radial vignette representing lens falloff and plate oxidation,
- oval presentation mask replacing the rectangular image,
- procedural dust specks,
- randomly distributed vertical scratches,
- horizontal coating banding caused by uneven silver application,
- slow exposure variation that gently changes brightness over time.
These effects are intentionally restrained so they reinforce the historical presentation without overwhelming gameplay.

⚙️ Compatibility
- Built as a GLSL 1.20 shader.
- Uses a simple post-processing pipeline consisting of
compositeandfinalpasses. - Samples the primary color buffer (
colortex0) and declares access to the depth texture, although the current implementation does not perform depth-dependent rendering. - No advanced lighting, shadow, reflections, volumetrics, temporal reconstruction, or screen-space effects are present.
- Designed as a lightweight visual transformation rather than a full rendering overhaul.
🎛️ Configurable in-menu
The current project does not expose shader menu options.
The following parameters are implemented as internal tuning constants and can be adjusted by editing the shader source:
- Grain strength
- Halation radius
- Halation threshold
- Halation intensity
- Lens softness
- Shadow lift
- Highlight clipping
- Contrast
- Vignette strength
- Vignette falloff
- Oval mask softness
- Scratch density
- Scratch intensity
- Dust density
- Horizontal banding strength
- Exposure flicker strength



