I have a sprite X which moves around as fast or slow as it likes. I have another sprite Y which moves around based on X's movement, however, it can only move at a maximum velocity. Velocity is displacement/time, and time here is the delta from the update: call. If I want a velocity of arbitrary value 5, then I read in X's displacement and the delta, and then my Y's maxDispacement = velocityX * delta. This means that if delta is very small, our Y has a smaller maximum displacement, whereas when we have a large delta, we can afford to move further and still maintain the same maximum velocity.
The issue arises when delta begins to fluctuate. If I am at a maximum displacement of 10, and delta drops, then the maximum displacement becomes 8, and Y slows down on the screen with a jitter. This shouldn't happen from what I can tell, because if delta fell, then it would mean X would move less in this update round than it did in the previous, so I should see a continuous motion for Y as well. And yet, every time delta falls and my maximum displacement reduces, the smooth motion of Y is cut short. Is there a noticeable flaw in my logic?