Is there a good, standard way to do 3D animation? I've been working with Blender, exporting with Collada, and exporting my animations in BVH format, but it's pretty flawed. Namely, I really wish it could be one single file for the whole thing with animations (though I don't care so much about this point. I could handle 1 file for mesh and bones and one file per animation), and Blender's BVH output outputs every single frame independently instead of using proper keyframes (ie. if I have keyframes on frame 1 and 15, BVH instead outputs all interpolations between these keyframes, instead of just giving me the keyframes and letting me interpolate; I shouldn't have to ship a new set of poses to the GPU every frame).
If there isn't anything, I'll just have to output collada plus some hand-made format for rolling into my own format.
Note that I'm doing C++ and OpenGL, so I'm not doing anything that can be solved with a Unity or Unreal solution or anything like that.