handling unit conversion

This commit is contained in:
aap 2020-12-27 20:34:19 +01:00
parent 013e9b9992
commit d33f1071ae
1 changed files with 6 additions and 5 deletions

View File

@ -2,6 +2,7 @@
#include "main.h" #include "main.h"
#include "FileMgr.h" #include "FileMgr.h"
#include "Physical.h"
#include "HandlingMgr.h" #include "HandlingMgr.h"
//--MIAMI: done //--MIAMI: done
@ -348,18 +349,18 @@ cHandlingDataMgr::FindExactWord(const char *word, const char *words, int wordLen
void void
cHandlingDataMgr::ConvertDataToGameUnits(tHandlingData *handling) cHandlingDataMgr::ConvertDataToGameUnits(tHandlingData *handling)
{ {
// TODO: figure out what exactly is being converted here // convert distance to m, time to 1/50s
float velocity, a, b, specificVolume; float velocity, a, b, specificVolume;
handling->Transmission.fEngineAcceleration /= 2500.0f; handling->Transmission.fEngineAcceleration *= 1.0f/(50.0f*50.0f);
handling->Transmission.fMaxVelocity /= 180.0f; handling->Transmission.fMaxVelocity *= 1000.0f/(60.0f*60.0f * 50.0f);
handling->fBrakeDeceleration /= 2500.0f; handling->fBrakeDeceleration *= 1.0f/(50.0f*50.0f);
handling->fTurnMass = (sq(handling->Dimension.x) + sq(handling->Dimension.y)) * handling->fMass / 12.0f; handling->fTurnMass = (sq(handling->Dimension.x) + sq(handling->Dimension.y)) * handling->fMass / 12.0f;
if(handling->fTurnMass < 10.0f) if(handling->fTurnMass < 10.0f)
handling->fTurnMass *= 5.0f; handling->fTurnMass *= 5.0f;
handling->fInvMass = 1.0f/handling->fMass; handling->fInvMass = 1.0f/handling->fMass;
handling->fCollisionDamageMultiplier *= 2000.0f/handling->fMass; handling->fCollisionDamageMultiplier *= 2000.0f/handling->fMass;
handling->fBuoyancy = 100.0f/handling->nPercentSubmerged * 0.008f*handling->fMass; handling->fBuoyancy = 100.0f/handling->nPercentSubmerged * GRAVITY*handling->fMass;
// What the hell is going on here? // What the hell is going on here?
specificVolume = handling->Dimension.x*handling->Dimension.z*0.5f / handling->fMass; // ? specificVolume = handling->Dimension.x*handling->Dimension.z*0.5f / handling->fMass; // ?