Blitwizard is a cross-platform DirectX/OpenGL/Software 2d engine for Lua based on SDL 2, released under the permissive zlib license. It is written in C and contains graphics, physics, input device (keyboard/mouse) and audio access, combined with various other template functions for various game development scenarios.
It supports threaded texture loading for streaming game content and switching the drawing mode (resolution, fullscreen/windowed, renderer (OpenGL, DirectX, ...)) on-the-fly without restarting the game or reloading any of the textures. Scaling/rotation is supported and as easy to use, life-like physics (based on Box2D).
Optional FFmpeg support for audio allows a large range of audio formats to be played, otherwise at least .ogg is supported natively.
Blitwizard can be compiled as single binary with no dependencies (except the optional FFmpeg dlls) and therefore the engine is very trivial to ship.
Blitwizard is still in development, but already usable despite some issues which will be resolved on the road to the next releases. Simply check out the homepage where you can always get the latest source code from the repository
The freshly released Blitwizard version has scaled/rotated sprites, physics simulation, realtime-style based on Box2D suited for realtime game action, and easy networking based on network streams. Also there is now a Mac OS X binary available :-).
A more detailed look at the new features.
The new network streams with intuitive, non-blocking callback-based interface allow TCP clients and servers for network games, or ingame http or irc functionality.
The documentation includes examples for both fetching a document using HTTP, and connecting to IRC and sending a chat message there.
The combination of rotated sprites and physics allows for falling boxes, colliding physics particle effects and other neat things. The physics integration is still incomplete (no hinges/connections so far, among other things), a next release shall then complete the integration.
Next steps are getting libFLAC and FFmpeg-support to work for diverse audio format support, and improving the physics integration. SSL for network would be also nice to have, but I still have to figure out how to do that best.
The Android port is also not usable, there is still a lot of work to do here.
So how do you get started? Since Blitwizard uses Lua, you don't need anything else except Blitwizard and a text editor for your source code - no additional compiler, development environment, tools or anything else needed (except for audio/image creation tools you will want to use to create your game media). Fetch Blitwizard from the website now!