From: Joschka B. <jbo...@un...> - 2006-04-27 13:24:38
|
Dear Yuan, thanks a lot for the bug report. I'm forwarding it to the developers list and I'll try to take a closer look tomorrow. Thanks again! Joschka you wrote: > Dear Joschka, > I think I found a bug in kickeffector: > While the agent both kick with the same kick force, but with > differentdirections, the kick distance will be different! That is, when the > agent act "kick(0,100)" in direction 0(means kickalong x axis), the > distance is about 27m,but, when the agent act "kick(0,100)" in direction > 90(means kick alongy axis), the distance is only about 20m. That's strange! > So, I looked into the source code of kickeffector, > In kickeffector.cpp > 00050 KickEffector::Realize(boost::shared_ptr<ActionObject> action) > 0012600127 const Vector3f > torque(mTorqueFactor*force[1]/salt::g2PI,00128 > mTorqueFactor*force[0]/salt::g2PI,00129 > 0.0);00130 I think it is a bug here, I think the torque added to the ball > should be Vector3f torque(-mTorqueFactor*force[1]/salt::g2PI, > mTorqueFactor*force[0]/salt::g2PI, 0.0); the first paramter > should be "-mTorqueFactor*force[1]/salt::g2PI", right? After change this, I > test again, and the kick distance is onlydetermined by the kick force. Hope > this is useful :-) > > --Best wishes!Xu Yuan |