Adding child rigidbodies to a car jerks the car around - best rb practices?

I have a basic car set up in my scene with all that there is to it. Rigidbody, Collider, WheelColliders.
Now I add some item to this car as a child that has a Rigidbody set to be Kinematic and not use gravity and a Boxcollider.
However my car doesn’t drive normally when I do this this. When I add the child the car jerks around and drives slowly and steers badly. There are no collisions going on between the car and the item I added.

Is there any way to add this child rigidbody without the car behaving weirdly?
Added a video to explain better:

From what I could gather this is because I am adding the children with their box colliders to the rigidbody of the parent, which recalculates the center of mass and this messes up the physics even though I set the children to be non kinematic.

In that case, you may disable the automatic recalculation by just assigning the value of the center of mass manually. Same for the inertia tensor. If you want to preserve the initial values calculated automatically, then simply assign them to themselves once the car is initialized:

rb.centerOfMass = rb.centerOfMass;
rb.inertiaTensor = rb.inertiaTensor;
rb.inertiaTensorRotation = rb.inertiaTensorRotation;
1 Like

Thank you so much Edy! This finally fixed it for me after a lot of headaches

1 Like