i am sharing a lightweight graphics library which use the Linux framebuffer (non-accelerated), it has full multi-core support (which was the main goal), it is mainly tested and developed on the Raspberry PI 3B.
* Optional : Full parallelism, execute graphics code on multiple CPU cores with a single function
* Displaying and loading PNG images (provided by LodePNG library)
* Bitmap fonts for drawing texts
* Bare-metal graphics primitive (pixels, rectangles, lines, polygon)
* Double buffering (with optional page flipping mechanism)
* 16, 24, 32 bpp support
* Easy to do fading and screen-clearing related effects (motion blur etc.)
* Framerate tracking & display for all cores
* Lightweight enough to be hackable; adapt to all kinds of needs (and still support parallelism easily)
Here is a small screenshot of the full example with graphics code running on 3 cores on a Raspberry PI 3B (320x240) :
This example feature an unoptimized fullscreen per pixels perlin noise with texture mapping and scrolling.
Fullscreen texture-mapped and animated tunnel made of 40800 2px rectangles with motion blur (unoptimized)