Intel, with a move that will likely take a little wind out of AMD’s heterogeneous computing sails, has detailed a new form of anti-aliasing that can be done in real time on the CPU. Called morphological anti-aliasing, or MLAA, it is actually nothing like the anti-aliasing you’ve come to expect from MSAA or FSAA.

Instead of rendering a larger image and downsizing, MLAA is basically a filter that is applied to every frame created by the game or application. In a similar way to the depixelizing pixel art algorithm, MLAA blends edge pixels with their surrounding areas. To do this, the MLAA algorithm looks for Z- and U-shaped edges, and then breaks them down into L-shapes, blending the pixels between the resultant L shapes.

It’s easier to understand if you look at the picture below. Basically, where L shapes coincide (as with the marked L and Z shapes on the left), they are blended together.



The key to MLAA is that it doesn’t require heavy duty manipulation of graphical elements — it can be done procedurally and dumbly without any knowledge of the scene, light sources, alpha values of materials, and so on. This means that a pipeline can be created where the graphics hardware churns out standard frames, and the CPU handles post-processing. Post-processed frames are handed back to the GPU for any finishing touches (like overlaying the UI), and then they’re sent to the display. The result of this pipelined parallelism is extraordinary: unlike MSAA which scales linearly with scene complexity, MLAA always takes exactly the same time for each frame. It might take 4ms to apply the MLAA filter to 1280 x 800 frames and 11ms for 1920 x 1200 — but it’s always the same number of milliseconds.

That’s the key to MLAA: its performance is completely predictable for a given resolution. For low-power CPUs and GPUs found in mobile phones and smartphones, and also in consoles that don’t keep up with bleeding edge discrete components in PCs, this is a huge development. MSAA was never going to be easy in mobile solutions, but MLAA offers an easy way to abolish jaggies at a fraction of the power and dollar cost. Likewise, MLAA could be the development that finally brings reliable anti-aliasing to console gaming. Ultimately, with CPUs and GPUs now combined into single chips in mobile devices, with AMD moving towards its Fusion architecture, and with Intel publishing this paper, it seems very likely that next-generation graphics solutions will feature extensive interaction between CPUs and GPUs.

Finally, a word about image quality: MLAA lacks subpixel precision, but is comparable to MSAA; MLAA also lacks the graphical glitches that sometimes arise with MSAA. Check out these images from Hot Hardware — and then head along to Intel’s article on MLAA. Intel also has some code samples for developers, if you want to give it a go.



Battlefield: Bad Company 2 – no anti-aliasing



Battlefield: Bad Company 2 – morphological anti-aliasing (MLAA)