C#: double xChange = positionRatio * leftChange + (1 - positionRatio) * rightChange; And for those curious, the magical formula that fixed everything.
So... rightChange + (positionRatio * (leftChange - rightChange)) ? fyi, this is Code: lerp(p1, p2, alpha) => ((1-alpha) * p1) + (alpha * p2) lerp(p1, p2, alpha) => p1 + (alpha * (p2 - p1))