tweaked the animation rate

This commit is contained in:
Brian Paul 2000-03-22 18:38:47 +00:00
parent 29d39d52a0
commit d21cdb6d84

View file

@ -39,8 +39,8 @@
static GLfloat Xrot = 0, Yrot = -30, Zrot = 0;
static GLboolean Anim = GL_TRUE;
static GLint Bias = 0, DeltaBias = 10; /* ints avoid fp precision problem */
static GLint BiasMin = -200, BiasMax = 300;
static GLint Bias = 0, BiasStepSign = +1; /* ints avoid fp precision problem */
static GLint BiasMin = -200, BiasMax = 500;
@ -55,14 +55,26 @@ PrintString(const char *s)
static void Idle( void )
{
Bias += DeltaBias;
static int lastTime = 0;
int time = glutGet(GLUT_ELAPSED_TIME);
int step;
if (lastTime == 0)
lastTime = time;
else if (time - lastTime < 10)
return;
step = (time - lastTime) / 10 * BiasStepSign;
lastTime = time;
Bias += step;
if (Bias < BiasMin) {
Bias = BiasMin;
DeltaBias = 10;
BiasStepSign = +1;
}
else if (Bias > BiasMax) {
Bias = BiasMax;
DeltaBias = -10;
BiasStepSign = -1;
}
glutPostRedisplay();