Rotating a Sphere in the World X axis, and not it's X axis

I've been trying to use the mahPhysicsBallNode.setAngularVelocity(Vector3f whatever) to rotate the character foot( http://www.ogre3d.org/wiki/index.php/OgreOde_Walking_Character ) so that the ball would rotate for my character to able to walk, unhappily it won't work that way, since it will rotate by it's own axis, and not by the world axis, so, if the ball is upsidedown, my character will walk backwards!!!



i really, really tried to understand Quaternions, but … you can't understand this thing without a Math Ph.D T.T.





so, i imagine that it can be calculated a correction in the setAngularVelocity(Vector3f whatever) based on the ball rotation, so that it will rotate the direction i want, as if i was rotating in the World X Axis!



hope was understandable, and if so, hope that there is actually a way to do it!

if your char walks the wrong way, can't you to rotate the sphere 180

er… sort of, but it walks wrongly everytime i change direction! not just in the wrong direction, but it does a circle and then walks in the wrong direction, then i move to the oposite direction untill it estabilize, and then i can move it to the right direction… it’s quite strange!



i have posted the classes somewhere… oh here: http://www.jmonkeyengine.com/jmeforum/index.php?topic=11003#msg83977



just instance a CharacterNode with a model in a SimplePhysicsGame, anything works, even a Box, like:

character = new CharacterNode(new Box("Box", Vector3f.ZERO.clone(), 5, 15, 5),
                                      space, cam, 1);



A and D rotates, W and S moves foward and backwards, holding shift increases speed, space jump (im almost sure i forgot to fix the jump height), Q and E strafes in those directions. hope it works! ;D

sorry can't make a test class right now, i will have one made here in some hours , thx for the help untill now