Hello, All! This is my second posting here, so bear with me… I’m not sure how much I should assume people know, so I will try and go into a reasonable level of detail about my problem.
I have created custom file formats for mesh and animation data that are exported from Blender for use by a home-made (yet sophisticated) OpenGL Graphics Engine. The model format has been working very well with the exception of SDL texture coordinates (not my biggest problem), but the animation format has been facing many more serious challenges. To outline them in list form:
Blender, evidently, stores translation and quaternion data for each bone locally (as it should be). When I export the animation data (for each bone, the name, position, quaternion, and size), I grab the raw data from Blender and stick it in the file. When I load the data on the other side, though, I do not know how to apply parenting properly, and so the mesh appears oddly deformed (not beyond recognition). What are the mathematics for combining quaternions to achieve a deeper or shallower angle (like 45 degrees plus 15 degrees, but with a condensed matrix ).
I did not think it would be an issue with quaternions, but it seems as though OpenGL’s alternate coordinate system (<->x, ^-Vy OGL; <->x, ^-Vz Blender) has altered some of my animations. A rotation that takes place on the y-axis in Blender has become a rotation on the Blender z-axis, OGL’s y. I have a difficult time checking this because I cannot sight-read quaternions. Are there any suggestions?