Character controller not following moving parent transform properly

In the latest version of unity, something about the character controller has changed. In previous versions from mid 2018 I could have a character controller parent to an object and move along. I could do this while also calling the move() function.

However with the latest version of unity, I no longer seem to be able to do this any more. The character either follows the parent in a very choppy way or not at all. I even have an older project where I have this concept working. The older project has not been updated to the latest unity version, I exported a package of that character controller into my new project and it doesn’t work as intended. Even tried copying just the code over with no luck.

Does anyone know if the character controller somehow changed? Is there a way to have move() work on the local position and not override the world space position as that seems to be my theory of what’s happening? All of this is an effort to have the controller stand and move on a moving platform.

It’s an old topic, but I just had the same issue. I moved my old project to new unity and new render pipeline system and same script, same player and same platform stopped working.

After checking all the topics with rigidbody, OnTriggerStay, position correction and so on, I found out that there is ‘auto sync transforms’ option which was not enabled in my new project. When I reenabled it, things went back to normal. (Edit → Project Settings → Physics (or Physics 2d) → Auto Sync Transforms

Hi! I imagine you might have solved this already, but just in case someone else stumbles upon this question (as I did):

This can be solved by using FixedUpdate instead Update to move the parent object. I’m fairly new to Unity, so don’t ask me why, but it works. :smiley:

Old thread, sorry - The auto sync transforms wasn’t working for me, but for my setup (dynamic physical vehicle + character controller) disabling the character controller after the Move() and re-enabling it before the Move() let my character move along with the rigidbody parent without issues. It seems like a horrible hack, but so far, so good. The default cc has always been awful, but man…