Godot Version
4.2.1
Question
Hello! Sorry to be a bother.
I recently had to move my main game node into a subviewport (it’s Zelda-1 inspired, so the main game is in a subviewport vertically below the UI). I noticed that when I did this, my CharacterBody2D’s (enemies and the player) moved with a very jittery motion. They only do this when they are inside of the subviewport.
After some googling and testing, I found that I could fix this by flooring/ceiling the CharacterBody’s global position so that it would be an integer. HOWEVER, doing this makes it so that the CharacterBody has a very high speed that cannot be lowered. I have recreated this in a blank test project and it works fine, so I don’t know what I’ve missed. I should also note that I do have “Snap 2D Transforms to Pixel” and its vertices equivalent set to off in both the project and on the subviewport.
So I guess I’m asking for either A) a way to smooth out the jitteriness or B) a way of rounding position that doesn’t affect the speed of movement. Anything helps; at this point I’ve been trying things for about seven hours and I don’t know what else to do.
Cheers!