There was an error in the value passed to the second calc_penumbral_gradient
call causing a jump in the acceleration curve. This commit fixes this.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
if (velocity >= accel)
return accel;
- smooth_accel_coefficient = calc_penumbral_gradient(velocity / accel);
+ /* Velocity is between 1.0 and accel, scale this to 0.0 - 1.0 */
+ velocity = (velocity - 1.0) / (accel - 1.0);
+ smooth_accel_coefficient = calc_penumbral_gradient(velocity);
return 1.0 + (smooth_accel_coefficient * (accel - 1.0));
}