I have a problem using 2D sprites with unity. When I change de camera, and so sprites are scaled, many defects appears on the image.
For example, in the following image, you can see the left eye is just one pixel width but the right eye is two. Furthermore, if you look at the floor, there are some lines thicker than others.
There’s no way to avoid that, unless you use multiples of 2. i.e., scaling a 32-pixel sprite to 64 pixels. If you scale it to something arbitrary like 40, then some pixels will have to be doubled, and some won’t be. You either have a pixel or you don’t; there’s no such thing as part of a pixel.
It’s not physically possible to solve the problem. You cannot arbitrarily scale textures and get a pixel-perfect result, under any circumstances, aside from scaling by multiples of 2 as I mentioned. Either live with it, or don’t scale.