diff options
author | Brian Paul <[email protected]> | 2005-01-08 23:52:01 +0000 |
---|---|---|
committer | Brian Paul <[email protected]> | 2005-01-08 23:52:01 +0000 |
commit | c1065ee977f70042e54a930a6cd3af819d4a9806 (patch) | |
tree | 45053d22bc302bde8c627e9e8d2cc174a17c844a /progs/samples/wave.c | |
parent | 0261042bebe4c17afd3b581fac0ab5274dac3740 (diff) |
compute reasonable animate rate (Marcelo Magallon)
Diffstat (limited to 'progs/samples/wave.c')
-rw-r--r-- | progs/samples/wave.c | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/progs/samples/wave.c b/progs/samples/wave.c index 7ded49bedcc..d3c4687459e 100644 --- a/progs/samples/wave.c +++ b/progs/samples/wave.c @@ -87,9 +87,26 @@ GLubyte contourTexture2[] = { 255, 127, 127, 127, }; +#if !defined(GLUTCALLBACK) +#define GLUTCALLBACK +#endif + + void GLUTCALLBACK glut_post_redisplay_p(void) { - glutPostRedisplay(); + static double t0 = -1.; + double t, dt; + t = glutGet(GLUT_ELAPSED_TIME) / 1000.; + if (t0 < 0.) + t0 = t; + dt = t - t0; + + if (dt < 1./30.) + return; + + t0 = t; + + glutPostRedisplay(); } static void Animate(void) |