How to attach an object to another object so that moving one moves the other
I have found a myriad of questions and answers RELATED to this topic, but none of them have worked for me, so I am quite sure that I am misunderstanding something and/or expecting too much, or clicking the wrong box somewhere.
I have a screwdriver. When the tip of the screwdriver collides with a screw I want the screw to become "one" with the screwdriver so that when I rotate the screwdriver, the screw rotates... when I move the screwdriver, the screw goes with it just as if it is now attached to the tip of the screwdriver. (This happens in the real world because the tip of the screwdriver is magnetic). I tried a simple OnTriggerEntered script attached to the screwdriver object, but, although my debug output screams "FLAT Screw detected!!!" nothing else happens. Moving the screwdriver does absolutely nothing to the screw's position in space. The collider on the screwdriver is currently a small capsule collider just around the tip of the business end of the screwdriver.
private void OnTriggerEnter(Collider other)
{
Debug.Log("Enter called.");
if (other.tag.Equals("flat_screw"))
{
Debug.Log("FLAT Screw detected!!!");
other.gameObject.transform.parent = this.transform;
}
}
Any help is much appreciated. I kid you not I have been returning to this problem off and on for countless hours. Days. I am quite sure that I could write some extensive code that MAKES the screw follow the screwdriver around by having the screw notified by the screwdrivers "controller", but I don't want to reinvent the wheel if this basic functionality is already available and easy to implement using Unity's transform system.
CHEERS!
Holy Party Balloons Batman!
I had the "Static" box checked on the screw object in the inspector!!!!
ARGGGHHHHH. To think how many hours wasted. Ugh. I guess "static doesn't cling" ha ha ha... [O.P. cries self to sleep]
Hopefully this helps someone else.
Your answer
Follow this Question
Related Questions
Why is transform.parent not working in Unity 5.5.4? 0 Answers
Get Random transform point inside collider 0 Answers
make a gameobject move to another gameobject that was selected by mouse click? 1 Answer
Canvas as a Child with Screen Overlay follows parent scale 0 Answers
Gameobjects do not get parented properly, double gameobjects after instanciating 0 Answers