From 95a1d8eefff61d3b08f07b57569e48d18a1d59f7 Mon Sep 17 00:00:00 2001 From: Ivar Fatland Date: Fri, 2 Jan 2026 01:09:00 +0100 Subject: [PATCH] lots to do with easing --- easing.c | 98 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 98 insertions(+) create mode 100644 easing.c diff --git a/easing.c b/easing.c new file mode 100644 index 0000000..a0640c9 --- /dev/null +++ b/easing.c @@ -0,0 +1,98 @@ +#include "cig.h" + +static float clamp(float t, float min, float max) { + if (t < min) { + return min; + } + if (max < t) { + return max; + } + return t; +} + +static float norm(float t) { + return clamp(t, 0.0f, 1.0f); +} + +float ease_in_quad(float t) { + t = norm(t); + return t * t; +} + +float ease_out_quad(float t) { +} + +float ease_inout_quad(float t) { +} + +float ease_in_cubic(float t) { +} + +float ease_out_cubic(float t) { +} + +float ease_inout_cubic(float t) { +} + +float ease_in_quart(float t) { +} + +float ease_out_quart(float t) { +} + +float ease_inout_quart(float t) { +} + +float ease_in_quint(float t) { +} + +float ease_out_quint(float t) { +} + +float ease_inout_quint(float t) { +} + +float ease_in_expo(float t) { +} + +float ease_out_expo(float t) { +} + +float ease_inout_expo(float t) { +} + +float ease_in_circ(float t) { +} + +float ease_out_circ(float t) { +} + +float ease_inout_circ(float t) { +} + +float ease_in_back(float t) { +} + +float ease_out_back(float t) { +} + +float ease_inout_back(float t) { +} + +float ease_in_elastic(float t) { +} + +float ease_out_elastic(float t) { +} + +float ease_inout_elastic(float t) { +} + +float ease_in_bounce(float t) { +} + +float ease_out_bounce(float t) { +} + +float ease_inout_bounce(float t) { +}