Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

NWH Vehicle Physics 2

Discussion in 'Assets and Asset Store' started by NWHCoding, Apr 8, 2020.

?

What would you like to see implemented next?

Poll closed Feb 12, 2023.
  1. FMOD sound module

    0 vote(s)
    0.0%
  2. Tracked vehicles

    3 vote(s)
    30.0%
  3. Softbody wheels

    7 vote(s)
    70.0%
  4. Something else (mention in the thread)

    0 vote(s)
    0.0%
  1. NWHCoding

    NWHCoding

    Joined:
    Jul 12, 2012
    Posts:
    1,683
    An important beta update is on the way. The ground detection methodology was changed and now works better and faster than previous betas. The only outstanding bug is collision detection. A few tweaks might be needed here and there and it will be ready to replace the current stable version.

    10.6b


    09/02/2023
    • [WC3D] Major changes to the ground detection.
    • Ground detection is now done through an interface, allowing for custom solutions.
    • Added more and better collision sound samples.
    • Fixed suspension bump sound.
    • Fixed N>R and N>1 gear shifts not being instant. This caused a delay between input and vehicle starting to move that might appear to player as input lag.
    • Re-implemented camber, toe and caster. Camber is now set through the WheelController exclusively (except for in cases of solid axle when it is calculated automatically by VehicleController). Added camber to WheelUAPI.
    • Other smaller changes, improvements and bug fixes.
     
  2. NWHCoding

    NWHCoding

    Joined:
    Jul 12, 2012
    Posts:
    1,683
    10.7b

    10/02/2023
    • [WC3D] WheelController3D beta now works with no-suspension vehicles.
    • [WC3D] Fixed bottoming out friction behavior from excessive friction.
    • [WC3D] Tweaked the load/friction function to be less steep which results in more predictable friction behavior.
    • [WC3D] Overall friction tweaks and improvements.
    • [WC3D] Code cleanup.
    • [WC3D] Simplified the Advanced tab and removed the unneeded options.
    • Fixed vehicle failing to brake on reverse direction. This also fixes earlier failing to start on incline issue.
    • Changes to the inertia of the powertrain to fix the issue of too high total powertrain inertia, which resulted in wheels spinning for too long after throttle is released.
    • Fixed skidmarks rendering in front of surface particles.
    • Multiple smaller bug fixes and improvements.
     
    Yany likes this.
  3. NWHCoding

    NWHCoding

    Joined:
    Jul 12, 2012
    Posts:
    1,683
    A small patch incoming:

    10.8b

    10/02/2023
    • Fixed powertrain issues introduced in 10.7b.
    • Fixed VehicleController FX inspector error in play mode.
     
    Yany likes this.
  4. NWHCoding

    NWHCoding

    Joined:
    Jul 12, 2012
    Posts:
    1,683
    10.9b

    15/02/2023
    • [WC3D] Improvements to the sidewall collisions. Wheels that stick to the side, out of the body collider, no longer jump on sidewall collision.
    • [WC3D] Fixed load calculation for low tyre loads.
    • [WC3D] Tweaks to the low speed friction and native collider usage.
    • Renamed demo scenes across all NWH assets (NVP2 Main Scene, NVP2 Mobile Scene, etc.)
    • Re-added demo vehicle settings and telemetry with bug fixes and improvements.
    • Removed clutch engagement smoothing to prevent stalling. No longer needed with clutch engagement range implemented.
    • VehicleChanger no longer uses tags, making it usable with multi-scene setups. Instead, 'Register With Vehicle Changer' option is added under Settings tab of VehicleController.
    • When checking for velocity to enable low speed friction, uses relative surface velocity instead.
    • Removed duplicate module warning as multiple TrailerHitch modules might be present.
    • Added URP guide to the documentation.
     
  5. NWHCoding

    NWHCoding

    Joined:
    Jul 12, 2012
    Posts:
    1,683
    10.10b

    16/02/2023
    • [WC3D] Optimized the WheelController for ~30% in editor performance gain in comparison to 10.9b.
    • Fixes to issues introduced by changes in 10.9b, including friction.
    • Fixed inverted toe angle.
    • Fixed incorrect camber being applied with solid axle.
    • Multiple smaller bug fixes.
     
  6. Yany

    Yany

    Joined:
    May 24, 2013
    Posts:
    96
    Can it be an option for the voting to put the wheels of the car on separate rigidbodies to let the car fall apart when damaged? Currently only a single rigidbody is supported for a vehicle.
     
  7. NWHCoding

    NWHCoding

    Joined:
    Jul 12, 2012
    Posts:
    1,683
    No, but you can have a core Rigidbody with all the vehicle stuff and then have pieces (doors, hood, seats, etc.) fall off. You can have WheelControllers attached to separate Rigidbodies and then connect them with joints, however.
     
    Yany likes this.
  8. Yany

    Yany

    Joined:
    May 24, 2013
    Posts:
    96
    I guess, using wheelcontroller also means a lack of high-level vehicle controller stuff, right? It's not something I must do, but would be a nice option if I plan to crash my cars in a way they fall apart. Though there's something I haven't checked yet: can the wheels be torn apart from the car now? Can they detach from the car and roll alone on damage or by calling a "detach" method?

    I'm checking the sound-related documents here, and I cannot see the wind (or air drag) sound. Is it possible to add that one that is basically depends on the movement speed of the car only? (volume increases with body movement speed).

    Also, can interior/exterior sounds be differentiated somehow? I mean the relative volumes and low-pass filters are different when you sit in the car or follow it from the outside.
     
    Last edited: Feb 16, 2023
  9. NWHCoding

    NWHCoding

    Joined:
    Jul 12, 2012
    Posts:
    1,683
    You can have WheelControllers on different Rigidbodies from the VehicleController, I do not see a limitation that would make this impossible.

    The air sound does not exist, but the NWH Aerodynamics has it so porting it over might be a thing I should do.

    There is no way to differentiate between these two, and the low pass filter is added globally through the mixer, not on the per-sound basis.
     
    Yany likes this.
  10. NWHCoding

    NWHCoding

    Joined:
    Jul 12, 2012
    Posts:
    1,683
    10.11b

    16/02/2023
    • Fixed digging into the ground issue introduced in 10.10b.
    • Fixed null reference error introduced in 10.10b.
    • Improvements to the way low speed friction is enabled/disabled.
    • Added runtime wheel radius and width adjustment.
    • Fixed native collider activating in air.
    • Other smaller changes and improvements.
     
    Yany likes this.
  11. NWHCoding

    NWHCoding

    Joined:
    Jul 12, 2012
    Posts:
    1,683
    10.12b

    20/02/2023
    • Improvements to the native friction mode and fix for issues with vehicle not exiting native friction and refusing to move.
    • Fix trailer having no collision.
    • Fixed default tire load rating calculation bug.
    • Fixed VehicleSetupWizard center of mass being positioned wrong.
     
  12. fdameronut

    fdameronut

    Joined:
    May 15, 2018
    Posts:
    11
    I'm writing a game with five prefab cars. All the prefabs are for different types of cars. The problem is that the gear ratios are applied globally which defeats the purpose. Why would you do something like that?
     
  13. NWHCoding

    NWHCoding

    Joined:
    Jul 12, 2012
    Posts:
    1,683
    You can definitely have a per-vehicle gear ratio. It is just a basic ScriptableObject. In fact, the other day I got a question on why the powertrain components are not all ScriptableObjects so I guess you can not fit all the the requests :)
    The final gear ratio is applied locally, and you can have a separate gearing preset for each vehicle, or share a preset between similar types of vehicles. So you can do a transmission swap by just assigning a different one.

    So it can definitely be assigned per-vehicle, you just have to be aware that it is a ScriptableObject.
     
  14. fdameronut

    fdameronut

    Joined:
    May 15, 2018
    Posts:
    11
    Why can't I just set it up in the prefab and be done with it. Why should I have to script each type of vehicle in a scene to set the transmission which is something you don't have to do in real life. It defeats the purpose of a prefab.
     
  15. NWHCoding

    NWHCoding

    Joined:
    Jul 12, 2012
    Posts:
    1,683
    ScriptableObject is just that, essentially a prefab for holding settings / scripting related things. You can just drag and drop any transmission gearing profile on any vehicle, of create one from scripting at runtime and assign it. You do not have to script anything, you can right click in the inspector and create a new one through UI.
     
  16. MeteTurkay

    MeteTurkay

    Joined:
    Nov 10, 2022
    Posts:
    10
    Hi, do you consider adding steer axis? i guess we should set our steer rotation to turn around z axis, it would be good if we could just select turn axis, have a good day :) !
     
  17. NWHCoding

    NWHCoding

    Joined:
    Jul 12, 2012
    Posts:
    1,683
    No, the steer axis is always along the suspension axis. However, you can rotate the WheelController to any orientation you want. It is just important that you keep the model orientation correct.
     
  18. NWHCoding

    NWHCoding

    Joined:
    Jul 12, 2012
    Posts:
    1,683
    An update will be up in ~1hr.
    Changes:

    10.13b

    25/02/2023
    • [WC3D] Fixed major ground detection bug that would cause jitter and incorrect ground detection results.
    • [WC3D] Fixed wheels clipping through the ground on side collision.
    • [WC3D] Separated the wheel collider into two halves, with the top one always active. This prevents clipping into walls with protruding wheels.
    • [WC3D] Fixed the no-suspension / bottom out friction bug introduced in an earlier beta.
    • [WC3D] Fixed IsGrounded being true when the vehicle is slightly above ground.
    • [WC3D] Fixed wheels not free-spinning while in air. Introduced ~10.10b.
    • [WC3D] Removed wheel visual runtime scaling with wheel dimension change, introduced in 10.12b.
    • [WC3D] Exposed WheelController spring, damper, wheel, sideFriction and forwardFriction properties as per feedback.
    • [WC3D] Other bug fixes, improvements, optimizations.
    • Added vehicle collision events.
    • Removed Step() call from the WheelUAPI. WheelController is now running on normal FixedUpdate().
    • Fixed gizmos not drawing for modules.
    • Changed VehicleSetupWizard to use the vehicle rotation for the created WheelControllers, instead of the wheel visual rotation.
     
  19. NWHCoding

    NWHCoding

    Joined:
    Jul 12, 2012
    Posts:
    1,683
    Rewriting the docs right now. The docs online will be ahead of the stable versions of NVP2 and WC3D for a few days, and when I am done with the docs I am planning to release the beta as stable. The older version will stay on the asset store due to Unity 2021.3 requirement for the new version.
     
  20. NWHCoding

    NWHCoding

    Joined:
    Jul 12, 2012
    Posts:
    1,683
    Here we go, the last 10.x beta. Next release will be 10.15f and replace the current 9.4f as the main version.

    10.14b


    01/03/2023
    • [WC3D] Ground detection bug fixes.
    • [WC3D] Friction refactoring. Integrated friction back into WheelController.cs.
    • Updated SteeringWheelInputProvider to work with 10.13b.
    • Updated Mirror to work with 10.13b, reintroduced PUN2 support which was removed earlier in the beta.
    • Fixed collisions sometimes getting ignored.
     
    Yany likes this.
  21. Yany

    Yany

    Joined:
    May 24, 2013
    Posts:
    96
    This is awesome news! Do you have a roadmap somewhere that outlines your further plans? I mean about the main features, not implementation bits.
     
  22. NWHCoding

    NWHCoding

    Joined:
    Jul 12, 2012
    Posts:
    1,683
    First, I need to update the documentation, but I do not thing that is what you are asking about.
    FMOD and Tracked vehicles are next in planning. I have been sitting on finishing the FMOD for quite some time and it is 70% there. The tracked vehicles will most likely be next since the TrackController will be heavily based on WC3D and I expect that to be a relatively straightforward job. And finally, softbody wheels. These are a bit of a large project so I would like to get the first two sorted out first, and involve a lot of research work, experimenting, etc. so not as straightforward as the tracks and might take quite some time to finish and polish.
    So that is the rough roadmap.
     
    Willbkool_FPCS and Yany like this.
  23. Yany

    Yany

    Joined:
    May 24, 2013
    Posts:
    96
    Yeah, that sounds like a great plan. ;)
     
  24. NWHCoding

    NWHCoding

    Joined:
    Jul 12, 2012
    Posts:
    1,683
    10.15b

    06/03/2023
    • VariableCenterOfMass update. Needs CoM adjustment on existing vehicles.
    • [WC3D] Fix rolling resistance torque missing.
    • [WC3D] Make native collider only apply when brake torque is present.
    • [WC3D] Tweaks to the native friction/collider.
    • [WC3D] Fixed trailer wheels not exiting native friction properly.
    • [WC3D] Added “Use Native Collider” and “Use Native Collider For Bottoming Out”.
    • Added Cinemachine cameras to the vehicles. Added Cinemachine as a package dependency.
    • Moved editor-only resources to Editor folder so that they are not included in the build.
    • Added Brakes > Brake On Reverse Direction option (on by default).
    • Tweakes to the demo vehicle setup.
    • Fixed MobileInputButton sometimes not registering.
     
  25. NWHCoding

    NWHCoding

    Joined:
    Jul 12, 2012
    Posts:
    1,683
    10.16f is out and with that the beta replaces the current 9.4f. 9.4f will still be available for download if Unity version is between 2020.3.8f - 2021.3.16.
    10.16f requires Unity 2021.3.16 or newer.

    Please check the upgrade notes (http://nwhvehiclephysics.com/doku.php/UpgradeNotes)
    as there have been some major changes and reconfiguration will be necessary.


    10.16f


    07/03/2023
    • [WC3D] Fixed suspension getting stuck in native collision mode after landing a jump and bottoming out.
    • Fixed DemoVehicleSettings font error in Unity 2022.
     
    Yany likes this.
  26. NWHCoding

    NWHCoding

    Joined:
    Jul 12, 2012
    Posts:
    1,683
    10.17f

    13/03/2023
    • [WC3D] Major longitudinal friction update focusing mainly on creep on slopes and high speed / low update rate stability. No adjustment necessary.
    • [WC3D] Native friction is no longer used for creep prevention as this has been implemented inside the WC3D itself and thus no longer needed.
    • [WC3D] WheelController no longer uses ContactModifyEvent callback which results in improved performance, esp. in scenes with many colliding objects.
    • [WC3D] Added OtherBodyForceScale. A value by which the forces applied to other Rigidbodies are scaled to allow for interaction with lightweight Rigidbodies.
    • [WC3D] Fixed no-suspension friction behaviour. The friction is now the same for no-suspension/bottomed out suspension and normal suspension.
    • [WC3D] Merged “Actions” and “Advanced” tabs into a single “Misc” tab due to the only few fields remaining under the “Advanced” tab.
    • BrakeOnReverse direction is now off by default.
    • Fixed Wheel Group > Caster not being drawn and “Apply Geometry” not applying when toe or caster are 0.
    • Fixed VehicleSetupWizard throwing an error when there is no mesh on the wheel object.
    • Performance optimization.
    • Removed vehicle-specific collision callbacks as they are no longer needed due to removal of ContactModifyEvent.
     
  27. NWHCoding

    NWHCoding

    Joined:
    Jul 12, 2012
    Posts:
    1,683
    The requirement of Unity 2021.3.16f for NVP2 10.x has been dropped and now the 10.x will be available for Unity 2020.3.8f1 or newer.
     
    studentvz, Willbkool_FPCS and Yany like this.
  28. NWHCoding

    NWHCoding

    Joined:
    Jul 12, 2012
    Posts:
    1,683
    10.18f

    17/03/2023
    • [WC3D] Fixed RPM spike bug under braking.
    • [WC3D] Fixed wheel locking up too easily when both motorTorque and brakeTorque are applied.
    • [WC3D] Friction bug fixes and improvements. Improved stability at dt = 0.03 (33Hz physics update).
    • [WC3D] Fixed glitching/jumping wheel when the approached obstacle is above the axle height.
    • [WC3D] Camber is now just a single value and is not changed by the WheelController automatically. For that the CamberController script was added. Removed CamberAtTop and CamberAtBottom from WheelUAPI.
    • [WC3D] Fixed SpringCompression returning inverted value.
    • Fixed reverse beep playing, when it already was playing.
    • Added per-surface rolling resistance multiplier to emulate wheels rolling through soft terrain (mud, sand, etc.). This is adjusted through the SurfacePresets.
    • Added priorities to the vehicle AudioSources.
    • Fix gear shift time when using manual transmission.
    • Fixed otherBodyForceScale not drawing.
    • Fixed clutch not re-engaging when the vehicle is rolling and the engine RPM dips below engagement RPM.
    • Fixed some powertrain components reporting wrong angular velocity in the inspector.
    • Added ApplyToeAngle and ApplyCasterAngle bools to the WheelGroup to prevent the WheelGroup overriding manually set rotation on motorcycles and other vehicles where this is needed.
     
  29. bvonline

    bvonline

    Joined:
    Feb 27, 2021
    Posts:
    84
    For an arcade / kart (or F1) mode, it is important to reduce or totally avoid the possibility that the car lifts up and flies. To do that, is there a method? I am currently trying to reduce the driving behavior to a minimum, keep the player driving a dynamic car but keeping it still very easy to drive, if you know what I mean. Don't want the player to strain his finger and arm muscles :rolleyes:

    Thank you for your answer.
     
  30. NWHCoding

    NWHCoding

    Joined:
    Jul 12, 2012
    Posts:
    1,683
    Hello. First of all, update to the 10.x version as it has a lot of large changes that will help you with achieving the more arcade behaviour. And if you are trying to keep the vehicle on the ground you can either use AerodynamicsModule and the downforce it offers, use higher gravity (which has its issues) or otherwise artificially add a force once the wheels are in the air for push the vehicle down and prevent it from jumping.
    Lifing up and flying is not really a concern, if you mean the aerodynamic behaviour, as that is not possible with the asset. It is only the aerodynamic drag and downforce, there is no possibility of the air lifting the vehicle up like an airfoil.
     
  31. NWHCoding

    NWHCoding

    Joined:
    Jul 12, 2012
    Posts:
    1,683
    Squeezed a few more FPS out of the asset, an update coming in an hour or so:



    10.19f


    20/03/2023
    • Overall asset optimization. There should be a noticeable FPS increase.
    • [WC3D] Fixed issues with starting on slopes.
    • Added 'Force Multicast' option to StandardGroundDetection for vehicles that need higher quality ground detection at all times.
    • Fixed power modifier not properly applying to the electric engine.
    • Fixed unintentional throttle dead zone on the EngineComponent.
    • Fixed engine stop causing the engine RPM to instantly drop to 0.
    • Fixed flickering camber bug introduced in 10.17f and incorrect WheelGroup solid camber.
     
    TokyoWarfareProject likes this.
  32. EnesZuuks

    EnesZuuks

    Joined:
    Dec 1, 2022
    Posts:
    13
    Hello. I want to change transmission output from center diff to rear diff for 4x2 traction at runtime.(Or 4x4 traction rear-to-center). Output part changes at inspector but it doesn't affect in the game.

    Im using this code block :
    // for rear-to-center crossing
    _myVehicleController.powertrain.transmission.SetOutput(_myVehicleController.powertrain.differentials[2]);
    // for center-to-rear crossing
    _myVehicleController.powertrain.transmission.SetOutput(_myVehicleController.powertrain.differentials[1]);

    Can you help me?
     
  33. NWHCoding

    NWHCoding

    Joined:
    Jul 12, 2012
    Posts:
    1,683
    Hello,
    This is best achieved through front, rear and center differential, where when AWD or RWD is required you use the Open differential and set the bias to 0 (front) or 1 (rear). Then, when you need 4x4 you just switch the center differential bias to 0.5 or use the LSD or Locked center diff. Hope that makes sense.
     
  34. EnesZuuks

    EnesZuuks

    Joined:
    Dec 1, 2022
    Posts:
    13
    Thanks for replying. Unfortunately I can't get awd-rwd crossing by using open differential and changing bias value.
     
  35. NWHCoding

    NWHCoding

    Joined:
    Jul 12, 2012
    Posts:
    1,683
    Does the project not allow it or does it not work? Because I am frequently using this approach with good results.

    Center Differential (open, bias 1) > Front Differential + Rear Differential = RWD
    Center Differential (open, bias 0.5) > Front Differential + Rear Differential = AWD

    Otherwise, with the initial approach call the
    vehicleController.powertrain.Initialize();
    to re-set the inputs and outputs.
     
  36. NWHCoding

    NWHCoding

    Joined:
    Jul 12, 2012
    Posts:
    1,683
    FMOD module add-on. Work in progress.

    upload_2023-3-25_20-47-34.png
     
  37. imranzikry2

    imranzikry2

    Joined:
    Mar 27, 2023
    Posts:
    2
    Hello, may I know if there's any creep feature for vehicle and how to implement it?
     
  38. NWHCoding

    NWHCoding

    Joined:
    Jul 12, 2012
    Posts:
    1,683
    Yes, there is. It is implemented on the PWR > Clutch tab but there is no speed limit. This has just been added to TODO recently. This means that the creep torque is correct, but the vehicle might reach higher speeds than expected/needed.
     
  39. imranzikry2

    imranzikry2

    Joined:
    Mar 27, 2023
    Posts:
    2
    I updated the NWH to the latest version and there's a creep torque option as told. However I did encounter a new problem.

    The creep works just fine in the Unity Editor and built version. But when I connect it to the Logitech G29 driving set, the creep torque feature is not working, Is there any possible solution for this situation? or perhaps specific variable or coding that I missed?
     
  40. EnesZuuks

    EnesZuuks

    Joined:
    Dec 1, 2022
    Posts:
    13
    Thanks man.
    For some reason that I didn't understand at first, when I changed the bias, it didn't work either. Currently working.
     
  41. NWHCoding

    NWHCoding

    Joined:
    Jul 12, 2012
    Posts:
    1,683
    Hello, most likely the fact that you might be using manual clutch with Logitech G29 and the creep is only present with automatic clutch. Manual transmissions do not have idle creep, that is something only torque converter autos have.
     
  42. NWHCoding

    NWHCoding

    Joined:
    Jul 12, 2012
    Posts:
    1,683
    I am cleaning up the powertrain code right now so will aim to simplify this.
     
  43. markoal

    markoal

    Joined:
    Aug 31, 2015
    Posts:
    30
    I've been checking out this asset periodically for some time, and I want to say a great job, you're constantly doing improvements or new features/fixes. Literally, at least a couple of updates each month. Nice! And keep up what you're doing :)
     
  44. NWHCoding

    NWHCoding

    Joined:
    Jul 12, 2012
    Posts:
    1,683
    Thank you. Working on 10.20f which will be quite a large update too. Trying to get the asset to be clean and efficient now that all the requested features have been implemented over the past years.
    Will keep it up :)
     
    markoal likes this.
  45. NWHCoding

    NWHCoding

    Joined:
    Jul 12, 2012
    Posts:
    1,683
    A few snippets from the 10.20f dev progress. The focus is code review and cleanup, especially the Vehicle, VehicleController, VehicleComponent and Powertrain-related scripts:



    The gearing is now a plain list. The previous approach was because the ReorderableList was not implemented at that time. But I have had a quite a few support requests with people having issues with assigning gears and the whole thing was overcomplicated. Now it is just a plain list of floats and there is no need to call any functions after changing the values at runtime (unlike before). This should avoid the confusion around the ScriptableObjects too, and I believe that no functionality is lost since gears can be copied between vehicles by right clicking on the list header.

    ---



    Modules no longer require to be within the Modules folder (or NWH.VehiclePhysics2 assembly).

    ---



    Validation now runs each Unity OnValidate call. This means that setup issues will be highlighted on all the vehicles in the scene each time there is a script reload. Should help catch issues early.

    ---



    Latest change is the output selector and the way the outputs work with the powetrain.
    It does not look much different than before but there has been about 200 LOC removed and the selector is now quite lightweight, only a few lines of code. Also, the whole mystery around setting the component outputs was removed. In 10.20f, to set the component output it is just a matter of:
    vc.powertrain.engine.output = vc.powertrain.engine.transmission;
     
  46. NWHCoding

    NWHCoding

    Joined:
    Jul 12, 2012
    Posts:
    1,683
    Another small update: PowertrainComponents in 10.20f will support runtime changes in the inspector and through code. No need to re-initialize anything as is the case in 10.19f.
     
  47. NWHCoding

    NWHCoding

    Joined:
    Jul 12, 2012
    Posts:
    1,683
    More updates for 10.20f:

    PowertrainComponents now have debug area with the relevant data shown:


    Validation got a new message format and also runs automatically on prefabs, too. Automatic validation can be disabled through the Settings tab of the VehicleController but it is not recommended. It saved me a few headaches while working on 10.20f, and I found out the project has two broken prefabs:


    SoundComponent now uses only one AudioSource. This means that the effects such as WheelSkidComponent and WheelTireNoiseComponent use a single AudioSource instead of one per wheel, with the clip for the surface being what most of the wheels are on. Along with other changes and optimizations to the SoundComponent and sounds in general, this improves performance by quite a bit, not to mention code clarity.
     
  48. NWHCoding

    NWHCoding

    Joined:
    Jul 12, 2012
    Posts:
    1,683
    markoal likes this.
  49. NWHCoding

    NWHCoding

    Joined:
    Jul 12, 2012
    Posts:
    1,683
    First major change for 11.1b. The damping is getting a revamp. The current approach with the curve is not the best (to say the least) and converting the real world values to actual curve is overly complicated. The new approach does not use curves and should be easier to configure.



    The second change is that the new differential will have just one type, but will use all of the parameters that are currently available. So, to use it as an open differential, simply set the slip torque to 0, to use it as a locking differential set it to a very high value, etc. This also means that the BiasAB (bias left/right) will be available in combination with the locking.
     
  50. NWHCoding

    NWHCoding

    Joined:
    Jul 12, 2012
    Posts:
    1,683
    11.1b

    06/04/2023
    • [WC3D] Changed the damper curve to slowBump, fastBump and bumpDivisionVelocity (same for rebound). This makes it easier to adjust and use the real-world data. The old damper values are re-used so only slight tweaks might be necessary.
    • Fixed gear shifting from N when shift checks are not valid.
    • Fixed engine loss torque being too low when engine not running, resulting in inability to stall.
    • Fixed VehicleComponent LOD sometimes not calling VC_Enable().