Choreograph is still aliveBack in 2023 I started writing a game -- which is still under development as I'm dedicating very little time to it -- and at a certain point I found myself in need of animating the movement of a few rectangles on the screen. Having decided to code the game in C++ and to use just libSDL as a base (in order to keep the game as portable as possible), I started looking around for existing solutions which would do just what I need: animating points between two values, while being display and platform agnostic.
Choreograph
I was happy to find the
Choreograph library, which promised to do exactly what I needed, without bringing in any more dependencies. Integrating it in my project proved to be extremely easy, and it took me a few minutes to implement the animation.
All was perfect, except one thing: the last commit to the repository happened in 2016. I submitted a couple of minor fixes, and there was no reaction. Even though I was very happy with the library, I decided not to get tied to a project that was apparently dead, so I dropped this integration and instead wrote my own implementation -- which was just enough to fill my immediate need, but was unlikely to be reusable as a generic animation framework.
Over time, though, several times I happened to bump into a situation where I would have liked to add some animation, but given that I was not really happy with my home-brew solution, I always held myself back from this desire and focused on more substantial issues: so, no animations. In March this year I decided to write to the author of Choreograph to check whether he was still interested in maintaining the project, but got no answer.
A maintained fork
Well, one cannot certainly accuse me of being impatient in this case, since I waited a few more months before finally deciding that I find Choreograph to be too convenient to let it just rot. Here is my
maintained (for how long, we'll see!) fork of the Choreograph project; so far I've added:
- A few commits to fix compilation warnings
- Recipes for the Meson build system, to make it
easier to build the project in Linux - CI via GitHub actions
- Updated the tests and the samples to build without libCinder
I'm not yet able to announce what I'm going to work on next in Choreograph; this will become clear as I'll be using it more. For the time being, it's enough for you to know that such a project exists, and I'll be happy to accept contributions in the form of code and ideas.