A C99 cross-platform 2D game library with deferred/forward rendering, collision detection, audio, and asset management.
Astera is a cross-platform 2D game library written in C99, designed to provide essential tools for game development such as rendering, collision detection, audio, and asset management. It focuses on portability, supporting Windows, Linux, macOS, and BSD, making it suitable for developers targeting multiple operating systems.
Game developers and hobbyists working on 2D projects who need a lightweight, portable library in C without the overhead of larger engines.
Developers choose Astera for its simplicity, cross-platform support, and C99 foundation, offering core game development features without complex dependencies or licensing restrictions.
A C99 Cross Platform 2D Game Library
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Explicitly supports Windows, Linux, macOS, and BSD with automated build scripts, ensuring games run seamlessly across major desktop operating systems.
Built with a focus on simplicity and no bloat, using standard C99 for maximum control, minimal dependencies, and easy integration into existing C projects.
Includes essential systems like deferred/forward rendering, collision detection, 3D audio, and UI, covering key aspects of 2D game development out of the box.
Supports both deferred and forward rendering techniques, allowing developers to optimize graphics performance and visual quality based on specific game needs.
Only targets desktop operating systems with no mention of iOS or Android, making it unsuitable for cross-platform mobile game development without significant porting effort.
Requires CMake and custom build scripts, and the wiki-based build guide may be insufficient for developers unfamiliar with C toolchains or cross-platform compilation.
Lacks detailed API references, tutorials, or examples beyond a basic build guide, which could hinder learning and slow down development for new users.
As a library rather than a full engine, it doesn't provide editors, debuggers, or asset pipelines, relying on external tools and manual implementation for game development.