diff options
author | Sergeanur <s.anureev@yandex.ua> | 2019-10-06 14:42:48 +0200 |
---|---|---|
committer | Sergeanur <s.anureev@yandex.ua> | 2019-10-06 14:42:48 +0200 |
commit | 90aa16b9b01ee1fc394e9ad984ddccaabb83257a (patch) | |
tree | 860bc10238dfe15b49f0ba0813800054dc0ad9ee | |
parent | Fixed player blip heading when looking left/right/behind (diff) | |
download | re3-90aa16b9b01ee1fc394e9ad984ddccaabb83257a.tar re3-90aa16b9b01ee1fc394e9ad984ddccaabb83257a.tar.gz re3-90aa16b9b01ee1fc394e9ad984ddccaabb83257a.tar.bz2 re3-90aa16b9b01ee1fc394e9ad984ddccaabb83257a.tar.lz re3-90aa16b9b01ee1fc394e9ad984ddccaabb83257a.tar.xz re3-90aa16b9b01ee1fc394e9ad984ddccaabb83257a.tar.zst re3-90aa16b9b01ee1fc394e9ad984ddccaabb83257a.zip |
-rw-r--r-- | src/vehicles/Automobile.cpp | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/src/vehicles/Automobile.cpp b/src/vehicles/Automobile.cpp index 67d80915..00dc73fc 100644 --- a/src/vehicles/Automobile.cpp +++ b/src/vehicles/Automobile.cpp @@ -1933,13 +1933,15 @@ CAutomobile::Render(void) CVector frontWheelFwd = Multiply3x3(GetMatrix(), CVector(-Sin(m_fSteerAngle), Cos(m_fSteerAngle), 0.0f)); CVector rearWheelFwd = GetForward(); for(i = 0; i < 4; i++){ - contactPoints[i] = m_aWheelColPoints[i].point - GetPosition(); - contactSpeeds[i] = GetSpeed(contactPoints[i]); - if(i == CARWHEEL_FRONT_LEFT || i == CARWHEEL_FRONT_RIGHT) - m_aWheelSpeed[i] = ProcessWheelRotation(m_aWheelState[i], frontWheelFwd, contactSpeeds[i], 0.5f*mi->m_wheelScale); - else - m_aWheelSpeed[i] = ProcessWheelRotation(m_aWheelState[i], rearWheelFwd, contactSpeeds[i], 0.5f*mi->m_wheelScale); - m_aWheelRotation[i] += m_aWheelSpeed[i]; + if (m_aWheelTimer[i] > 0.0f) { + contactPoints[i] = m_aWheelColPoints[0].point - GetPosition(); + contactSpeeds[i] = GetSpeed(contactPoints[i]); + if (i == CARWHEEL_FRONT_LEFT || i == CARWHEEL_FRONT_RIGHT) + m_aWheelSpeed[i] = ProcessWheelRotation(m_aWheelState[i], frontWheelFwd, contactSpeeds[i], 0.5f*mi->m_wheelScale); + else + m_aWheelSpeed[i] = ProcessWheelRotation(m_aWheelState[i], rearWheelFwd, contactSpeeds[i], 0.5f*mi->m_wheelScale); + m_aWheelRotation[i] += m_aWheelSpeed[i]; + } } // Rear right wheel |