aboutsummaryrefslogtreecommitdiff
path: root/src/math.odin
blob: 0cd2a2795e8b15b7dcfda17d67387f867f0c058d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
package demonchime

import "core:math"
import "core:math/linalg"

import rl "vendor:raylib"

dt_lerp :: proc {
  dt_lerp_f32,
  dt_lerp_arr,
}

dt_lerp_f32 :: proc(a: f32, b: f32, t: f32) -> f32 {
  dt := rl.GetFrameTime()
  return math.lerp(b, a, math.pow(0.5, dt * t))
}

dt_lerp_arr :: proc(a: [$N]$T, b: [N]T, t: T) -> [N]T {
  dt := rl.GetFrameTime()
  return linalg.lerp(b, a, math.pow(0.5, dt * t))
}