Olive.c is a simple graphics library that does not have any dependencies and renders everything into the given memory pixel by pixel.
Below is a bunch of demos written in C using this library compiled to WebAssembly. Every frame of the animations is generated pixel by pixel on CPU without using any special GPU APIs like OpenGL, Metal, etc.
The source code of the library and the demos is available on GitHub: https://github.com/tsoding/olive.c
Rainbow triangle together with a transparent circle. Source: demos/triangle.c
A bunch of 3D dots projected onto your 2D screen plus a text with a builtin monospaced font. Source: demos/dots3d.c
Resizing images on the fly. Source: demos/squish.c
Rotating rainbow triangle in 3D. Unlike 3D dots above this is a solid shape. Source: demos/triangle3d.c
Textures by MELLE. Source: demos/triangle3dTex.c
Design by rexim. 3D model by kolumb. Source: demos/cup3d.c
Famous Utah Teapot. Model by Standford University. Source: demos/teapot3d.c
(I have no idea why it runs with a reasonable FPS)
Penger - The Mascot of Tsoding Discord Community. The character design by LainLayer. The model by Max-Kawula. Source: demos/penger3d.c