space-shooter.c is a cross-platform, top-down 2D space shooter game implemented entirely in standard C11, designed as a low-level exploration of game development without relying on external frameworks. The project deliberately uses only platform-native libraries, such as Win32 on Windows, Xlib on Linux, and Emscripten for web builds, to demonstrate how games can be built directly on system APIs. It supports rendering through OpenGL and handles audio and input using platform-specific solutions, providing a comprehensive example of system-level game architecture. The codebase is structured into clear layers, including platform, game logic, and rendering, offering educational insight into how these components interact in a real-time application. It is designed to compile and run across multiple environments, including desktop and web browsers via WebAssembly.
Features
- Cross-platform support (Windows, Linux, Web via WebAssembly)
- Pure C11 implementation without external frameworks
- OpenGL-based rendering system
- Platform-specific audio and input handling
- Layered architecture (platform, game, rendering)
- Educational documentation of system-level design