A keyframe-based bouncy physics simulator for Flash animations and HTML5 export.

At my previous company, for a long time we mostly made two types of games: ones with cartoonish children's characters, and ones with cartoonish aspects that were decidedly... not for kids.

One thing that they had in common was the need for secondary motion to make our puppet animation more lifelike. This tool was a huge timesaver. Because of the need to run smoothly on mobile, any kind of physics simulation that ran on user devices was out. However, we were able to make HTML5 keyframe animation run well on most devices, so any solution would have to bake to keyframes.

Our authoring environment was Flash, which allows for custom tools to be developed using JSFL, akin to Adobe ExtendScript in its other applications.

This tool allowed the animators to specify parameters in a way that they were accustomed to, (frame interval, bounce amount, decay amount, easing, and individual controls for position, rotation, scale, and stretch). I also implemented a preset save/load system for combinations of the above. Pressing the button would generate keyframes which could then be further manipulated by the animators, and would play in the mobile browser without extra overhead.

A test using characters from Pokelabo's Monster Paradise.