- Home /
Having Parent Origin Follow Child Objects
I have been trying to make a character that can run around with mechanim, and then fall down when the animator is turned off. But when I turn off that animator the parent object just sits wherever it happened to be when I deactivated the animator. The problem is that because of this when I try to make my player get off the ground after a certain condition is met, it teleports back to the parent, even if that parent is 100m away. Is there a way to fix this problem, or work around it? Thanks!
Answer by Slider_j · Mar 12, 2015 at 10:02 AM
Sounds like you have a ragdoll set up, so that when the animator is disabled your character just drops like a ...well, like a ragdoll. what i have found is you need to put in a fixed joint usually from the hips of your character to the rigidbody at the top level of your character gameobject. putting in the fixed joint between the ragdoll skeleton and the characters rigidbody will tie the two parts together.
Hope this was helpful!
This works, it works almost perfectly except it really jacks with the animation system causing all sorts of random movement. Is there another way to do this?
i'm not too sure how you are animating your character, so i can't really help there, just make sure the bones in the characters skeleton don't overlap as that will cause problems like funny animations. $$anonymous$$ake sure the colliders don't naturally collide with each other (unless ragdolling) and ensure that the joint orientations are the right way round (green arrows pointing forward, orange arrows pointing upward for the arms and head and orange arrows pointing to the characters right for the torso and legs)
The only other way i could think of doing this is to put a script on the characters root or hips bone and when the characters rigid body has to get up, the script you put on the hips get the world position(of the hips) and sends the co-ordiates to the parent/ top level of the character to relocate the main rigidbody to relocate to the world co-ords of the hips, you would then have to also relocate the rigidbodies of all the bones "local positions" back to their original position, as they would currently be out. I would probably just double check the bones and collieders rather than do this.
The animation system uses mechanim, and to make sure this isn't a result of colliders colliding with each other, I disabled all the colliders on the limbs. But when walking around the player still jumps around. The animations play fine, just the character parent, and thus all the children, jump around randomly.
Ah that sounds like the parent collider needs to be set to being a trigger -OR- the mechanim animation may have the floor on the animation set somewhere "funny"
("funny" is not a standard trade word, nor should it be used as such as the circumstances with "funny" symptoms are often less than humerous and usually non-standard. Warning sentences using the word "funny" may contain nuts)
It is nothing of that sort either. All the positions are just the way they should be. What it looks like is like every time the character takes a step it hops up just a bit, and then physics brings it back down.