This library aims to provide a simple API for 2D graphics applications in C++, targeting multiple platforms: linux, windows, macOS, and Android (and maybe IOS).
Versions 0.0.X will progressively define an API.
Currently OpenGL is the main vehicle for functionality, the Vulkan backend is a shell. Once the API is reasonably solid the Vulkan side will be brought up to date for 0.1.0.
IOS depends on how easy Vulkan is to integrate with an IOS app, we may opt for https://developer.apple.com/metal/cpp/
Doxygen docs are hosted here, in step with main
- Window managent and I/O
- Single window creation
- Mouse and keyboard events
- Frame locking
- Snapping/resizing
- Multi-windowing
- Basic ui (dearimgui?)
- Sprites
- Texture atlasing/texture region support.
- Texture management
- Animations
- Particles
- Textured/untextured
- Dynamics API
- Text
- FreeType font rendering
- Automatic alignment/wrapping
- Shapes
- Circles
- Polygon
- Lines