Oversampling in Fyre
Fyre implements antialiasing using an oversampling technique, much like FSAA on modern video cards. In Fyre 1.0.0, we just chop each pixel into an even 2×2, 3×3 or 4×4 grid of subpixels. Making an analog signal processing analogy, it increases the sampling frequency and adds a low-pass filtering stage after the samples are taken. There is still the potential for very high-frequency features in the original signal to alias, and produce undesirable patterns in the resulting output.
In the current development version of Fyre 1.0, I’ve added ±1 subpixel of spatial noise prior to sampling, which gives us the missing low-pass filter that should keep us below the Nyquist limit. Intial results look good:
Before: Fyre 1.0.0 release, 3x gamma-corrected oversampling on a regular grid
After: Fyre 1.0 SVN, 3x gamma-corrected filtered oversampling