deadfrog-lib
zigzag
deadfrog-lib | zigzag | |
---|---|---|
2 | 2 | |
13 | 11 | |
- | - | |
8.1 | 10.0 | |
9 days ago | over 1 year ago | |
C++ | Zig | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
deadfrog-lib
-
Minimal Cross-Platform Graphics
I think the Xlib dependency would prevent compilation as an αpε. I put some effort into doing X11 from scratch (without Xlib or Xcb) to make this possible. Or at least, my aim was to be able to build with musl libc and generate a single executable that would run on many different Linuxes.
https://github.com/abainbridge/deadfrog-lib/blob/master/src/.... It is janky though.
-
EndBASIC
Having a bitmap in normal system memory that we can write to the window or screen is easy though and should be more widely supported. Once you've got that you can write pixels, lines, rectangles, mandlebrots etc very easily and building up to a GUI toolkit is also quite easy and fun. This mechanism is fast enough for pretty much everything other than games on modern hardware.
I consider GPU acceleration a form of premature optimization - it adds complexity unnecessarily in many cases.
Here's my library for doing that on Windows and X11. https://github.com/abainbridge/deadfrog-lib
zigzag
-
Minimal Cross-Platform Graphics
If anyone is interested in getting into zig, we made a library that has similar goals (and can run on WASM in the browser): https://github.com/ibebrett/zigzag
- ZigZag – A Zig game framework inspired by pico8 that runs on the web and native
What are some alternatives?
minifb - MiniFB is a small cross platform library to create a frame buffer that you can draw pixels in
Vrmac - Vrmac Graphics, a cross-platform graphics library for .NET. Supports 3D, 2D, and accelerated video playback. Works on Windows 10 and Raspberry Pi4.
tigr - TIGR - the TIny GRaphics library for Windows, macOS, Linux, iOS and Android.
olive.c - Simple 2D Graphics Library for C
pixie - Pixie - a minimal, cross-platform pixel framebuffer library for Windows and macOS.
glcv - Simple OpenGL canvas/event handling library
bubbleos
lite - A lightweight text editor written in Lua