Working on my project, I have noticed a small but noticeable problem. My animation states for movement are based on whether the sprite is currently moving. When the sprite hits another one that is solid while simulating control in that direction, it stops and speed reduces to 0 as expected. But in the frames afterwards, my sprite is gaining speed before being reduced to 0 for good! This causes it to revert to the moving animation very briefly, creating a sort of 'judder'.
I expected this to be a small increase in speed, but my sprite is actually gaining almost 33% of it's max speed in these few frames (tested using stepping in debug)! I can't put in a rule to stop moving animation for that amount speed. Would I need to do something like collision checking ahead of time via events to prevent this?
I'm not entirely sure if this is a bug or not. My thought is that maybe the solid is shoving the the sprite out a bit too far and then it has a bit of room to move closer. Some advice if anyone has encountered this would be awesome!
Develop games in your browser. Powerful, performant & highly capable.