Lopsided rigidbody when picking up object

Hi there everyone! I am a bit new to Unity, and I am experimenting with random objects and scripting. I so far have made a simple ball that the player can roll around, and when he touches an object with the tag “PickUp”, the object sticks to the player in a fashion very similar to Katamari. I achieve this by deleting the rigidbody and collider of the pickup, and making it’s parent the player.

There is this weird problem where after picking up an object, the weight of the player is distributed in a lopsided fashion, causing the motion to be really weird and hard to control. What is even weirder is that this problem has only been happening on some (but not all) computers. What could cause this?

If you have any questions, I would love to answer.

Hey everyone! I think I actually fixed the problem on my own, but I still don’t understand why this works.

This is the script that was on the player…

using UnityEngine;
using System.Collections;

public class PickerUpper : MonoBehaviour {
	
	void OnCollisionEnter(Collision col){
		if(col.gameObject.tag == "PickUp"){
			
			Destroy(col.gameObject.GetComponent<Rigidbody>());
			Destroy(col.gameObject.GetComponent<Collider>());
			
			col.gameObject.GetComponent<Transform>().parent = transform;
		}
	}
}

This wasn’t working for some reason, the player’s weight was becoming lopsided and hard to control. After a lot of messing with stuff and changing things, I think I actually found the answer. All I did was switch the order in which I deleted the Rigidbody and Collider. If I delete the Collider first, somehow it works. But still, I don’t understand how this works. Can anyone give an explanation?