- Home /
Animator component makes Character fall a bit
I am doing some Mecanim animation but I am getting stuck. The animator
component makes the model fall a bit (lets call this "the fall"). If I disable it, then the character does not fall.
Check out the Video (YouTube) explaining the issue.
If I add a rigidbody
and a capsule collider
(see image below for structure). It completely falls through the floor if the "the fall" makes the bounds go below the plane. If I disable the animator
component and leave the rigidbody
and collider
, the models feet stop on the floor plane (how it should act).
The Colliders
empty has a mimic child script that is attached to the spine but this has no effect and is the same as putting the empty as a child of the spine.
The animator
controller just has a empty state in it set as default.
What in the animator
component makes the character fall?
Answer by MLM · Jan 03, 2014 at 02:34 AM
TLDR;
Don't use a empty state in your
Animator Controller
Use a static Idle animation as your basic "empty" building block state
The empty state will cause your character to fall.
The problem enlies in having the empty state in the Animator Controller
or in my case, not generating a separate avatar for the idle_br
animation.
I had a separate fbx (of the same model) with the idle_br
pose and had the Avatar Definiton
set as Copy from other Avatar
, the value being my normal Master Chief generated avatar. I thought it was logical to copy avatar since it is the same model, rig, and bone structure. Instead you should Create From This Model
and configure a new avatar.
If you take the robot model/rig for example from Unity's Mecanim tutorial and create the Mecanim avatar, automap, and enforce pose. Then make a new Avatar Controller with a empty state and set it as the animator controller. Then you will see the robot fall and go into a knees bent and arms out pose.
Hi, I still do not get it. I have the same problem, but what exactly you changed?
@Narmer Check out the updated answer. Put an actual idle animation for that character in. Not a empty state. Consider voting what you thought of the question and this answer.
I still don't get it. I face the same issue and it's driving me mad.... Please, I put the idle animation they provided from the example and my character falls and stays like that.
I just had this myself. I made the default animation of my character loop 0:01 to 0:01.1
then transition to and from other animations. If you don't have the idle set, ie it is entirely empty, it falls.
Solved the problem for me, many thanks! I lost a couple of hours on this one... I notice that only the top layer needs to have an idle state - other layers are O$$anonymous$$ to have an empty state.
Answer by Kyieon · Jan 02, 2014 at 11:39 PM
Try making sure that the mimic child script does so in the LateUpdate() method.
It looks like the sort of problem that having ApplyRootMotion enabled would cause but you clearly dont have it on so try enabling it just to see.
Also how do you calculate your gravity? If it is calculated using the model there might be a problem.
Thanks @$$anonymous$$yieon for the answer. I did mess with all the settings which includes ApplyRoot$$anonymous$$otion
before posting but a good note for others. Gravity was just a rigidbody but I have moved onto a normal character controller setup. Check out my answer to see the problem and how I fixed it.
Answer by kingqwerty · Jan 04, 2015 at 03:19 PM
Try right click inspector -> debug -> unclick Allow Constant Clip Sam..,
Your answer
![](https://koobas.hobune.stream/wayback/20220613125318im_/https://answers.unity.com/themes/thub/images/avi.jpg)
Follow this Question
Related Questions
Blending between frames in the same animation (fake stop motion) 2 Answers
collider animation problem 1 Answer
Mecanim and Ragdoll Issues? 2 Answers
Problems with Animator(Mecanim) 1 Answer
Animate Physics. Moving a rigidbody with an animation 0 Answers