FAQ
Warning: Before going through this troubleshooting guide please check that you have the latest version of the asset. This can be done through Window > Package Manager.
Vehicle physics is behaving weirdly (jitter, jumping, etc.).
- Check the model rotation as per this guide.
- Check the model scale. The root object of the vehicle and WheelControllers should have a scale of [1,1,1].
- Check that the vehicle inertia is adequate. Sometimes when a model
that has the wheels far out (e.g. a 1x1x1 cube with wheels 1 meter
away from it) the automatically calculated inertia is too low for the
suspension stiffness, physics update rate and default friction
settings so the vehicle can become unstable. You can fix this by
inputting the inertia values manually into the Rigidbody after
unticking the automatic inertia calculation. Typical values are:
- X (roll): 1000-2500
- Y (yaw): 3000-5000
- Z (pitch): 2000-4000
- Too low physics update rate for stiff suspension, friction or low
inertia. This can be fixed by lowering the fixed delta time in the
project settings. Check the
Why is physics update rate so important?section below for more info. It is usually better to fix the settings instead of increasing the update rate due to performance cost, although 60Hz (dt = 0.01667) is recommended for most cases.
Vehicle is not reacting to input.
- Ensure both a
VehicleInputProviderandSceneInputProviderare present in the scene. Full names depend on input method:InputSystemVehicleInputProvider,InputManagerVehicleInputProvider, orMobileVehicleInputProvider. - Verify the vehicle is enabled in play mode (checkbox next to
VehicleControllerin inspector). - Verify input is being received by inspecting
VehicleController > Control > Input. Values should change when providing input.
How to make the vehicle feel more arcade?
NWH Vehicle Physics 2 is by default set up for realistic/simcade behavior. Here are tweaks for more arcade handling:
- Reduce
StandardFriction > Stiffnessto 0.5-0.7. Lower stiffness reduces oversteer and makes the vehicle less sensitive to slip. - Reduce
StandardFriction > Gripfor wheels that spin too easily during acceleration or gear changes. - Lower the center of mass a few centimeters above the floor to reduce body roll in corners.
- Reduce
VehicleController > Settings > Inertiato make the vehicle change direction more easily. Overdoing it may cause instabilities. - For advanced users, adjust the
FrictionPresetBCDE parameters:- Lower B (Stiffness Factor) for softer, more forgiving response
- Lower D (Peak Value) for less overall grip if needed
How to improve mobile performance?
Default settings target desktop quality. For mobile optimization:
- Set
Project Settings > Time > Fixed Delta Timeto0.0333(30Hz). - Use low poly meshes for vehicles.
- Use mobile-optimized particle and skidmark shaders.
- Reduce particle count and disable soft particles.
- Reduce skidmark quality in
VehicleController > FX > Skidmark Manager. - Disable unneeded components in
VehicleController > Settings > State Settings. - If collision causes stuttering, reduce
DamageHandler > Deformation Vertices Per Frameor use lower poly meshes.
Why is physics update rate so important?
Physics updates at discrete intervals (Fixed Delta Time). Between updates, the vehicle travels a distance without physics calculations. At high speeds (e.g., 450 km/h = 125 m/s), this can be 2.5 meters per frame at 50Hz. Even small lateral tire movements (a few cm) can cause slip to exceed peak friction, resulting in grip loss.
Solutions:
- Increase physics update rate via
Project Settings > Time > Fixed Delta Time:- 0.0333 (30Hz) - Mobile devices, low quality
- 0.02 (50Hz) - Adequate for speeds <100 km/h
- 0.01667 (60Hz) - Recommended for most cases
- 0.01 (100Hz) - High-performance PC
- 0.005 (200Hz) - Simulators
- Reduce
StandardFriction > Stiffnessto 0.6-0.8 for more forgiving behavior at lower update rates.