Simple DirectMedia Layer.
https://en.wikipedia.org/wiki/Simple_DirectMedia_Layer
Cross platform library for user input (mouse, keyboard, touch), graphics, sound, haptics. Basically a huge wrapper on top of tons of incompatible APIs.
There is some support for hardware acceleration it seems: https://www.libsdl.org/release/SDL-1.2.15/docs/html/guidevideoopengl.html
Started by venerable Loki software https://en.wikipedia.org/wiki/Loki_Software
Widely cross platform: Windows, Mac, Linux, Android, iOS.
Widely popular. Steam for Linux embeds it, and the lead dev is working for them as of 2016. 2014 Steam talk https://www.youtube.com/watch?v=MeMPCSqQ-34
- issue tracker https://bugzilla.libsdl.org
- unofficial GitHub mirror: https://github.com/spurious/SDL-mirror
2.0.4: with ~/.Xmodmap
key remapping, SDL_GetKeyboardState(NULL)
+ SDL_SCANCODE_ESCAPE
does not work (uses old key) while SDL_PollEvent(&event)
+ SDLK_ESCAPE
does.