2xSaI
From Wikipedia, the free encyclopedia
2xSaI, short for 2x Scale and Interpolation engine, is a digital image processing algorithm for computer graphics. It doubles the images both horizontally and vertically, resulting in a new image with four times as many pixels as the original one. The additional pixels are generated by detecting patterns such as lines and edges and interpolating additional pixels on that basis using techniques such as anti-aliasing and Wu lines. For many types of computer graphics, this results in a sharper and clearer image than standard bilinear filtering.
The 2xSaI algorithm was inspired by the "Eagle" engine in the RetroFX library. It was designed by Derek Liauw Kie Fa, also known as Kreed, primarily for use in console and computer emulators, and it has remained fairly popular in this niche. Many of the most popular emulators, including ZSNES, VisualBoyAdvance, and Nestopia, offer this scaling algorithm as a feature.
Since Kreed released the source code under the GNU General Public License, it is freely available to anyone wishing to utilize it in a project released under that license. Developers wishing to use it in a non-GPL project would be required to rewrite the algorithm without using any of Kreed's existing code.
Several slightly different versions of the scaling algorithm are available, and these are often referred to as "Super 2xSaI", "2xSaI", and "Super Eagle".
[edit] Similar implementations
Several similar interpolating graphics engines exist today. These include the open source family of Scale2x, Scale3x and Scale4x technologies (also referred to as AdvMame2x, AdvMame3x or AdvMame4x) developed in 2001 for use in the AdvanceMAME emulator.
A similar technology called hq3x offers comparable functionality, and is also available as open source. The complete family of algorithms includes inplementations that are optimized for specific sizes: scale2x, scale3x and scale4x.
All of these software projects enable real-time graphics resizing without loss of quality. The sophisticated and highly optimized algorithms provide sharp, crispy graphics without blurring and loss of detail. These techniques have been widely implemented in a vast range of open source emulators, 2D game engines and Game Engine Recreations, most notably in ScummVM, DosBox and AdvanceMAME. They have gained wide recognition with gamers, whom these groundbraking technologies have enabled to revive the gaming experience of the '80s and '90s, but with stunning, smooth graphics (see abandonware).