An easy-to-use cross-platform 2D game library for C++ supporting desktop, mobile, console, and web platforms.
JNGL is a cross-platform 2D game library for C++ that simplifies game development across desktop, mobile, console, and web platforms. It provides an easy-to-use API for graphics, input, audio, and window management while handling platform-specific details automatically. The library enables developers to write game logic once and deploy to multiple targets including Windows, Linux, macOS, Android, iOS, Nintendo Switch, and web browsers.
C++ developers creating 2D games who need to target multiple platforms without rewriting platform-specific code. Ideal for indie game developers, hobbyists, and educators looking for a straightforward game development framework.
JNGL offers a simpler alternative to heavier game engines while providing true cross-platform support that includes consoles and web targets. Its minimal API reduces learning curve compared to more complex engines, and the CMake-based build system simplifies multi-platform deployment.
Easy to use cross-platform 2D game library for C++
Supports Linux, Windows, macOS, Android, iOS, Xbox, Nintendo Switch, and web with the same codebase, as detailed in the platform-specific setup instructions, reducing porting effort.
Offers a straightforward scene-based architecture with step() and draw() overrides, simplifying game loop implementation and lowering the learning curve.
Includes built-in handling for fonts, text rendering, images, and audio via libvorbis, minimizing external dependencies for core game features.
Uses CMake with clear configuration examples for each platform, making cross-platform builds manageable and consistent.
Requires installing multiple external libraries like SDL2, libvorbis, and freetype per platform, which can be time-consuming and error-prone, as seen in the lengthy apt-get/dnf/pacman commands.
Lacks built-in physics, networking, or GUI tools, forcing developers to implement or integrate third-party solutions, which adds complexity.
Documentation is split across a wiki, website, and tutorial links, with no single comprehensive guide, making it harder to find specific information quickly.
A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny things. Inspired by awesome-... stuff.
Protocol Buffers - Google's data interchange format
JSON for Modern C++
ASP.NET Core is a cross-platform .NET framework for building modern cloud-based web applications on Windows, Mac, or Linux.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.