Changed the speed dependency of the visual skid offset:
before it was scaled by getSpeed()/getCurrentMaxSpeed(). Since current max speed is affected by zipper (it increases max speed), the visual skid angle would change when the skid bonus is activated, resulting in jump in the kart rotation. git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@10711 178a84e3-b1eb-0310-8ba1-8eac791a3b58
This commit is contained in:
@@ -2248,21 +2248,22 @@ btQuaternion Kart::getVisualRotation() const
|
||||
*/
|
||||
float Kart::getVisualSkidOffset() const
|
||||
{
|
||||
float speed_ratio = getSpeed()/MaxSpeed::getCurrentMaxSpeed();
|
||||
float f = getSteerPercent() * speed_ratio;
|
||||
if(m_kart_properties->getSkidVisualTime()==0)
|
||||
{
|
||||
float speed_ratio = getSpeed()/MaxSpeed::getCurrentMaxSpeed();
|
||||
float r = m_skidding / m_kart_properties->getMaxSkid();
|
||||
f *= r;
|
||||
return getSteerPercent() * speed_ratio * r;
|
||||
}
|
||||
else
|
||||
{
|
||||
float st = fabsf(m_skid_time);
|
||||
if(st>m_kart_properties->getSkidVisualTime())
|
||||
st = m_kart_properties->getSkidVisualTime();
|
||||
|
||||
// New skidding code
|
||||
float f = m_kart_properties->getSkidVisual() * getSteerPercent();
|
||||
if(getSpeed() < m_kart_properties->getMaxSpeed())
|
||||
f *= getSpeed()/m_kart_properties->getMaxSpeed();
|
||||
float st = fabsf(m_skid_time);
|
||||
if(st<m_kart_properties->getSkidVisualTime())
|
||||
f *= st/m_kart_properties->getSkidVisualTime();
|
||||
}
|
||||
return f*m_kart_properties->getSkidVisual();
|
||||
|
||||
return f;
|
||||
|
||||
} // getVisualSkidOffset
|
||||
|
||||
|
||||
Reference in New Issue
Block a user