Skip to content
This repository has been archived by the owner. It is now read-only.
Permalink
Browse files
minor stuff
  • Loading branch information
aap committed Jun 4, 2020
1 parent 016ebc0 commit 95e96c86a1924a98c648fbcd251c9dca5d66c4bb
Showing with 15 additions and 4 deletions.
  1. +1 −0 src/math/Quaternion.h
  2. +11 −0 src/math/math.cpp
  3. +3 −4 src/vehicles/Automobile.cpp
@@ -60,6 +60,7 @@ class CQuaternion
}

void Slerp(const CQuaternion &q1, const CQuaternion &q2, float theta, float invSin, float t);
void Set(RwV3d *axis, float angle);
void Get(RwMatrix *matrix);
};

@@ -183,6 +183,17 @@ CQuaternion::Slerp(const CQuaternion &q1, const CQuaternion &q2, float theta, fl
}
}

void
CQuaternion::Set(RwV3d *axis, float angle)
{
float halfCos = Cos(angle*0.5f);
float halfSin = Sin(angle*0.5f);
x = axis->x*halfSin;
y = axis->y*halfSin;
z = axis->z*halfSin;
w = halfCos;
}

void
CQuaternion::Get(RwMatrix *matrix)
{
@@ -220,6 +220,7 @@ void
CAutomobile::ProcessControl(void)
{
int i;
float wheelRot;
CColModel *colModel;

if(bUsingSpecialColModel)
@@ -372,11 +373,9 @@ CAutomobile::ProcessControl(void)

pHandling->Transmission.CalculateGearForSimpleCar(AutoPilot.m_fMaxTrafficSpeed/50.0f, m_nCurrentGear);

{
float wheelRot = ProcessWheelRotation(WHEEL_STATE_NORMAL, GetForward(), m_vecMoveSpeed, 0.35f);
wheelRot = ProcessWheelRotation(WHEEL_STATE_NORMAL, GetForward(), m_vecMoveSpeed, 0.35f);
for(i = 0; i < 4; i++)
m_aWheelRotation[i] += wheelRot;
}

PlayHornIfNecessary();
ReduceHornCounter();
@@ -618,7 +617,7 @@ CAutomobile::ProcessControl(void)
for(i = 0; i < 4; i++){
if(m_aSuspensionSpringRatio[i] < 1.0f){
float bias = pHandling->fSuspensionBias;
if(i == 1 || i == 3) // rear
if(i == CARWHEEL_REAR_LEFT || i == CARWHEEL_REAR_RIGHT)
bias = 1.0f - bias;

ApplySpringCollision(pHandling->fSuspensionForceLevel,

0 comments on commit 95e96c8

Please sign in to comment.