I'm happy to announce that Chickadee 0.3.0 has been released! It has been more than a year and a half since the last release so I figured it was about time!
Chickadee is a game development toolkit for Guile that is built on top of SDL2 and OpenGL. Chickadee aims to provide all the features that parenthetically inclined game developers need to make 2D (and eventually 3D) games in Scheme. Chickadee is not a game engine, however!
The following features are supported:
Generic fixed timestep game loop
- Plug in any input/output system!
Built-in SDL + OpenGL game loop implementation
- Get started writing games quickly!
- 2D/3D rendering engine via OpenGL
- Keyboard/mouse/controller input via SDL
High-level OpenGL interface
- Sprites
- Shapes
- Fonts
- GLSL shaders
- Framebuffers
- Tiled maps
- Buffer objects and all that low-level goodness
Math
- Vectors
- Matrices
- Quaternions
- Axis-aligned bounding boxes
- Easing functions
- Spatial partitioning
- Generic A* path finding algorithm
Scripting
Coroutines
Time-based scheduling
Tweening
Here's a summary of the major changes:
Old game loop replaced with generic one that can support any backend
SDL + OpenGL game loop included that is similar, but different, to the default game loop in 0.2.0
Errors within the game loop can be handled by a user-defined procedure
Tweening support added to
(chickadee scripting)
moduleQuaternions added via
(chickadee math quaternions)
moduleA* path finding added via
(chickadee math path-finding)
moduleTiled map loading and rendering via
(chickadee render tiled)
moduleCubic bezier curves added via
(chickadee math bezier)
moduleGrid-based 2D spatial partitioning added via
(chickadee math grid)
moduleBetter support for systems without OpenGL 3.0 capability
Better support for systems without vsync capability
Reader syntax for 2D/3D vectors
Much more API documentation added to the manual
Support for Guile 3.0
tarball: https://files.dthompson.us/chickadee/chickadee-0.3.0.tar.gz
signature: https://files.dthompson.us/chickadee/chickadee-0.3.0.tar.gz.asc
See the Chickadee project page for more information.
Bug reports, bug fixes, feature requests, and patches are welcomed.
Happy hacking!