Most of my Texture2D are pixel art, meaning they're rather small, so my player/character's position has to change using decimal points to keep a realistic movement that matches its walking animation.
But the problem comes when I use my 2D Camera class (using a transformation matrix) to follow the player's position with a scaling/zoom multiplied by 4 (to enlarge all the art). It ends up causing some of the tiles to offset or extra pixels to appear in source rectangles which don't belong in the tile:
And these are the extra pixels that don't belong in the source rectangle that start appearing when the camera moves with the player:
I realized later that the camera position works better when using int values over floats, but not having it use floats makes the movement of the camera very rigid when zoomed in that much.
So to restate my question, how can I prevent these extra pixels from appearing while keeping the slow velocity of the player to look smooth, all while keeping the camera position fixated on the player?
Edit -- This image shows the few extra lines that gets drawn when they shouldn't when the camera's position is at specific coordinates: