I upgraded my irrlicht version from 1.5 to the latest (1.7.2) one. I now face the problem that my animation system has some trouble, although I´m not yet absolutely sure whether it was caused by the upgrade.
My scenario: I´ve got .X-files which have bones. I set the rotations via bone->setRotation(). But actually nothing happens. I had this behavior once when I worked on the server side as I had to call onAnimate() manually due to the fact that this wasn´t called as with the null-driver, no rendering process is done and therefore this wasn´t called. But this is the client side using OpenGL and I also tried to call onAnimate() manually just to make sure that this didn´t cause the problem.
I call setJointMode(scene::EJUOR_CONTROL) for the animatedSceneNode and animateJoints() as well in order to recalculate the absolute position of the model´s children (well, the bones in this case). As I read in the documentation about this function, this is done on basis of the current frame number. This might be the issue as it says the current frame number to be -1. So I tried to set it manually to 0 via
Code: Select all
node->setJointMode(scene::EJUOR_NONE);
node->setFrameLoop(0,0);
node->setCurrentFrame(0);
node->setLoopMode(false);
Do you have any clues what might cause the problem? Have there been any changes in the animation stuff from 1.5 to 1.7.2?
If you need more code or information, please just let me know it.
Thanks a lot,
badday