为了在给定分数f
的情况下在两个变量a
和b
之间进行线性插值,我目前使用以下代码:
float lerp(float a, float b, float f)
{
return (a * (1.0 - f)) + (b * f);
}
我认为可能有一种更有效的方法。我使用的是没有FPU的微控制器,所以浮点运算是在软件中完成的。它们相当快,但仍然需要大约100个周期才能进行加法或乘法。
有什么建议吗?
注:为了使上面代码中的方程式清晰,我们可以省略将1.0
指定为显式浮点文字。
https://stackoverflow.com/questions/4353525
复制相似问题