Anim transition & joint positioning break skeletal models

You discovered a bug in the engine, and you are sure that it is not a problem of your code? Just post it in here. Please read the bug posting guidelines first.
Post Reply
MirceaKitsune
Posts: 9
Joined: Thu Nov 08, 2012 10:49 pm

Anim transition & joint positioning break skeletal models

Post by MirceaKitsune »

As reported here and previously discussed here:

When either enabling animation blending or setting the bone position / rotation of an animated skeletal mesh, animations no longer work and the mesh gets crushed while its normals are inverted. The precise functions that cause this problem are animated_meshnode->setTransitionTime(x), bone_scene_node->setPosition(x), bone_scene_node->setRotation(x).

This has been noticed in the project MineTest. I can confirm it happens when compiling it with Irrlicht 1.8, but another user reports it also takes place in 1.7. I can confirm it happens with the x model format, while the other person confirmed b3d does it too. Currently we have to disable animation blending and scripted rotation / position overrides for joints until this problem is fixed.

Video of the mesh working correctly: http://www.youtube.com/watch?v=edzDAH6-WQU

Video of the mesh when breaking: http://www.youtube.com/watch?v=dTk8ktb466g
hybrid
Admin
Posts: 14143
Joined: Wed Apr 19, 2006 9:20 pm
Location: Oldenburg(Oldb), Germany
Contact:

Re: Anim transition & joint positioning break skeletal model

Post by hybrid »

Yeah, thanks for the report. I already saw the tracker ticket. Cannot say much so far, as I don't have a good understandingof the animation system. But I don't recall nay critical changes between 1.7 and 1.8 on this one. But we need to investigate this further. Please keep in touch and send infos if you find out more.
MirceaKitsune
Posts: 9
Joined: Thu Nov 08, 2012 10:49 pm

Re: Anim transition & joint positioning break skeletal model

Post by MirceaKitsune »

hybrid wrote:Yeah, thanks for the report. I already saw the tracker ticket. Cannot say much so far, as I don't have a good understandingof the animation system. But I don't recall nay critical changes between 1.7 and 1.8 on this one. But we need to investigate this further. Please keep in touch and send infos if you find out more.
I could only try it in 1.8, but someone else confirmed it happens in 1.7 too. So either it broke in an earlier version (<= 1.6) or the error always existed and somehow went unnoticed. But I'll post if I see anything new, glad I could help with the report.

Oh, and I think I just remembered another detail. It might not be bone->setPosition() and bone->setRotation() specifically when it comes to bones. I remember that simply setting animated_meshnode->setJointMode(irr::scene::EJUOR_CONTROL) will cause the breakage, though I might be wrong.
wing64
Competition winner
Posts: 242
Joined: Wed Jul 23, 2008 2:35 am
Location: Thailand
Contact:

Re: Anim transition & joint positioning break skeletal model

Post by wing64 »

Try setInterpolationMode to EIM_CONSTANT yet ?
Post Reply