How to stop skating of a walk cycle.

Hello, I am trying to learn how to stop a character from looking like it is skating. My ground is made with GeoMitTerrain and it is 2048x2048. I know that the step size before scaling is 4 in blender. Lerps are being used now but they are time and distance based. It is possible to calculate the distance (If it is a straight line) and then find a time (for both the animation cycle and the lerp), if you know what that time should be (How do you know?). And then if the character speeds up or slows down? Maybe there is a better way to do this? I am looking forward to any ideas! Thanks all.

your animation defines how fast the actor must move. let’s say, your character makes two steps per second: measure the distance for two steps and you have your character’s speed in m/s which you should be able to work with in python/panda3d.

And to add to this, if you want your character to move at different speeds, you either need to use different animations to match the speed, vary the speed of animation playback to match the movement speed, or some combination.

For example, you could create a walk, jog, and run animation, each with a base speed at normal framerate. Pick the best one based on the actual movement speed, and adjust the framerate so that if, e.g., the actual speed is 80% of jogging speed, you might play the jogging animation at 0.8 of normal update rate.