ゲームが作れるようになるまでがんばる日記

ゲーム制作のことを中心にゲームに関することを書いています

線形補間

とある変数が Start から End へと変化するときに、Cur の値だったとき、どのくらいの割合 t なのか求める式。

float Start, End, Cur;
float t = (Cur - Start) / (End - Start);

t は 0 から 1 となる。もちろん、Start と End が同じ値では駄目。
こういった式はすぐに出てこなくてはいけないのに、毎回躓いて数分考えてしまう。
逆に t のときに Cur を求める式は次の通り。

float Start, End, t;
float Cur = Start * (1.0f - t) + End * t;