Advertisement
Guest User

Untitled

a guest
Oct 16th, 2024
19
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.09 KB | None | 0 0
  1.  
  2.  
  3. // ADDED :: Driving v3
  4. // *************************************************************************** v0.1 // a29
  5. // *********************** 1st Gear + Accel + Brake ************************
  6. // ***************************************************************************
  7.  
  8. float aDefaultLatScale = mAxle->getWheelOptions()->getLateralScale();
  9.  
  10. // --- AXLE ---
  11. float aFrontWheels = mAxle->getIndex() == 0;
  12. float aRearWheels = mAxle->getIndex() == 1;
  13.  
  14. float aBraking = mVehicle->getStandardInput()->getBrakeFinalInput(); // (0-1) Only by input.
  15. float aCurGear = mVehicle->getTransmission()->getCurGear(); // Get current gear
  16. float steerDeltaAngleR = mVehicle->getSteerDeltaAngle(false); // Rear angle difference
  17. float carAngleR = FMath::Abs(steerDeltaAngleR);
  18.  
  19. float brakePow = 1.0f; // Max 1.0. Multiplier to manage overall power
  20.  
  21. // Using getSteerDeltaAngle(false), due with true, in high turning the angle decreases instead of increase.
  22. // a29 || "/ 90.0f" :: Higher = More brake || Lower = Less brake.
  23. float brakeAngleR = FMath::Clamp(1.0f-(carAngleR / 90.0f), 0.0f, 1.0f);
  24.  
  25. // Final brake calculation || Accel maybe should be added here too.
  26. float driftBrake = brakePow *brakeAngleR *aBraking;
  27.  
  28. // Only on 1st gear + Braking when issue happens.
  29. if ( aCurGear == 1 && aBraking > 0.0f ) {
  30.  
  31. mVehicle->getAxle(0)->getRightWheel()->setBraking(driftBrake);
  32. mVehicle->getAxle(0)->getLeftWheel()->setBraking( driftBrake);
  33. mVehicle->getAxle(1)->getRightWheel()->setBraking(driftBrake);
  34. mVehicle->getAxle(1)->getLeftWheel()->setBraking( driftBrake);
  35.  
  36. // To make the car +slide/angle to compensate less braking.
  37. if ( aFrontWheels ) {
  38. mLatScale = aDefaultLatScale -(aBraking*0.2f);
  39. }
  40. if ( aRearWheels ) {
  41. mLatScale = aDefaultLatScale -(aBraking*0.4f);
  42. }
  43. }
  44. else { mLatScale = aDefaultLatScale; }
  45.  
  46. // -----------------------------------------------------------------------
  47. // ***********************************************************************
  48.  
  49.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement