RetroArch is most popularly known for being a program with which you can play many emulators and games, which have all been customized and tailor-ported to the libretro API.
It is designed to be fast, lightweight, and portable. It tries to be on the cutting edge of technology in terms of supported technology as well as trying to be as backward compatible as possible, a paradoxical goal if any. It has features few other dedicated games / emulators have, such as:
- Real-time rewinding and GGPO netplay
- Libretro’s serialization support allows features such as rollback based netplay to be easily implementable. It also allows you to rewind your games in real-time.
- Multi-pass shaders (up to 8-pass)
- It was one of the first programs out of the gates to have frontend shader support to begin with. RetroArch has its own shader spec that is being extensively used and implemented by various other programs unrelated to RetroArch/libretro.
- It is also one of the only programs of its kind that supports up to 16 shader passes along with up to 128 shader parameters supported. You can find many impressive shaders that can enhance the in-game look of a game.
- Game aware shading
- Remote networked sound support
- A built-in GUI/OSD system
- RetroArch can change its entire appearance with a few button clicks. It can turn into a low-resolution but functional UI (RGUI) into a full-fledged XMB clone, and so on.
- Impeccable Linux support
- RetroArch was first out of the gates in many respects with support for Wayland, DRM/KMS, and many other graphics technologies which are still not standard in many Linux programs. It is designed to be as dependency-less as possible while also making it possible for custom-made versions of RetroArch to be made with specific support for several new APIs.
- Unlike many other programs, Linux is not treated as second-class citizen but as first-class citizen.
- Impeccable backwards compatibility
- How many other Mac programs support PowerPCs, 32bit and 64bit Intel Macs all at the same time ?
- Libretro/RetroArch keeps platforms alive with new content long after they have passed their expiration date. See PlayStation3, PSP, Wii, Gamecube, etc. The list goes on.
- A cross-platform game console
- The goal for Retroarch is to have a game console platform unrestrained by platform boundaries and architecture differences. To this end, it strives to support as many platforms as possible.