Background Tileset Jiitter / Stutter on player movement with Damping.

Hi all,

I have been working on a simple 2D platformer game for the past 2 months, everything has been working fine, I learned about camera movement / damping which I want in my game as it makes the camera and movement feel much smoother and the gameplay overall feels better.

However, when I add Cinemachine and add dampening, the backgrounds jitter / stutter after my player has stopped moving and the camera catches up to the player.

If I remove dampening and set both x and y to 0, the camera tracks the player on point without the nice flow and it works fine, but for me it sort of defeats the purpose of having the damping effect.

My player movements are in FixedUpdate, I have tried setting different update methods (Late Update has the best result.) for the Cinemachine.

I have even tried messing around with the projects Fixed Timestep, and have watched about 10x tutorials and searched the forum and cant seem to find an answer, I’ve been testing and looking for a fix for about 2 weeks.

If anyone could please help me as this has put a bit of a full stop on my project, if there is any information I need to post please let me know and I will, otherwise my discord is curian1987, I am willing to pay someone at this point to go over it with me to check out and learn what I need to do.

I have attached screenshots, I also have this video to check out the jitter, its much more noticeable in game in editor and build. But like I mentioned earlier, without any damping the visuals are 100% smooth with no issue.


pixel art + camera damping = big bad

if you check all pixel art games you will see that they never have a camera like that for this reason

Thanks for your response, is there no way ever in Unity to have some type of slight damping effect on 2D pixel games then, without this type of distortion? I was hoping not, like I said I have read the forums, reddit etc and there seems to be a lengthy discussion but no real outcome…I was hoping someone might point me in the right direction, could be something simple I am doing wrong or overlooking.

what can I say, you are simply asking for something that is not possible/ does not exist

if you think it exists you can for example try to find a video of it, but you wont find it

its just how pixels work, when the camera goes on sub pixel positions all the pixels are forced to shift to the left or to the right

maybe you could try to massively upscale your game so that its no longer pixel perfect and only gives the illusion of pixel perfect

I hope you understand the core of the issue

you can try to put some damping but if you do this super smooth micro camera movement you are gonna have jitter

I’m going to say you’re wrong here. It can be done. You just need to get your settings spot on.

Namely you need:

  • Pixel Perfect Component on your camera

  • Cinemachine Pixel Perfect Component on your virtual cameras

  • Choose a base resolution for your camera Pixel Perfect component, namely one that can be scaled up to good common resolutions (360p is a good one for chunky pixel art)

  • Have a consistent PPU across all your sprites

  • Use orthographic scale for your virtual cams that ensures there are no half pixels for any sprite on screen. This can be worked out with (base resolution / PPU / 2). So 360 / 32 / 2 = an ortho scale of 5.625. But you can of course use multiples of 2 of said scale.

You also need to ensure your sprites are placed per-pixel. This can by setting your snap scale to 1f / PPU.

Once I got this all right, camera damping in my project doesn’t cause this pixel jitter.

1 Like