From cce4d7a165362438ff06332f6fdfcf8f7bebb94b Mon Sep 17 00:00:00 2001 From: terencehill Date: Tue, 11 Aug 2015 20:31:34 +0200 Subject: [PATCH] Use the formula with exp, as it's more mathematically correct --- qcsrc/menu/item/listbox.qc | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/qcsrc/menu/item/listbox.qc b/qcsrc/menu/item/listbox.qc index 1940e324f..83a811a4e 100644 --- a/qcsrc/menu/item/listbox.qc +++ b/qcsrc/menu/item/listbox.qc @@ -418,13 +418,12 @@ void ListBox_draw(entity me) } if(me.scrollPos != me.scrollPosTarget) { - float PI = 3.1415926535897932384626433832795028841971693993751058209749445923; - float exp_factor = 0.65; + float exp_factor = 0.16; if(me.pressed == 1) - exp_factor = 0.45; // scroll faster while dragging the scrollbar + exp_factor = 0.06; // scroll faster while dragging the scrollbar // this formula works with whatever framerate - float f = sin(PI / 2 * pow(frametime, exp_factor)); - me.scrollPos = me.scrollPos * (1 - f) + me.scrollPosTarget * f; + float f = exp(-frametime / exp_factor); + me.scrollPos = me.scrollPos * f + me.scrollPosTarget * (1 - f); if(fabs(me.scrollPos - me.scrollPosTarget) < 0.001) me.scrollPos = me.scrollPosTarget; } -- 2.39.2