UMA upper body shake with AI and nav mesh agent

adampliska

New member
With some effort I was able to get the Third Person Controller working with UMA. I'm using the second, runtime enabled option. I also turned AI on, along with nav agent so I could setup click to move, which is working great. My click to move script ultimately does this to move: agent.SetDestination(hit.point); which allows the animation controller to work, i.e. character walks to where I click, then stops at that location and enters idle state.

However, I am having one small issue. After the UMA character stops walking, the upper body starts to jitter, or shake back and forth. I notice that when I turn the Animator off using the unity editor, the shaking stops, but the upper body starts spinning! It seems the animator and the Ultimate Character Locomotion script are fighting. The animator wants to use the idle animation, and the locomotion scripts wants to spin the upper body. The result is a shake.

When digging though the vast number of options on the Ultimate Character Locomotion script I noticed I am using a Nav Mesh Agent Movement ability - which was setup automatically for me. Playing around with the various options there doesn't seem to help anything, except for two options. 1) disabling that ability does stop the shaking. 2) Flipping the stop type from manual to automatic stops the shaking. (when I flip the stop type to automatic, no animation or movement will happen any longer, so that's not a viable solution)

Any thoughts on what I can do to stop this odd upper body shaking?
 
I think I got this. When the Unity project starts, my Nav Mesh Agent stopping distance is set to .1 (even though I have it at .5) Also, I had Auto Braking ON.

After turning Auto Breaking off, and then scripting a reset to the Stopping Distance to set it back to my desired .5, I no logger get the jitters when I move my character and reach my destination.

I am not sure why the stopping distance gets reset back to .1, if anyone knows - please share.
 
Top