这通常会返回NAN(“非数字”),具体取决于输入:
#define PI 3.1415f
GLfloat sineEaseIn(GLfloat ratio) {
return 1.0f-cosf(ratio * (PI / 2.0f));
}
我尝试将PI缩小几位,看看是否有帮助。没有骰子。 然后我认为它可能是数据类型不匹配,但 float 和 glfloat 似乎是等效的:
gl.h
typedef float GLfloat;
math.h中
extern float cosf( float );
这是一个铸造问题吗?
答案 0 :(得分:2)
我怀疑以下其中一项正在进行中:
ratio
的输入值可能与您预期的不同,ratio
本身可能是NaN
cosf
不是math.h
否则,表达式似乎没有任何问题。