   Problems with framerate/animations not showing correctly!
  Hi everyone, thanks for taking the time to look at my problem. Basically the problem that i have is that i have installed the glut 3.7.6 libraries (using visual developer!) with the files...  glut32.dll to %WinDir%\System,   glut32.lib to $(MSDevDir)\..\..\VC98\lib, and   glut.hto $(MSDevDir)\..\..\VC98\include\GLcopied to the correct directories, my programs compile fine and 'run', however with some 'more simple' animations such as solarsystem3d.c (a simple program with some spinning spheres etc) no problem appears with the displaying/framerate.However when i run my programs with animation, the screen 'flickers' constantly and the animations taking place are almost impossible to see. when the animation is paused the screen displays as it should, its just in the animation phase the screen does not display as correct.At my previous university, they taught OpenGL as a module, and the animations worked correctly (so this i am assuming is nothing to do with my code!), however on my personnal PC and on the computers at my new university (where opengl is not taught) the problem occurs.Is this a problem with the libraries i have installed???It is definitly a problem that i would really like to get sorted as i need the application to work correctly for my dissertation at university (a pool/snooker simulator)Any thoughts???Many thanksJC   
  Do you have any code to control the rate of the animation?  If not, your scene will be rendered as fast as opengl can draw it, which would be pretty darn fast, and would result in a flickery image.  If thats the case then you need to include some timing code to slow things down a bit.  Thats my initial thought, anyone else care to back that up?   ;  the code for animating is as follows...(sorry if not posted in the correct way lol)void animateBalloon(void) /* animates the balloon by changing the value of the y coordinate as time passes*/{if (balloonTemp == 0)balloonYMovement = balloonYMovement - 0.1;if (balloonYMovement < 5.0)balloonTemp = 1;if (balloonTemp == 1)balloonXMovement = balloonXMovement - 0.1;glutPostRedisplay();}and within the 'mykeyboard' method...void myKeyboard(unsigned char key, int mouseX, int mouseY) {  switch (key){case 'b':glutIdleFunc(animateBalloon);break;... blah blahnot sure if this helps at all!;  This is not the proper way to do it, but put the animation function to sleep every loop for a fraction of a second.   ;  many thanks, i will try this - it seems so stupid and obvious now, but i suppose were all human. i will let u know how it goesJC   