for learning purpose of 3d animation, I picked blender to study. So far I've exported .blend to .lua file that contains mesh data, bones, and animation data. My animation data is fcurve arrays based on keyframe. I am trying to load this into an engine and run it. I want to apply fcurve values on bones, however what I get is smashed animation. I am extra newbie to this, and I want to know what fcurve represent, how it should be used, and how I need to process the values to apply to bones. Without setting fcurve to bones, it draws the model as I expected. Thank you for the help in advance.
Blender's fcurve contains a collection of keyframed values, to calculate the value used on a frame in between two given keyframed values a bezier curve is used, each keyed point contains a left and right handle position that defines how the curve is calculated between keys. If you are only exporting the points listed in the fcurves data then you are missing the data for the frames in between.
You can have blender calculate the value for each keyframe instead of caclulating the curve yourself.
for f in range(100): val = fcurve.evaluate(f)