[WC3D] Major rewrite of WheelController.
API breaking changes!
[WC3D] New ground detection method. Raycasting is no longer used and layer setup no longer required.
[WC3D] Changed the suspension bottoming out mechanism. This solves the issue with vehicles bouncing back after a fall.
[WC3D] Cleaned up the
API and removed redundant properties. Implemented IWheelUAPI to avoid switching between WheelController and WheelCollider seamlessly.
[WC3D] Solved low speed friction creep.
[WC3D] Major performance improvements.
[WC3D] New inspector layout with tabs to reduce inspector height.
Code restructuring and cleanup.
Simplified settings tab. Physical properties moved to VariableCenterOfMass script (optional).
Removed NRigidbody and sub-stepping. It is now recommended to use Time.fixedDeltaTime of 0.01 instead of the sub-stepping that was provided by NRigidbody.
WheelComponent now accepts IWheelUAPI instead of WheelController, meaning custom wheel implementations are supported, as well as the WheelCollider through the provided WheelColliderUAPI script.
CharacterVehicleChanger and VehicleChanger have been integrated into a single script.
CharacterVehicleChanger now has an option to start in vehicle, which is now the default for the demo.
Modules are now drawn inside their respective wrappers instead of the VehicleController.
Cleaned up SoundManager and EffectsManager, as well as SoundComponents.
Removed ShowInTelemetry and ShowInSettings attributes. These used reflection and were never intended for production use.
Fixed snap oversteer issues under braking.
Fixed transmission rev matching issues.
(Re)Added welcome message popup on asset import.
Minimized property serialization to improve inspector performance and reduce serialization overhead.
Added scale warnings to VehicleController and WheelController due to large number of related support requests.
Fixed Blinker and Horn SetDefaults assigning wrong clips.
VehicleModule and VehicleComponent are now using the same NUI drawer.
Removed deadzone settings from Input tab. Deadzone should be set through the InputSystem/InputManager/Rewired/etc. Same with input inversion.
Removed freeze options from the VehicleController since they are no longer needed due to WC3D changes.
Improvements to the demo scene.
Multiple other smaller fixes and improvements.