15

関数 lerp() は、プログラミング言語で一般的な関数です。

lerp(a, b, t) = a + t * (b - a).

非常に多くの状況で、逆関数があります。

fraction(x, a, b) = (x - a) / (b - a).

この関数は、次のように構築されています。

lerp(a, b, fraction(x, a, b)) == x

fraction(lerp(a, b, t), a, b) == t

しかし、私は「分数」という名前に満足していません。この関数の一般的な名前はありますか?

4

1 に答える 1

11

GLSL

GLSL の組み込み関数には次のものがあります。

mix()、これは関数のようにlerp()機能します。
smoothstep()これは、エルミート平滑化と を組み合わせた逆 LARP 関数のように機能しますx = clamp(x, 0.0, 1.0)

実装の名前linearstep()を検討できます。

Unity エンジン

Unity の API には以下が含まれます。

Lerp()/ 、逆lerp関数が行うこととまったく同じです。LerpUnclamped()
InverseLerp()


注: この名前は使用しません—完全に異なる処理を行う/fraction()と混同しやすいようです。fract()frac()

于 2016-01-05T00:35:32.067 に答える