You can export animations to a txt file format:
// List of objects and their hierarchy, more dots means deeper group nesting
// (Use "Anim/Unique Names" to rename all your objects with a unique name each to avoid collisions)
Scene
.Cube1
..Cube2
// List of sub-animations called Clips
Clips
// Name of Clip
c Clip1
// Starting frame number
s 0
// Number of frames in clip
n 24
Matrices
// Object Name
o Cube1
// Inverse Bind Pose matrix - transform from world space into bind pose
i 1. 0. 0. 0. 0. 1. 0. 0. 0. 0. 1. 0. -1.26e-002 2.73e-002 0. 1.
// Matrix for each frame
m 0.707 -0.707 0. 0. 0.707 0.707 0. 0. 0. 0. 1. 0. 1.26e-002 -2.73e-002 0. 1.
// Note: Curvy uses 'Y-Up' rather than 'Z-Up' so you may need to swap Y & Z to make it work as expected in your engine
So for each frame you multiply the vertices by Inverse Bind Pose * Frame Matrix to get the final animated position