Found bugs

In this thread I will post all the bugs I find.

Engine\Source\Runtime\Experimental\ChaosVehicles\ChaosVehiclesCore\Private\WheelSystem.cpp

Line 120

// use slip angle to generate a sideways force
			if (Setup().LateralSlipGraph.IsEmpty())
			{
				float AngleLimit = FMath::DegreesToRadians(8.0f);
				if (SlipAngle > AngleLimit)
				{
					SlipAngle = AngleLimit;
				}
				else if (SlipAngle < AngleLimit)
				{
					SlipAngle = AngleLimit;
				}
				FinalLateralForce = SlipAngle * CorneringStiffness;
			}

This is a simple signed limit, but the code is missing two minus signs so actual says

SlipAngle = AngleLimit;

Code should be

// use slip angle to generate a sideways force
			if (Setup().LateralSlipGraph.IsEmpty())
			{
				float AngleLimit = FMath::DegreesToRadians(8.0f);
				if (SlipAngle > AngleLimit)
				{
					SlipAngle = AngleLimit;
				}
				else if (SlipAngle < -AngleLimit)
				{
					SlipAngle = -AngleLimit;
				}
				FinalLateralForce = SlipAngle * CorneringStiffness ;
			}

This code actually looks wrong to me anyway.
What I am seeing is that once the speed of the vehicle gets above 55KPH, you lose all grip and the vehicle spins out.

2 Likes