Collada addBoneAnimation discarding bone rest positions?

It seems to me that addBoneAnimation() in the class BoneAnimation somehow “forgets” about a bone’s initial position when adding another animation. Could this be a bug, or am I missing something?



Here’s the problem:



When exporting collada skeletal animations from blender and then importing them into jME (using Fungi’s patch), the skeleton looks perfectly right when not animated.

With animation enabled, I can always only have one bone animate at the same time. This is because every bone’s animation gets exported as a separate BoneAnimation.

So to see them all at the same time, I have to add them all to a “master” BoneAnimation, call BoneAnimation.optimize(), and run the master animation.

Unfortunately that seems to cause all the bones to start in the same location, not in their original rest position.



To clarify:

  1. export skin+skeleton from blender, don't use animation -> works
  2. try a single animation -> works
  3. try the method above, without optimizing: -> bones seem to animate ok (rotation-wise), but all are in the same position.
  4. like 3., but with optimizing: same result as under 3.



    Screenshots and sample dae file will be posted shortly.

    EDIT: turns out the problem is more complex than I thought, I managed to put together a simple scene that works as expected. Possibly it's all the blender collada exporter's fault…

Its possible that jme wants absolute data and blender gives it relative data.

hevee said:

Screenshots and sample dae file will be posted shortly.

Can you post a file with your test case too?

Same problem here, and there is no export from Blender, just hard coded animation.