This is my monorepo for portable app development.
My goal is to be self-sufficient in the technique required to write high-quality, portable software. Because this is an ambitious goal, I do currently use the stb libraries for decoding some asset file formats for textures and audio, but there may be a day when I find it personally beneficial to write those myself here in this codebase.
The project is fairly young. It's good enough for me to use in my game-jams and personal software, but it will take time before it's high-enough quality for others to pick it up. As of now, I'd only vouch for the quality of the Windows and Web platforms, as they're where I do most of my work. Linux and macOS builds are very spartan as of now.
- Basic GPU Accelerated 3D lighting
- Animated Sprites
- Flexible Row/Column UI library
- Hot-Reloading for Code
- Hot-Reloading for GPU Shaders
- Hot-Reloading of assets
- Basic Physics capabilities
- Fixed-timestep simulation for portable/networked physics
- Physics debug overlay to visualize colliders
- Gamepad Input
- Games-oriented Audio interface
- Games-oriented key-value persistence API
- Windows
- Web
- macOS
- Linux (Wayland)
- Linux (Embedded)
- iOS
- Android
Platform abstraction layer. Provides windowing and input.
A safe and debuggable interface to OpenGL ES 3.x on all platforms. Named for Google's ANGLE project, which powers WebGL. This package can load functions from either the platform-native OpenGL DLL or Google's ANGLE DLL.