AntiAliasing
A defining property of fractals is that no matter how much you zoom in on a fractal, the perceived level of detail does not change. Suppose you pick two nearly adjacent points in a fractal image that was prepared at some specific level of zoom. As you zoom in and investigate the line between those two points, you may find that the Escape Count values vary linearly from one end point to the other endpoint. However, because this is a fractal image, for some choices of endpoints the graph of Escape Count values between the endpoints will be infinitely squiggly. When we render a fractal at a specific zoom level, we calculate Escape Values for the points on an evenly spaced square grid. If the grid is being calculated over a sufficiently squiggly region of fractal space, then the values calculated at adjacent grid points can appear to bear no resemblance to one another. The image can look like white noise.
There is no complete solution to the apparent 'noisiness' of a rendered fractal image. However, there are a variety of ways to mitigate the problem. The Quasi Log Escape Transform can help. Our best tool for mitigating this is our antialiasing filter( ). This filter takes data precalcuated at a resolution from 3 to 6 times greater than the current display resolution and 'downsamples' this high resolution image data to the current display resolution by weighted averaging. If your current display window is 2000x1000 pixels, then the antialiasing filter is going to process a source image between 6000x3000 and 12000x6000 pixels. Fred uses your GPU to perform this calculation if it can find a GPU. If no GPU is available, Fred will just use your CPU. The CPU does a fine job, but it takes longer.
Because antialiasing can take a long time, there is a preference setting for its 'stickiness' . If no GPU is available, then the antialiasing behaviour is 'not sticky', which means that you have to manually apply antialiasing every time that the image changes. If a GPU is availabe, then antialiasing behaviour defaults to 'somewhat sticky'. This means that antialiasing is applied when the Viewer is not busy. The Viewer is busy when you are panning or zooming or animating the palette. The Viewer is also considered to be busy when the mouse button is depressed. Note that after the Viewer stops being busy, there can still be a delay of several seconds before the image shows up as antialiased because of the disk IO and processing time associated with antialiasing.
The antialiasing requirements are a big incentive to run Fred's Fractal Factory at greater zoom depths. You need a max log2(zoom) factor about 2 greater than the currently displayed log2(zoom) to provide the antialiasing filter with enough data to work properly. This is also a big issue with printing. Fred tries to print antialiased data at 300 dots per inch. This means that the raw data sent to the antialiasing filter when printing corresponds to between 900 and 1800 DPI. If enough data is available to print at 300 DPI with antialiasing, then in Print Preview, the Print Quality indicator will say 'GOOD'.
Observe the following fractal image without and with antialiasing: