Los píxeles están activados o desactivados. La cantidad mínima que puede mover un sprite es un solo píxel. Entonces, ¿cómo haces que el sprite se mueva más lento que 1 píxel por fotograma?
La forma en que lo hice fue agregar la velocidad a una variable y probar si había alcanzado 1 (o -1). Si lo hiciera, movería el sprite y restablecería la variable a 0, así:
update(dt):
temp_dx += speed * dt
temp_dy += speed * dt
if (temp_dx > 1)
move sprite
reset temp_dx to 0
if (tempy_dy > 1)
move sprite
reset temp_dy to 0
No me gustó este enfoque porque se siente tonto y el movimiento del sprite se ve muy desigual. Entonces, ¿de qué manera implementaría el movimiento subpíxel?