The question is answered, right answer was accepted
Rigidbody rotation physics problem
First of all, hello and thank you for taking the time to read my question.
Ok, so now, I have created a script which is ment to control rotations of 2 rigidbodys, it basically takes the vertical and horizontal input and adds them as torque to the rigidbodys. (One is only for vertical, the other only for horizontal rotation). When I have both rigidbodys on emptys next to each other in the hirachy, both work (the vertical one rotates with the vertical input, the horizontal one rotates with the horizontal input.)
Now I tried to set the vertical one as a child of the horizontal one.
What I expected would happen:
The Horizontal input rotates the horizontal AND vertical rigidbody
The Vertical input only rotates the vertical rigidbody.
What actually happened:
I can now ONLY rotate the vertical rigidbody. When I give horizontal input I can see the rotation y value change in the transform->rotation of the empty, it does however not actually rotate in 3D space.
In my mind this should work, and I can't see the error I made, so I would be really gratefull if someone can tell me what I'm doing wrong.
Thanks in advance.
Answer by Uebertreiberman · Jan 12, 2017 at 02:34 PM
OK, I have figured it out myself. Instead of parenting two rigidbodys together you have to use a hingeJoint to connect them. I thought if I parent a rigidbody to another it would simply still calculate it's physics in the local space of the parent, apparently that's exactly what joints are for and I should read about how exactly parenting and local physics work in unity.
Follow this Question
Related Questions
Conserve some of Rigidbody's speed when turning. 0 Answers
Player jumps randomly after a jump 0 Answers
Determining if my target is standing upright 4 Answers
RayCasting 0 Answers
Rigidbody projectile misses collider 1 Answer