I'm implementing a custom runtime for MOAI SDK. Generic lua runtime performs all the math in lua, which is obviously a bit heavy, so I've decided to make a specialized MOAI version - it is also written in lua.
Another option could be integrating generic C runtime into Moai core as is, but it won't fit into Moai architecture nicely.
MOAI itself have pretty good feature set for animating things: there are already animation curves with different easing types (but no bezier, so I've just create 10 more keys with linear interpolation between them), action tree and dependency graph.
So, my runtime just creates a skeleton, where Bones are MOAITransform objects that are properly parented. Slots are MOAIProps (sprites), they are bound to corresponding bones. Texture info and rect is stored in Attachment which is just a lua table. Animation object is subclassed from MOAIAnim, all curves and keys gets created at load time.
Currently it is implemented as flower-extension (single file): https://github.com/Vavius/Hanappe/blob/ ... /spine.lua
It's a rough prototype, a lot of work to be done - skins, animation blending, some samples.
Performance increased dramatically. On my iPhone5 generic lua runtime can show 8 dragons at 60 fps and 12 dragons cause drops to 30-50 fps. Custom runtime renders 40 dragons at 60 fps.