void idle(void) { mainGear.spin(orbitSpeed * 60); // values defined allow for good interlocking and speed , obtained through trial and error powerGear.spin(-orbitSpeed * 200); smallMiddleGear.spin(orbitSpeed * 200); bigPowerGear.spin(-orbitSpeed * 60); sideGear.spin(-orbitSpeed * 400); sidePole.spin(orbitSpeed * 400); sun.update(); updatePlanets(); glutPostRedisplay(); }