• 3D
  • 3D kinematic character glitching on platforms (Solved)

So, I have a character that uses a kinematic collider to move. I've found out that when I stand on top of another moving kinematic collider that the control starts to move. I know that kinematic relies heavily on the programmer telling it how to interact but I wasn't all that worried. That is until the FPS dropped below 60 and all of a sudden the character is glitching to the front of the platform without the player moving. I move the platform with a tween but other than that I have no idea why it is acting so horribly. I'm also using the move and slide which has the direction placed on vector 3 up. I also have to use a constant downward force so the character is registered as being on the ground. Only a small force is being applied though.

Welcome to the forums @Holo74!

Is the platform a KinematicBody? If so, have you tried using a RigidBody in Kinematic mode? I’m not sure if it will help or not, but it may be something to look at.

Also, does the Godot console give any errors or warnings when it its glitching and/or the FPS is dropping? It could be there is a bug in the KinematicBody to KinematicBody collision code.

No, there isn't any errors that pop up. I just barely got the player to have stable movement different FPS values and that still doesn't change the glitching that occurs. I tried using a rigidbody set to kinematic mode to move the platforms but it doesn't seem to work either. I noticed that when I don't apply a constant force down the player toggles between being grounded and in the air nearly every frame. I then noticed that the platform acted a lot more stable with different frame rates. However, when applying the force the platform becomes a lot more unstable and pushes the player forward even more than without the force. This all seems very odd.

Edit: for reference. This only happens when the FPS is lower than or higher than the physics frame rate. I found this out because the platform only now started to glitch when I was testing different FPS level by manually setting the cap.

I found out what was happening... I feel so dumb for not thinking about it. I am using the Tween to move the platform. I was reading into the body and how it moves and remembered that it glitches when being moved on the main thread. I forgot that the tween is mostly on the main thread. I switched it to the physics instead of the idle and now the platforms don't glitch the player forward anymore. Hopefully this helps someone else in the future.