Worked around the 'kart shaking when braking' problem.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/irrlicht@3465 178a84e3-b1eb-0310-8ba1-8eac791a3b58
This commit is contained in:
parent
092183844f
commit
14b49c58cb
@ -425,6 +425,14 @@ void btKart::updateFriction(btScalar timeStep)
|
|||||||
btScalar maxImpulse = wheelInfo.m_brake ? wheelInfo.m_brake : defaultRollingFrictionImpulse;
|
btScalar maxImpulse = wheelInfo.m_brake ? wheelInfo.m_brake : defaultRollingFrictionImpulse;
|
||||||
btWheelContactPoint contactPt(m_chassisBody,groundObject,wheelInfo.m_raycastInfo.m_contactPointWS,m_forwardWS[wheel],maxImpulse);
|
btWheelContactPoint contactPt(m_chassisBody,groundObject,wheelInfo.m_raycastInfo.m_contactPointWS,m_forwardWS[wheel],maxImpulse);
|
||||||
rollingFriction = calcRollingFriction(contactPt);
|
rollingFriction = calcRollingFriction(contactPt);
|
||||||
|
// This is a work around for the problem that a kart shakes
|
||||||
|
// if it is braking: we get a minor impulse forward, which
|
||||||
|
// bullet then tries to offset by applying a backward
|
||||||
|
// impulse - which is a bit too big, causing a impulse
|
||||||
|
// backwards, ... till the kart is shaking backwards and
|
||||||
|
// forwards
|
||||||
|
if(wheelInfo.m_brake && fabsf(rollingFriction)<10)
|
||||||
|
rollingFriction=0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user