From f1492b52414b6f2ad6cfff45375c08677feab18c Mon Sep 17 00:00:00 2001 From: ubq323 Date: Mon, 17 Feb 2025 14:48:34 +0000 Subject: initial --- math.lua | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 math.lua (limited to 'math.lua') diff --git a/math.lua b/math.lua new file mode 100644 index 0000000..cd6745e --- /dev/null +++ b/math.lua @@ -0,0 +1,24 @@ +local M = {} + +function M.lerp(a,b,t) return (1-t)*a + t*b end +function M.smoothstep(x) + if x<0 then return 0 end + if x>1 then return 1 end + return x*x*(3 - 2*x) +end +function M.slerp(a,b,t) return M.lerp(a,b,M.smoothstep(t)) end + + +function M.sign(x) + if x == 0 then return 0 + elseif x < 0 then return -1 + elseif x > 0 then return 1 + end +end + +function M.clamp(x,minv,maxv) + return math.min(math.max(x,minv),maxv) +end + + +return M -- cgit v1.2.3