Wednesday, 15 October 2014

Cheapest anti-aliasing ever!

Did you play Gran Turismo on PSP? If yes, you may know, that games uses a very simple, efficient, and acceptable quality anti-aliasing method. What does it do exactly? It moves the camera in every second frame one pixel right and up. That's it!

It's easy to recreate in Unity and can work on mobile without any performance issues. Don't forget, it doesn't replace a real AA method, but better than nothing.

Of course it has some drawback like it needs to run with a stable 60 FPS (or 120 or maybe it would look OK with 50, but it needs to be stable and very important, it must be synced to the screen's refresh rate or it may look bad). Also it makes the graphics a little bit blurry. It does affect everything, not only the edges.

Some images from Polyphony Digital's Gran Turismo for PSP. Note that the screenshots were captured from PPSSPP emulator at native resolution (480x272).

Camera shaking AA in slow motion.

Frame 1

Frame 2

Combined from frame 1 and frame 2. It almost look like this at 60 FPS. It's still jagged a little bit, but way better than without this method.

Car screenshot zoomed to 300%. Check the edges of the car.