Only about 2° of your visual field is sharp. The rest is
peripheral: blurred, desaturated, crowded. Scrutinizer renders that periphery so
you can design for the glance.
FOVEAL R 92px
ECC 0.0° · ACUITY 100%
move cursor to fixate
2° The mechanism
Half your primary visual cortex serves the central 10°.
Scrutinizer models how spatial resolution, colour sensitivity, and crowding
change with distance from where you're looking, approximating the falloff your retina and cortex impose.
01
Cortical magnification
Resolution drops with eccentricity along a log-polar mapping. Scrutinizer renders
this falloff with hardware MIP-chain pooling. Each level halves spatial
resolution, approximating how receptive fields grow with distance from fixation.
$$A(E)=\dfrac{A_0}{1+E/E_2}$$
E₂ ≈ 2.3°: the eccentricity where acuity halves. The demo above runs this exact curve.
02
Chromatic pooling
Colour perception narrows in the periphery: red–green sensitivity falls much faster
than blue–yellow (Mullen & Kingdom 2002), and the parvocellular pathway loses resolution with eccentricity. Scrutinizer models
this as selective chrominance pooling in Oklab, preserving luminance while colour
bleeds and shifts.
$$S(E)=S_0\,10^{-k_e E}$$
kₑ: eccentricity decay in castleCSF's form, calibrated to Bowers et al. 2025. Red–green 0.085 vs blue–yellow 0.014.
03
Visual crowding
In the periphery, objects stay visible but are hard to identify. Flankers
merge with targets. Scrutinizer renders this as position jitter scaled to integration-field
size, a coarse stand-in for the summary-statistic pooling of the Texture Tiling Model.
$$s_c \approx \tfrac{1}{2}\,E$$
Bouma's law: flankers within ~½ the eccentricity merge with the target
Resolution collapses with eccentricity. The periphery blurs while the fixated centre stays sharp.
Check whether your primary CTA and key content hold up under peripheral degradation
before you ship. Fixate away from the main button or heading and check whether it
remains distinguishable from surrounding content.
UX practitioner
Scan paths without an eye tracker
The Restricted Focus Viewer paradigm, modernised:
see where attention lands and where peripheral clutter competes with the task. The
window is biologically motivated. Earlier restricted-focus tools typically used a plain Gaussian blur.
Software team
Inspect live pages for visual clutter
Point the open-source browser at your real app and watch it through a simulation of human perception,
with live congestion scores, saliency, and peripheral falloff on the page as it ships.
The browser and rendering pipeline are open source.
HCI / vision researcher
Export screenshots with simulation settings
Eccentricity-dependent pooling, Oklab chromatic degradation, and density-gated crowding,
all parameterised. The full pipeline config is embedded in each screenshot export, so a
result can be reproduced.
From the blog
How Scrutinizer models peripheral vision
These posts explain the models behind Scrutinizer, how they're implemented,
and how the results compare with published research.
A standalone browser with the full foveated rendering pipeline. Browse any site with real-time
peripheral simulation, saliency maps, congestion analysis, and mobile device emulation.
A 30-second calibration that measures your perceptual foveal radius in pixels at your current
viewing distance. The demo above uses a fixed default radius.