Thinking about a simple animation system for the PlayDate. Since I already have a .icn renderer I thought would be nice to base it on that. First step: Writing a custom Aseprite exporter to dump all animation frame data and some tags for the frame where a frame starts/stops.

Took inspiration by @mario_afk exporter [1] which was helpful to understand how to write my own, since I never did any Aseprite scripting before.

[1] https://amano.games/devlog/making-a-pinball-game-for-the-playdate-part-04-the-image-format
#DecemberAdventure #PlayDate

Loading the sprite data to the Playdate is trivial, and I can now code different animations for the spritesheet depending on the state of a given entity.

At the moment is a bit basic, but works as expected for this simple case.

#DecemberAdventure #Playdate

Ok this is more like it, a functional animation system where each frame can have variable timings. Plus you can see multiple animation states.

Different looping animation modes: No loop, forward loop and ping-pong. Probably should also include the backward versions for those huh?

#DecemberAdventure #PlayDate

@bd This looks great! How do you like development for the Playdate? I've been curious in the console for a long time, but haven't made the leap in getting one just yet.
@mtthgn it's fun, but my experience may not be very representative as all the dev I did with it was in C and now on my own programming language Oni. I like working with limited platforms and this one has a nice SDK.

@bd oh, awesome! Is Oni the new name for "badlang," or a different language?

I've enjoyed seeing your posts on developing that language here. Perhaps one day I'll use it to make something for the GBA!

@mtthgn Yeah it's the release name for the language :)

You can find it here: https://sr.ht/~badd10de/oni/

@bd something I have been doing recently is to use cute_ase.h to parse the aseprite file on my asset converter cli tool.

It doesn’t make a lot of sense if it’s only one type of asset you are converting but maybe helps later on :)

https://github.com/RandyGaul/cute_headers/blob/master/cute_aseprite.h

cute_headers/cute_aseprite.h at master · RandyGaul/cute_headers

Collection of cross-platform one-file C/C++ libraries with no dependencies, primarily used for games - RandyGaul/cute_headers

GitHub
@mario_afk thx I'll keep it in mind, the scripting is working fine for now, but perhaps in the future I'll reach for it ;)