How to move Textures in Accelerated Mode without steps

I am following LazyFoo tutorials, where is scroll background and change speed to low, background movement is not smooth, you can see steps - if speed is very low, background stay and after while make step and wait another while, and so on.
I understand that if integers are used instead float or double in coordinates, it can’t be smooth, but texture accelerated mode use only integers. Is it possible create smooth scroll texture or move texture without steps if they are too slow? If yes, how?

Hi, several thoughts:

  1. nowadays, pixels are so thin, subpixel rendering is not really necessary
  2. if your scroll is really so slow that you have to scroll by only one pixel once in a while, it will always look like a “step”, whatever your resolution. The solution is to simply stop the scrolling when the speed is too low, and resume it only when there is a significant move.
  3. if your resolution is not so good, and you need to resort to subpixel, then there is a solution: you create a different texture for each subpixel portion. For instance, the simplest is to create two textures: one for “integer” pixels, and one for “half-integer” pixels.
  4. a variant to 3. is to create a 2xlarger texture, and two differents blits: one for integer pixels, selecting (0,0,width-1,height) ==> (0,0, (width-1)/2, height/2) and one for half-integer pixels, selecting (1,0,width,height) ==> (0,0, (width-1)/2, height/2) .