# ParadiSO - a minimal 2D graphics engine

**ParadiSO** was conceived as a heavily stripped down 2D version of my `pixwerx` engine. _ParadiSO_ mimics a minimalistic approach to 2D graphics for educational purposes. It uses modern C++ and a data-driven design, but no ECS.

## Educational

Some arguments for its educational side:

-   mix and match of various concepts and paradigms to write expressive but concise code
-   heavily inspired by Rust code
-   math code is eager evaluation but `constexpr` to compensate overheads
-   hides old-style `C` APIs behind a renovated facade
-   it leans heavily on the STL and its algorithms

## Minimal

Because this engine should show some patterns and design concepts it tries to avoid adding unnecessary bloat.

## Dependencies

ParadiSO comes with batteries included. However, it should be mentioned here:

-   [GLFW 3.3.8](https://github.com/glfw/glfw)
-   [GLAD](https://github.com/Dav1dde/glad)
-   [STB image](https://github.com/nothings/stb)

## Toolchains

ParadiSO is being developed to work on all major desktop systems.

-   Windows (Visual Studio Build Tools 2022)
-   MacOS (clang 14 or later)
-   Linux (clang 14 or later, gcc 13.2.1)

Other combinations might work but are untested.

## Contributors

-   [Tim Götzelmann](https://code.technotecture.net/Timeplex) Windows Build
-   [Robin Rottstädt](https://code.technotecture.net/robin_rottstaedt) Flappy Bird Clone, Bitmap Loader
-   [brxxh](https://code.technotecture.net/brxxh) Flappy Bird Clone