Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
glutIdleFunc(3GLUT)		     GLUT		   glutIdleFunc(3GLUT)

NAME
       glutIdleFunc - sets the global idle callback.

SYNTAX
       void glutIdleFunc(void (*func)(void));

ARGUMENTS
       func	 The new idle callback function.

DESCRIPTION
       glutIdleFunc sets the global idle callback to be	func so	a GLUT program
       can perform background processing tasks or  continuous  animation  when
       window system events are	not being received. If enabled,	the idle call-
       back is continuously called when	events are  not	 being	received.  The
       callback	routine	has no parameters. The current window and current menu
       will not	be changed before the idle callback.  Programs	with  multiple
       windows	and/or	menus  should explicitly set the current window	and/or
       current menu and	not rely on its	current	setting.

       The amount of computation and rendering done in an idle callback	should
       be  minimized to	avoid affecting	the program's interactive response. In
       general,	not more than a	single frame of	rendering should be done in an
       idle callback.

       Passing	NULL to	glutIdleFunc disables the generation of	the idle call-
       back.

EXAMPLE
       A typical idle callback to animate a window might look like:

	 void
	 idle(void)
	 {
	   time	+= 0.05;
	   glutSetWindow(window);
	   glutPostRedisplay();
	 }

       Notice how the idle callback does not do	any actual  drawing;  it  only
       advances	 the  time  scene  state global	variable.  That	is left	to the
       window's	display	callback which will be triggered by the	call to	 glut-
       PostRedisplay.

       If  you use the idle callback for animation, you	should be sure to stop
       rendering when the window is not	visible.  This is easy to set up  with
       a visibility callback.  For example:

	 void
	 visible(int vis)
	 {
	   if (vis == GLUT_VISIBLE)
	     glutIdleFunc(idle);
	   else
	     glutIdleFunc(NULL);
	 }

       If you do use the idle callback for animation, one thing	you should not
       do is setup the idle callback before calling glutMainLoop.  It is  much
       better to use the visibility callback to	install	idle callback when the
       window first becomes visible on the screen.

SEE ALSO
       glutTimerFunc, glutVisibilityFunc

AUTHOR
       Mark J. Kilgard (mjk@nvidia.com)

GLUT				      3.7		   glutIdleFunc(3GLUT)

NAME | SYNTAX | ARGUMENTS | DESCRIPTION | EXAMPLE | SEE ALSO | AUTHOR

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=glutIdleFunc&sektion=3&manpath=FreeBSD+12.0-RELEASE+and+Ports>

home | help