Blender Ik support?

I could not import some Blender model using Ik for animations.
It is some other way or will it be planned ?

Bake the animation

I’ve heard that the ogre importer supports IK animations. But I have not tested for myself

Hi @MonkeyGroove
do you get an exception loading the model with IK or is it simply importing wrong ?
If it is possible you can link me your model and I will check this out.

The IK constraint is supported but not yet as good as it should be. I still plan to improve it but I have very little time at the moment. But I will focus on it as soon as I am done with linked content. :wink:

@BigBob
The ogre importer supports everything that is stored in ogre xml because it does not need to do all troublesome computations. The ogre exporter in blender bakes the animation and the ogre importer only receives final keyframes ready to use.
Blender importer however needs to compute everything because blender does not store the baked data.
So sometimes in case of a very complicated constraints added to the model it is probably better to use ogre.

@Kaelthas

I have a set of models that I have an issue with with ik importing.

I can link you to them if you’d like.

Currently I bake the animations but the results are poor. Once I bake one animation it messes up the others.

@BigBob
OK link them and I will check them out.
I hope I will be able to use them to improve the IK algorithm.

@Kaelthas

There is a link to the IK models. I had to bake all the animations to even get them to import, but the baking really thrashes the animations.

Hey @BigBob

I took a look at the models. I think that the greates problem is not with IK constraint but with loading animations for these models. The archer, for example, has no IK applied and its animation looks awful when imported.

I will try to find where the problem is and I will let you know when I am done.
And sorry it takes so long, but I had one other issue with animation I needed to ahve solved.

@BigBob

OK, I know where the problem is. Only I do not yet know how to fix it.
Somehow you made the axes of bones to be swapped.

Open the ‘Archer’ model and turn on ‘Attack’ animation.
Turn on an orthogonal view in 3D window and enable the view to have X axis towards you (press ‘3’ on numeric keyboard) .
Split the view so that you can see the interpolation curves and select ‘root_bow’ bone.

You should be able to see the curves for this bone. You can notice that the X position is changing but on the animation the X is constant while Y changes.

I will try to find out what is wrong and prepare a fix to that.

Edit: after furhter checking it looks like I will need to add support for several options that affect bones’ parenting system.
These are:
inherit rotation
inherit scale
local location

For now they aren’t supported and it might cause problems. I’ll let you know when I implement this.

Isn’t this something that should be solved by animation baking?

@Momoko_Fan

That’s how my models are currently done. I baked the animations but unfortunately baking one animation seriously thrashes the rest of the animations

If I bake the walk animation first the walk animation will look fine but the rest of the animations will be offset.

The second animation I bake will look bad but slightly off.

The third will be worse and so on.

Currently I have used these models in games but I baked all the animations.

@Momoko_Fan

Probably yes. But anyway I’d like blender importer to take care of it so that baking animations is not needed.

Hey @BigBob

sorry it took so long but I had very little time recently to do anything :frowning:
I finally managed to solve most of the problems with your models’ animations.

It was mostly bad interpolation computing rather than IK, although IK also affects the animations.
I will make a commit today so that the animations will look much better than before.

You will still see some artifacts in the archer and not perfect movements where IK is used - but this happens in every model at the moment.
I will try to improve the IK as soon as possible. Just be patient :wink:

1 Like

@BigBob
I made another commit today. The artifacts that appeared in the archer model are now lesser (although they did not disappear entirely).

And there is still problem with cerberus walk animation. This is caused by using more than one IK constraint in one bone chain. If it is possible - try to avoid it for now.

Sorry it takes so long, but the IK algorithm is quite hard to debug :frowning:

1 Like

Thank you for all your work :slight_smile: